Termalin Web
by termal.in in Documents & files
Run commands and read/write files on your servers over Termalin's keyless tunnels (hosted MCP).
https://termal.in/api/v1/mcp- Tools
- 21
- open to any client
- Uptime
- 100%
- last 30 days
- Response time
- 219 ms
- 362 ms slowest 5%
- Last check
- Passed
- 9 h ago, next any minute now
Reliability
Status and outage history · Atom feed · Watch with other listings
How to connect
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"termalin-web": {
"type": "http",
"url": "https://termal.in/api/v1/mcp"
}
}
}21 tools
- hosts_list
List the servers reachable through Termalin (your tunnel agents). Returns id, name, whether the server is online, the user commands run as, when it was last seen, its country, ip (the public address the server's Connector connects from; null until it has connected), and…
- generate_password
Generate a strong random password — handy when creating a user or setting a password on a server. Returns the password only; nothing is stored.
- ssh_exec
Run a single shell command on one of your servers and return its combined output and exit code. Runs keyless over Termalin's tunnel — no SSH key, and the server needs no open inbound port. Each call is a fresh shell (cd does not persist — chain with &&). Keep a call under about…
- ssh_exec_many
Run the same shell command on several of your servers at once and return each server's output and exit code. Use it to compare or check a fleet (disk space, versions, a service's state) in one call instead of one call per server. Up to 10 servers; the same 90-second limit as…
- job_start
Start a long-running shell command on a server in the background and return a job id right away. Use it for anything that can take more than about a minute — package installs, builds, backups, migrations, large downloads. The job keeps running after this call returns and…
- job_status
Check a background job started with job_start: whether it is still running or finished (with its exit code), when it started, and the last lines of its output.
- job_stop
Stop a background job started with job_start (asks it to terminate, then forces it after two seconds). Does nothing if the job already finished.
- job_list
List the recent background jobs on a server (newest first): id, state, start time and the command.
- server_metrics
Numbers Termalin's monitoring collects from the user's servers every minute, without running anything now: CPU, memory, disk, load, network, the busiest processes, failed services, containers, certificates. Without `host`: one line per server with its latest numbers. With…
- backup_create
Make an encrypted backup of one of the user's servers now, through Termalin's backup job for that server, and wait for it (up to about a minute; a longer one keeps running and shows up in backup_list). Call it BEFORE a risky change — a migration, a config rewrite, a bulk delete…
- backup_list
The backup jobs and recent archives of one of the user's servers: when each ran, whether it succeeded, how big it is and where it is stored. Use it to check that a backup exists before a risky change, or to see whether last night's backup worked.
- alerts_list
What Termalin's monitoring says is wrong with the user's servers right now (disk filling up, memory or load pinned, a failed service, a restarting container, a certificate about to expire, a server offline), plus what cleared in the last seven days. Start here when asked how the…
- sftp_list
List a directory on one of your servers over SFTP. Returns each entry's name, whether it's a directory, size and modified time. Runs keyless over Termalin's tunnel, like ssh_exec.
- sftp_read
Read a text file from one of your servers over SFTP and return its contents. Files over 512 KB or non-text (binary) files are refused — use ssh_exec (e.g. sed/tail) for those.
- sftp_write
Create or overwrite a text file on one of your servers over SFTP. 'content' is written as UTF-8. Capped at 512 KB; for binary uploads use a terminal/scp instead.
- data_query
Run a database query on one of your servers — passwordless. It executes the engine's own client on the host over Termalin's keyless tunnel, using the database's local trust (Postgres peer auth via `sudo -u postgres`, MySQL/MariaDB unix-socket via `sudo mysql`, redis-cli…
- data_tables
List the tables / collections / keys of a database on one of your servers — passwordless, over the same local-client path as data_query.
- data_schema
Describe one table of a database on one of your servers: its columns with type, whether they can be empty, default value and primary key. Call it before writing a query against a table you have not seen. Works for postgres, mysql, mariadb and sqlite.
- web_link_create
Put an internal web service of one of the user's servers into the owner's Termalin cabinet as an 'internal site': a dashboard, admin panel or app that listens only inside that server's network (e.g. localhost:3000 on the server, or 10.0.0.5:8080 next to it). Termalin gives it…
- web_link_list
The internal sites in the owner's Termalin cabinet on the servers you can reach: id, name, server, target, address, who added it (the owner or an AI app), when, and how many people the owner shared it with. Sharing is managed by the owner in the cabinet.
- web_link_delete
Remove an internal site from the owner's Termalin cabinet by its id (from web_link_list). Its address stops working at once, for the owner and for anyone the owner shared it with. The service on the server is not touched.
Security scan
No findings
We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 9 h ago | Passed | 200 | 168 ms |
| 21 h ago | Passed | 200 | 271 ms |
| 32 h ago | Passed | 200 | 161 ms |
| 43 h ago | Passed | 200 | 261 ms |
| 2 days ago | Passed | 200 | 198 ms |
Show 10 older checks
| 3 days ago | Passed | 200 | 219 ms |
| 3 days ago | Passed | 200 | 278 ms |
| 4 days ago | Passed | 200 | 245 ms |
| 4 days ago | Passed | 200 | 232 ms |
| 4 days ago | Passed | 200 | 222 ms |
| 5 days ago | Passed | 200 | 159 ms |
| 5 days ago | Passed | 200 | 165 ms |
| 5 days ago | Passed | 200 | 1.4 s |
| 6 days ago | Passed | 200 | 186 ms |
| 6 days ago | Passed | 200 | 230 ms |