Skip to content

MCP API quickstart

Connect any MCP client to Kindo and access permitted tools from connected integrations and first-party Platform tools through one URL with one API key. Tools are available only when your organization’s approval setting is Run automatically. An organization setting of Ask before running or Block hides tools and prevents external MCP execution. Personal tool approval settings apply to Kindo chats and agents; configure your tool preferences in your external client. For tools requiring approval, use Kindo chat if manual approvals are enabled for your organization, or contact your administrator.

POST https://api.kindo.ai/v1/mcp is a remote Model Context Protocol server. Point a spec-conformant MCP client at it and you get a tool catalog filtered by your account’s access and organization approval settings. A typical tools/list will return entries like:

  • linear_create_issue
  • github_search_repositories
  • slack_post_message
  • jira_get_ticket
  • notion_search_pages

Integration tools are prefixed with their integration ID. First-party Platform tools use the platform_ prefix and require Platform MCP to be configured. Discovery applies tool availability and policy checks. Calls also check current access and permission for the requested resource; appearing in the catalog does not guarantee that every call is permitted.

  • A Kindo API key (see Authentication).
  • An MCP-capable client. Anything that speaks the MCP spec works — Claude Code, OpenClaw, Codex CLI, Claude Desktop, Hermes, Cursor, VS Code, or your own code using the official SDK. See Client setup for copy-paste recipes.

The smallest possible end-to-end example is a raw tools/list with curl:

Terminal window
curl -X POST https://api.kindo.ai/v1/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Authorization: Bearer $KINDO_API_KEY" \
-d '{
"jsonrpc": "2.0",
"method": "tools/list",
"id": 1
}'

The Accept: application/json, text/event-stream header is required by the MCP Streamable HTTP transport. MCP SDKs and the mcp-remote bridge set it for you; raw curl callers must include it.

You’ll get back the tools permitted by your organization’s discovery and automatic-execution policies, across connected integrations and first-party Platform tools.

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tools": [
{
"name": "linear_list_issues",
"description": "List issues in a Linear team",
"inputSchema": { "type": "object", "properties": { "teamId": { "type": "string" } }, "required": ["teamId"] }
}
]
}
}

To find chats by title, agent, or ownership, see Discover conversations, then read a selected chat with platform_get_conversation.

The agent-run guide covers cross-agent search, complete text results, and supported stop/retry actions. For recurring schedules, see the schedule tools for the lifecycle, required permissions, and retry behavior.

For event-driven setup, see the event and Direct Webhook tools.

  • Client setup — copy-paste recipes for Claude Code, OpenClaw, Codex CLI, Claude Desktop, Hermes, Cursor, VS Code, and the JS/TS SDK.
  • Request shape — required headers, supported JSON-RPC methods, and the tool naming convention.
  • Scoping — which tools you see in tools/list, why the list is what it is, and how to narrow it.