Deploy and manage Discord bots, Telegram bots, websites, APIs and databases on Bot-Hosting.net
Connect Remote server
claude mcp add --transport http mcp https://bot-hosting.net/api/mcp
{
"mcpServers": {
"mcp": {
"url": "https://bot-hosting.net/api/mcp"
}
}
}
{
"servers": {
"mcp": {
"type": "http",
"url": "https://bot-hosting.net/api/mcp"
}
}
}
Settings > Connectors > Add custom connector
URL: https://bot-hosting.net/api/mcp
Tools 72 found in our last check
deployments_sftpSFTP connection details for a deployment: host, port, username and the current password. The password is shown in full, so it needs BOTH deployments:read and deployments:write - a read-only credential cannot reveal it. Returns password: null if none is set yet (the owner generat…
deployments_listList every deployment you can access (owned + shared). The `owned` flag tells them apart. Pass name to find one by name, and brief: true when you only need to pick one: it returns id, name, state, url, runtime and entry file instead of the full record.
deployments_getFetch a single deployment.
deployments_updateRename a deployment.
deployments_moveMove a deployment to another of your projects.
deployments_deleteDelete a deployment (instant; teardown runs in the background).
deployments_createCreate a deployment (blank, from a public GitHub repo, or a template), or a database by passing its engine as `runtime`. Sized by default to an equal share of the free pool; the result tells you the RAM/CPU it got. A modern web stack needs 512+ MB to npm install (exit 137 = OOM)…
deployments_getStartupGet the startup config: runtime, version, entry file, start command.
deployments_updateStartupChange runtime / version / entry file / start command (queues a rebuild). The start command is a FULL SHELL LINE run at every boot: it can install and build before starting - e.g. 'npm install && npm run build && exec node build/index.js'. There is no other way to run build step…
runtimes_listList available runtimes, services and database engines with their versions.
deployments_getGitGet the linked GitHub source: repo, branch, auto-pull.
deployments_setAutoPullToggle auto-pull: re-pull the linked repo on every restart.
deployments_powerSend a power signal (start / stop / restart / kill). A start or a restart WAITS for the process to settle and hands back the state it reached, the console output it produced and what to do about it: ok:true only means the signal was accepted, the logs say whether the app actuall…
deployments_logsRead the last N lines of the console log, cleaned of colour codes and progress spam. A build or install takes MINUTES: pass waitSeconds (e.g. 25) to wait server-side before reading, instead of calling this again and again - polling in a loop is how a whole conversation gets eate…
deployments_searchLogsFind lines in the console log that deployments.logs does not show: it searches the last 2000 lines (up to 5000) for a word or a regular expression, case-insensitive, and returns each hit with a few lines around it. Use it when the tail looks fine but something went wrong earlier…
deployments_resourcesLive resource usage: CPU, memory, disk, network and uptime.
deployments_commandWrite a line to the running process's stdin (a game server console, a REPL). NOT a shell: a web server ignores stdin, so curl / node / npm typed here do nothing, and no output is returned. To run a command (curl, node, npm, grep) use deployments.shell; to request a public URL, d…
deployments_resizeChange RAM / CPU / storage allocation (drawn from your plan pool). The deployment restarts to apply it.
deployments_syncPull the latest code from the linked GitHub repo (restarts it if it was running). Pass branch, and repo if it changed, to FIX a wrong branch after a failed clone: that repoints the deployment and pulls, and is the way to recover, never deleting and recreating.
deployments_diagnoseEverything needed to answer "what is wrong with this deployment", in ONE call: live state, RAM and CPU, the cleaned log tail, the startup config, and what the public URL returns. Use this INSTEAD of the deployments.get + deployments.logs + deployments.check + deployments.getStar…
deployments_applyMake edited files live and confirm they work, in ONE call. Use this after writing files instead of deployments.power + deployments.logs + deployments.check. It restarts only when the runtime needs it (a static or PHP site serves straight off the volume, so the restart is skipped…
files_listList a directory inside the deployment volume.
files_treeSee the whole project layout in ONE call: every file and folder under a path, indented, with sizes. Use this FIRST when exploring, instead of walking directories with files.list. It returns structure only - read the files you want with files.readMany. Dependency folders (node_mo…
files_readManyRead SEVERAL files in one call. Pair it with files.tree: look at the layout, then pull the handful of files you actually need in a single round instead of one call each. Binary files are reported, never returned as text.
files_searchSearch the text of the project for a string or regex, like grep. Returns matching lines with their file and line number. Use it to find where something is defined or used instead of reading files one by one.
files_editChange PART of a file by replacing an exact snippet, leaving the rest untouched. Prefer this over files.write for any edit to an existing file: rewriting a whole file to change a few lines is slow, expensive and loses anything you did not repeat. The snippet must appear EXACTLY…
files_editManyChange SEVERAL places in ONE file in a single call. Use this instead of calling files.edit again and again on the same file: each files.edit is another round trip that re-sends the whole conversation. The edits apply in order, all of them or none: if one snippet is missing or am…
files_readRead a file, or a slice of it. Use offset/limit to page through a long file.
files_writeCreate or overwrite a text file. A large file does NOT have to fit in one call: send the first part with mode 'overwrite', then the rest with mode 'append'.
files_writeManyCreate or overwrite SEVERAL files in ONE call. Use this when creating a project: index.html, style.css and package.json go in a single call instead of one files.write each, which costs a round trip per file. Files are written in the order given; if one fails the call stops and t…
files_renameRename or MOVE a file or directory: from and to are paths relative to root, and may point into different directories. To move several items into a folder in one call, use files.move.
files_moveMove files or folders into a directory of the SAME deployment; the directory is created if missing. Never overwrites: a name already taken there is reported, not replaced. There is no move between two deployments: copying a file across leaves the original, so that is a copy, not…
files_deleteDelete one or more files or folders. A copy of each deleted FILE is kept, so files.history / files.restore can bring it back; a deleted folder is gone for good.
files_mkdirCreate an EMPTY folder. Not needed before files.move, files.write or files.writeMany: they create the folders they need.
files_decompressDecompress an archive in place. With removeArchive the archive is deleted right after, in the same call, so an upload-and-unpack never leaves the archive behind.
files_compressCompress files into a new archive.
files_copyDuplicate a file in place (the node appends a " copy" suffix). NOT a move: to move or rename, use files.rename.
files_chmodChange a file mode (e.g. "0755").
files_downloadUrlGet a one-time signed URL to download a file.
files_indexFlat index of every file under a path with size, mtime and an XXH64 content hash, in ONE call, for sync tools. Honours gitignore patterns. Send the `digest` of a listing you already hold: an unchanged tree answers `unchanged: true` with no entries.
files_uploadUrlGet a one-time signed URL to upload files straight to the node, with no size cap from the panel. POST a multipart form with one or more `files` parts to it: each lands in `path` under its own file name. Valid 15 minutes, single use. Pair with files.decompress to unpack an archiv…
files_historyList the saved previous versions of ONE file, newest first. Use it when a change broke something, when the user asks to undo or go back, or before overwriting a file you did not write yourself - then pass a versionId to files.restore. It only covers changes made through this API…
files_restorePut a file back to one of its saved versions: this is the undo. Use it when an edit broke the app or the user asks to revert, and to bring back a file that was deleted. Call files.history first for the versionId. What it replaces is itself saved, so a restore can be undone in tu…
env_listList environment variables. Secret values are masked.
env_setCreate or update a user environment variable (applies on next restart).
env_updateUpdate an existing environment variable: rename it (newKey), change its value, or flip its secret flag. Applies on next restart.
env_deleteDelete a user environment variable (applies on next restart).
env_auditCompare the environment variables SET on the deployment with the ones the code actually reads. Use it right after writing code that needs configuration, and whenever an app crashes on boot for no visible reason: it names the variables the code reads but nothing sets (missing), t…
databases_rotatePasswordGenerate a new password for a database deployment and restart it to apply it. The old password stops working at once: every app connecting with it loses access until it is updated, so confirm with the user first. Returns the new password in full. A running database restarts in t…
backups_listList the restore points of a deployment, newest first, and the backup operation in progress.
backups_getFetch one restore point of a deployment.
backups_restoreRestore a restore point. replace: stops the deployment, puts every file back, starts it again if it was running. subfolder: copies the files into /restored-<date>/ without stopping anything. Runs in the background: poll backups.list.
packages_listList packages in the manifest (npm or pip).
packages_addAdd or update a package in the manifest.
packages_removeRemove a package from the manifest.
account_getYour profile, credit balance, plan and quota (pool vs used).
templates_listBrowse the public template catalogue (any author).
templates_getFull details + public stats of a single template by slug.
projects_listList the projects you own or collaborate on.
projects_createCreate a project.
projects_deleteDelete a project and all its deployments (owner only).
deployments_enableDomainsAssign a subdomain (activate domains). Idempotent.
deployments_setSlugSet the subdomain alias (slug).
deployments_removeSlugRemove the subdomain alias.
deployments_setCustomDomainAttach a custom domain. Returns the DNS verification token.
deployments_verifyCustomDomainCheck the DNS for the attached custom domain.
deployments_removeCustomDomainDetach the custom domain.
deployments_checkRequest this deployment over its public URL and report what came back. Use it after deploying or fixing a site to confirm it really works - "the logs say it started" is not the same as "the page loads". Returns the HTTP status and the start of the body, so a 500 or a stack trace…
docs_searchSearch the Bot-Hosting documentation. Use this before answering any "how do I" question.
docs_getRead one documentation page in full, by the slug returned from docs.search.
files_outlineMap the code WITHOUT reading it: every function, class, export and route with its line number, for one file or a whole folder. Call this BEFORE reading anything, to find where to look, then files.read only the part you need. It costs a fraction of reading the files and it return…
deployments_shellRun a shell command in the deployment's container and get its exit code and output. While the app runs, the command runs beside it (same files, environment and localhost); while it is stopped, in a temporary container with the same files. Use it to install, build, run tests or s…
Details
| Endpoint | https://bot-hosting.net/api/mcp (Streamable HTTP) |
| First published | 10 Nov 2026 |
| Last updated | 10 Nov 2026 |
| Registry name | net.bot-hosting/mcp |
More cloud and devops servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
