Connect Claude Code, Cursor, or any MCP client to inference.sh and use all platform capabilities as tools.
What You Get
When you connect an MCP client to inference.sh, it gets access to:
| Tool Group | Tools |
|---|---|
| Apps | app_list, app_get, app_run, task_get, task_list, task_logs, task_cancel |
| Knowledge | knowledge_list, knowledge_search, knowledge_get, knowledge_create, knowledge_delete |
| Skills | skill_use, skill_files, skill_view, skill_upload, skill_store, skill_search |
| MCP Proxy | mcp_list, mcp_search, mcp_get, mcp_tools, mcp_run, mcp_connect, mcp_disconnect |
The MCP proxy tools are especially powerful — they let your coding agent discover, connect to, and call tools on any MCP server through inference.sh, without running those servers locally.
Task tools
| Tool | Purpose | Key arguments |
|---|---|---|
task_get | Get task status and output | task_id (required) |
task_list | List recent tasks | limit (default 20, max 100), cursor, status (queued, running, completed, failed, cancelled) |
task_logs | Fetch logs for one phase | task_id (required), log_type (build, run, serve, setup, task; default run) |
task_cancel | Cancel a running task | task_id (required), force (optional boolean) |
REST equivalents: Tasks API.
Setup
Claude Code
Add to your MCP settings (~/.claude/settings.json or project .mcp.json):
1{2 "mcpServers": {3 "inference": {4 "type": "streamable-http",5 "url": "https://api.inference.sh/mcp",6 "headers": {7 "Authorization": "Bearer inf_your_api_key"8 }9 }10 }11}Cursor
Add to your Cursor MCP settings:
1{2 "mcpServers": {3 "inference": {4 "url": "https://api.inference.sh/mcp",5 "headers": {6 "Authorization": "Bearer inf_your_api_key"7 }8 }9 }10}Any MCP Client
The server card is at:
1GET https://api.inference.sh/.well-known/mcp-server-card1{2 "name": "sh.inference/mcp-server",3 "description": "inference.sh MCP server",4 "remotes": [5 {6 "type": "streamable-http",7 "url": "https://api.inference.sh/mcp",8 "supportedProtocolVersions": ["2025-11-25", "2025-06-18", "2025-03-26"]9 }10 ]11}Server discovery proxy
The workspace and CLI resolve custom MCP server URLs without browser CORS issues via a public proxy:
1GET https://api.inference.sh/mcps/discover?url=https://example.com| Step | What it tries |
|---|---|
| 1 | GET {origin}/.well-known/mcp-server-card (MCP server card) |
| 2 | OAuth authorization-server metadata at {origin} |
Returns the discovered JSON on success (200, cached five minutes). Use this when building UI that needs to preview a server before connect.
When you connect a custom MCP server through the API with a bare origin (https://host only), the platform also tries UCP at GET /.well-known/ucp and uses the first transport with "transport": "mcp" and a non-empty endpoint.
Authentication
All requests to the MCP server require a Bearer token:
1Authorization: Bearer inf_your_api_keyGet your API key from team settings or via CLI:
1belt loginExample: Running Apps from Claude Code
Once connected, Claude Code can run inference.sh apps directly:
1You: Generate an image of a sunset over mountains23Claude: I'll use inference.sh to generate that image.4 [Calling app_run with app="infsh/flux-schnell", input={prompt: "sunset over mountains"}]56 Here's your image: https://files.inference.sh/...Example: Using Connectors from Claude Code
Your connected MCP servers are available through the proxy tools:
1You: Check my Linear backlog for high-priority items23Claude: [Calling mcp_run with slug="linear", tool="list_issues", input={priority: 1}]45 You have 3 high-priority issues:6 - INF-201: Fix auth token refresh7 - INF-198: Billing webhook timeout8 - INF-195: Rate limit on /agents/runProtocol
The server implements the Model Context Protocol specification:
- Transport: Streamable HTTP (JSON-RPC 2.0)
- Endpoint:
POST https://api.inference.sh/mcp - Supported versions: 2025-11-25, 2025-06-18, 2025-03-26
- Methods:
initialize,tools/list,tools/call
Next
- Connectors Overview — what connectors are and how they work
- Browsing & Connecting — set up connections to MCP servers