Server URLs
The
{api-slug} is the last segment of an API’s marketplace URL — for jojapi.com/hub/api/web-search it is web-search. You can also copy ready-made snippets from the Connect button on any API page. The path-based aliases https://jojapi.com/mcp and https://jojapi.com/mcp/{api-slug} serve the same servers and keep working.
Both servers speak MCP over Streamable HTTP (stateless, JSON-RPC over POST). Server-push SSE streams are not used.
Authentication
Send your JoJ API key as an HTTP header on the MCP connection — the same key and the same accepted shapes as any other JoJ API call:X-JoJAPI-Key: jk_..., Authorization: jk_... and Basic (key as username or password) work too. Keys never appear in tool arguments or URLs. Without a key the servers still connect and list tools — calls return instructions for getting one.
Connect from popular clients
- Claude Code
- Cursor
- VS Code
- Claude.ai
The discovery server
https://mcp.jojapi.com exposes four tools over the whole catalog:
It is handy as a single always-on connector: the agent finds an API, reads its docs and calls it without you wiring a new server per API.
Billing, limits and errors
- A tool call is a gateway call: the same plans and quotas, the same rate limits, the same usage response headers. Each tool result ends with a
usage —line summarizing what the call consumed. - Tool descriptions include each endpoint’s billing (fixed amounts, or last-month averages for metered objects).
- Gateway errors come back as readable tool errors with the fix linked — e.g. a
402explains whether the plan lacks the object, the quota ran out, or the pay-as-you-go balance is low. - Responses larger than 50,000 characters are truncated (with a note) to protect the agent’s context window. Calls time out after 95 seconds.
- Event-stream (SSE) endpoints are delivered buffered, after the stream completes.
Notes
- The tool list mirrors the API’s public documentation and refreshes within ~5 minutes of a provider’s change. Tool names match the
operationIds in the API’s OpenAPI spec (get_v1_search,post_report, …). - API responses pass through from providers unmodified. Treat them as data — your agent should not follow instructions found inside API responses.
