Mcphost
by mcphost.dev in Other
Hosted MCP runtime where your agent publishes its own tools by tool call and keeps working.
https://mcphost.dev/mcp- Tools
- 17
- open to any client
- Uptime
- 100%
- last 30 days
- Response time
- 173 ms
- 260 ms slowest 5%
- Last check
- Passed
- 6 h ago, next in 19 min
This listing's own text contains instructions aimed at AI agents (see the security scan below). We withhold that text from agents and never recommend this service.
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": {
"mcphost": {
"type": "http",
"url": "https://mcphost.dev/mcp"
}
}
}17 tools
- signup
Explicit signup, for a client that cannot keep a session across calls: create a tenant and receive a bearer key and namespace. Unauthenticated. Most clients never need this -- any other host.*/billing.* call from a fresh connection creates a tenant implicitly and returns its own…
- host.quickstart
Return the shortest ordered sequence of calls to a working tool of `kind`, with your namespace and a filled-in example already substituted in, plus the current limits and a try_before_call table naming the one dry-run tool for each case. Read-only -- this call alone never…
- host.help.search
Search this host's own documentation and tool descriptions. Returns up to k hits (default 3, response under 2 KB), each with a snippet, the nearest runnable example and an anchor. Read-only, anonymous, no tenant data -- call it with the error text or import line you are stuck on…
- host.help.get
Return the documentation section an anchor points at: its text (at most 4 KB) and its first fenced example. Pass an anchor exactly as an error, hint or help entry printed it, e.g. a rate_limited error's `anchor`. Read-only, anonymous, no tenant data. An unknown anchor is…
- host.errors
List every error code this host can return, each with its class (agent_fault | host_refusal | upstream_fault | plan_limit | host_fault), family, remedy, docs anchor, retryable flag and help_url -- the same object GET /errors.json serves. Pass code to get one row; a misspelt code…
- host.redeem
Exchange a signup(handoff: true) handoff_token for the tenant key it was issued for. Single-use: a second redemption fails with handoff_token_redeemed; past its expiry it fails with handoff_token_expired. Unauthenticated -- the token itself is the proof.
- billing.plans
The plan catalog (price and quotas per plan) and whether Stripe billing is configured on this host. Anonymous callers get the same answer as tenants.
- host.whoami
Return the calling tenant's identity, including key_age_s and key_rotated_at for auditing credential hygiene.
- host.tool_publish
Publish a tool of a registered kind (e.g. python, http or echo; the kind argument's enum lists them all) under this tenant's namespace. Call host.quickstart(kind) first for a filled-in example spec and the full publish-to-call sequence. Python's sandbox API: import mcphost…
- host.tool_call
Invoke a tool this tenant has already published, by its local name -- the same real, metered call as calling it directly by its namespaced name (<namespace>.<name>), for a session that has no way to see its own namespaced tool name yet. Unlike host.tool_test, this counts toward…
- host.tool_test
Dry-run a published tool by name: verdict (pass/will_fail/unverifiable), writes rolled back (dry_run); see host.quickstart.
- host.state.set
Write one key in this tenant's key-value state namespace; value may be any JSON value. Overrun of the plan's state_bytes_max quota fails with state_quota_exceeded and writes nothing.
- host.state.get
Read one key from this tenant's key-value state namespace. Returns found: false (not an error) if the key was never set.
- host.state.list
List keys (with their current values) in this tenant's key-value state namespace, optionally filtered by prefix.
- host.tool_share
Share one of this tenant's published tools with everyone (visibility: "public") or with a named group this tenant owns (visibility: "group", group: <name>). The tool keeps running in this tenant's own sandbox with this tenant's own secrets; a caller reaches it as <this tenant's…
- host.feedback.send
Tell the host's humans what you needed: kind, up to 2048 bytes of text, optional context. Works before signup. Returns feedback_id.
- host.feedback.list
List your own feedback (newest first, status received). Anonymous callers get [].
Security scan
1 finding
- Hidden instruction tags in tool:signup
enant implicitly and returns its own /u/<secret>/mcp URL in the response's onboarding field. Recommended here: pass handoff: true to receive
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 6 h ago | Passed | 200 | 146 ms |
| 15 h ago | Passed | 200 | 191 ms |
| 24 h ago | Passed | 200 | 203 ms |
| 33 h ago | Passed | 200 | 106 ms |
| 43 h ago | Passed | 200 | 143 ms |
Show 10 older checks
| 2 days ago | Passed | 200 | 110 ms |
| 3 days ago | Passed | 200 | 144 ms |
| 3 days ago | Passed | 200 | 157 ms |
| 4 days ago | Passed | 200 | 175 ms |
| 4 days ago | Passed | 200 | 156 ms |
| 4 days ago | Passed | 200 | 173 ms |
| 5 days ago | Passed | 200 | 141 ms |
| 5 days ago | Passed | 200 | 260 ms |
| 6 days ago | Passed | 200 | 171 ms |
| 6 days ago | Passed | 200 | 174 ms |