Install the Kataven MCP server — pip, API key, universal config
Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.
Three things every AI client needs: the binary on your machine, a Kataven API key, and the universal JSON entry. Once you have all three, picking a client guide is mechanical.
Windows:python.org/downloads — install the latest 3.x and check “Add Python to PATH” during install
Linux: Use your distro’s package manager (e.g. apt install python3 python3-pip)
Verify the binary is on your $PATH:
kataven-mcp --helpwhich kataven-mcp # macOS / Linuxwhere kataven-mcp # Windows
The path it prints (e.g. /usr/local/bin/kataven-mcp, /Users/you/Library/Python/3.11/bin/kataven-mcp) is what some GUI apps need if they don’t inherit your shell’s PATH.
hub.kataven.ai/settings → API Keys tab → Create API key.Suggested naming convention: name the key after the AI app you’ll use it from — claude-desktop-laptop, cursor-work, team-zapier, chatgpt-personal. Makes rotation easier when you stop using a particular tool.Pick an expiry. 90 days is a good default for a workstation key; 1 year for a team-shared key in a vault. Click Create, copy the sk_live_… value — it shows once.
sk_live_ keys self-identify the account in their prefix, so KATAVEN_ACCOUNT_ID is not needed in your MCP config. Only set it if you’re testing with a Zitadel JWT.
Every direct-stdio client accepts this exact JSON shape. Memorize it once; the only thing that changes per app is where the file lives or which UI button opens it.
A few admin endpoints intentionally don’t appear (POST /api/integrations, POST /api/marketplace/agents, PUT /api/v1/call-limits, DELETE /api/v1/sessions/{id}/recording). Those require a Hub UI session — see Authentication and Security.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Kataven","colors":{"primary":"#2563EB","light":"#60A5FA","dark":"#1E40AF"},"logo":{"light":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=6cf130449ec06609915faad2826a4c60","dark":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo-dark.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=7425881c08adee79bcc1e99cdbdf111c"},"favicon":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/favicon.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=dd648daf26b271ad7b55508d49d97e41","api":{"openapi":"api-spec/openapi.yaml"},"navbar":{"links":[{"href":"https://hub.kataven.ai","label":"Dashboard"}],"primary":{"type":"button","label":"Get an API key","href":"https://hub.kataven.ai/settings"}},"footer":{"socials":{"website":"https://kataven.ai"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"katavenai","hasAudioNarration":false,"actualSubdomain":"katavenai","customDomains":["docs.kataven.ai"],"gitSource":{"type":"github","owner":"kataven-ai","repo":"kataven-docs","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21ddfc374568b70af6c6d6","collectionId":"9d29626f-a39f-45ed-912d-f8362a80503c","schemaVersion":"v2"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6a21ddfc374568b70af6c6d6:success","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"API Reference","count":89},{"language":"default","tag":"Resources","count":88},{"language":"default","tag":"Documentation","count":38},{"language":"default","tag":"Resource reference","count":26},{"language":"default","tag":"MCP Server","count":18},{"language":"default","tag":"Python SDK","count":15},{"language":"default","tag":"Node SDK","count":14},{"language":"default","tag":"Agents","count":12},{"language":"default","tag":"Clients","count":12},{"language":"default","tag":"Campaigns","count":11}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"sdks/mcp/install","slug":"/sdks/mcp/install","pageMetadata":{"title":"Install the Kataven MCP server — pip, API key, universal config","sidebarTitle":"Install","description":"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.","keywords":["kataven mcp install","pip install kataven-mcp","mcp server setup","sk_live api key"],"href":"/sdks/mcp/install"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Three things every AI client needs: the binary on your machine, a Kataven API key, and the universal JSON entry. Once you have all three, picking a `,_jsx(_components.a,{href:`/sdks/mcp/overview#two-ways-mcp-clients-connect`,children:`client guide`}),` is mechanical.`]}),`\n`,_jsxs(Heading,{level:`2`,id:`1-install-kataven-mcp`,children:[`1. Install `,_jsx(_components.code,{children:`kataven-mcp`})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`pip`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` kataven-mcp`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Requires Python 3.10+. If you don’t have Python:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`macOS:`}),` `,_jsx(_components.code,{children:`brew install python`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Windows:`}),` `,_jsx(_components.a,{href:`https://www.python.org/downloads/`,children:`python.org/downloads`}),` — install the latest 3.x and check “Add Python to PATH” during install`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Linux:`}),` Use your distro’s package manager (e.g. `,_jsx(_components.code,{children:`apt install python3 python3-pip`}),`)`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Verify the binary is on your `,_jsx(_components.code,{children:`$PATH`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`kataven-mcp`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --help`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`which`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` kataven-mcp`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # macOS / Linux`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`where`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` kataven-mcp`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # Windows`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The path it prints (e.g. `,_jsx(_components.code,{children:`/usr/local/bin/kataven-mcp`}),`, `,_jsx(_components.code,{children:`/Users/you/Library/Python/3.11/bin/kataven-mcp`}),`) is what some GUI apps need if they don’t inherit your shell’s PATH.`]}),`\n`,_jsx(Heading,{level:`2`,id:`2-mint-an-api-key`,children:`2. Mint an API key`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.a,{href:`https://hub.kataven.ai/settings`,children:`hub.kataven.ai/settings`}),` → `,_jsx(_components.strong,{children:`API Keys`}),` tab → `,_jsx(_components.strong,{children:`Create API key`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Suggested naming convention: name the key after the AI app you’ll use it from — `,_jsx(_components.code,{children:`claude-desktop-laptop`}),`, `,_jsx(_components.code,{children:`cursor-work`}),`, `,_jsx(_components.code,{children:`team-zapier`}),`, `,_jsx(_components.code,{children:`chatgpt-personal`}),`. Makes rotation easier when you stop using a particular tool.`]}),`\n`,_jsxs(_components.p,{children:[`Pick an expiry. 90 days is a good default for a workstation key; 1 year for a team-shared key in a vault. Click `,_jsx(_components.strong,{children:`Create`}),`, copy the `,_jsx(_components.code,{children:`sk_live_…`}),` value — `,_jsx(_components.strong,{children:`it shows once.`})]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`sk_live_`}),` keys self-identify the account in their prefix, so `,_jsx(_components.code,{children:`KATAVEN_ACCOUNT_ID`}),` is `,_jsx(_components.strong,{children:`not`}),` needed in your MCP config. Only set it if you’re testing with a Zitadel JWT.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`3-the-universal-mcp-server-entry`,children:`3. The universal MCP server entry`}),`\n`,_jsxs(_components.p,{children:[`Every direct-stdio client accepts this exact JSON shape. Memorize it once; the only thing that changes per app is `,_jsx(_components.em,{children:`where`}),` the file lives or `,_jsx(_components.em,{children:`which UI button`}),` opens it.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"mcpServers\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"kataven\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"command\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"kataven-mcp\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"env\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"KATAVEN_API_KEY\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"sk_live_acme_...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Two clients use slightly different shapes — covered in their pages:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Zed`}),` uses `,_jsx(_components.code,{children:`context_servers`}),` instead of `,_jsx(_components.code,{children:`mcpServers`}),` (`,_jsx(_components.a,{href:`/sdks/mcp/clients/zed`,children:`Zed setup →`}),`).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`VS Code`}),` uses `,_jsx(_components.code,{children:`servers`}),` instead of `,_jsx(_components.code,{children:`mcpServers`}),`, and the file is `,_jsx(_components.code,{children:`mcp.json`}),` (`,_jsx(_components.a,{href:`/sdks/mcp/clients/vs-code`,children:`VS Code setup →`}),`).`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Remote-only clients (ChatGPT, Claude.ai web, n8n) need a different shape — see `,_jsx(_components.a,{href:`/sdks/mcp/tunneling`,children:`Tunneling`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`what-gets-exposed`,children:`What gets exposed`}),`\n`,_jsx(_components.p,{children:`Once the server is wired up, the AI sees rich JSON-Schema for each Kataven tool’s arguments. Every Hub API verb is reachable:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Agents`}),` — `,_jsx(_components.code,{children:`kataven_list_agents`}),`, `,_jsx(_components.code,{children:`kataven_get_agent`}),`, `,_jsx(_components.code,{children:`kataven_create_agent`}),`, `,_jsx(_components.code,{children:`kataven_update_agent`}),`, `,_jsx(_components.code,{children:`kataven_delete_agent`}),`, `,_jsx(_components.code,{children:`kataven_attach_playbook`}),`, `,_jsx(_components.code,{children:`kataven_detach_playbook`}),`, `,_jsx(_components.code,{children:`kataven_attach_faq`}),`, `,_jsx(_components.code,{children:`kataven_detach_faq`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Tools + integrations`}),` — `,_jsx(_components.code,{children:`kataven_list_tools`}),`, `,_jsx(_components.code,{children:`kataven_create_tool`}),`, `,_jsx(_components.code,{children:`kataven_list_integrations`}),`, `,_jsx(_components.code,{children:`kataven_install_integration`}),`, `,_jsx(_components.code,{children:`kataven_uninstall_integration`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Knowledge`}),` — `,_jsx(_components.code,{children:`kataven_list_playbooks`}),`, `,_jsx(_components.code,{children:`kataven_create_playbook`}),`, `,_jsx(_components.code,{children:`kataven_list_faqs`}),`, `,_jsx(_components.code,{children:`kataven_create_faq`}),`, …`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Telephony`}),` — `,_jsx(_components.code,{children:`kataven_list_phone_numbers`}),`, `,_jsx(_components.code,{children:`kataven_create_phone_number`}),`, `,_jsx(_components.code,{children:`kataven_update_phone_number`}),`, `,_jsx(_components.code,{children:`kataven_list_telephony_providers`}),`, …`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Calls`}),` — `,_jsx(_components.code,{children:`kataven_originate_call`}),`, `,_jsx(_components.code,{children:`kataven_get_recording`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Campaigns`}),` — `,_jsx(_components.code,{children:`kataven_list_campaigns`}),`, `,_jsx(_components.code,{children:`kataven_create_campaign`}),`, `,_jsx(_components.code,{children:`kataven_start_campaign`}),`, `,_jsx(_components.code,{children:`kataven_pause_campaign`}),`, `,_jsx(_components.code,{children:`kataven_stop_campaign`}),`, …`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Widget`}),` — `,_jsx(_components.code,{children:`kataven_list_widget_keys`}),`, `,_jsx(_components.code,{children:`kataven_create_widget_key`}),`, `,_jsx(_components.code,{children:`kataven_get_widget_settings`}),`, …`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Marketplace`}),` — `,_jsx(_components.code,{children:`kataven_list_templates`}),`, `,_jsx(_components.code,{children:`kataven_install_template`}),`, …`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`A few admin endpoints intentionally `,_jsx(_components.strong,{children:`don’t`}),` appear (`,_jsx(_components.code,{children:`POST /api/integrations`}),`, `,_jsx(_components.code,{children:`POST /api/marketplace/agents`}),`, `,_jsx(_components.code,{children:`PUT /api/v1/call-limits`}),`, `,_jsx(_components.code,{children:`DELETE /api/v1/sessions/{id}/recording`}),`). Those require a Hub UI session — see `,_jsx(_components.a,{href:`/authentication`,children:`Authentication`}),` and `,_jsx(_components.a,{href:`/sdks/mcp/security`,children:`Security`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`next-pick-your-client`,children:`Next: pick your client`}),`\n`,_jsx(_components.p,{children:`Every client guide is one page, ~2 minutes to read end to end:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`🟢 `,_jsx(_components.strong,{children:`Direct stdio`}),` — `,_jsx(_components.a,{href:`/sdks/mcp/clients/claude-desktop`,children:`Claude Desktop`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/cursor`,children:`Cursor`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/windsurf`,children:`Windsurf`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/zed`,children:`Zed`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/vs-code`,children:`VS Code`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/jetbrains`,children:`JetBrains`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/warp`,children:`Warp`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/goose`,children:`Goose`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/raycast`,children:`Raycast`})]}),`\n`,_jsxs(_components.li,{children:[`🟡 `,_jsx(_components.strong,{children:`Remote (needs tunnel)`}),` — `,_jsx(_components.a,{href:`/sdks/mcp/clients/chatgpt`,children:`ChatGPT`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/claude-web`,children:`Claude.ai web`}),`, `,_jsx(_components.a,{href:`/sdks/mcp/clients/n8n`,children:`n8n`})]}),`\n`,_jsxs(_components.li,{children:[`⚙️ `,_jsx(_components.strong,{children:`Programmatic`}),` — `,_jsx(_components.a,{href:`/sdks/mcp/programmatic`,children:`OpenAI Agents SDK / LangGraph / Agno / AutoGen`})]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Install the Kataven MCP server — pip, API key, universal config","sidebarTitle":"Install","description":"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.","keywords":["kataven mcp install","pip install kataven-mcp","mcp server setup","sk_live api key"],"href":"/sdks/mcp/install"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"1. Install kataven-mcp","slug":"1-install-kataven-mcp","depth":2,"children":[]},{"title":"2. Mint an API key","slug":"2-mint-an-api-key","depth":2,"children":[]},{"title":"3. The universal MCP server entry","slug":"3-the-universal-mcp-server-entry","depth":2,"children":[]},{"title":"What gets exposed","slug":"what-gets-exposed","depth":2,"children":[]},{"title":"Next: pick your client","slug":"next-pick-your-client","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"katavenai","siteName":"Kataven","title":"Install the Kataven MCP server — pip, API key, universal config - Kataven","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-08T17:59:26.373Z","originalFileLocation":"sdks/mcp/install.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Kataven\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Install the Kataven MCP server — pip, API key, universal config - Kataven\">\u003cmeta data-mint-head property=\"og:description\" content=\"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kataven\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.kataven.ai/sdks/mcp/install\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://katavenai.mintlify.app/_mintlify/api/og/v2?division=MCP+Server\u0026amp;title=Install+the+Kataven+MCP+server+%E2%80%94+pip%2C+API+key%2C+universal+config\u0026amp;description=Install+kataven-mcp+via+pip%2C+mint+an+sk_live_+API+key%2C+and+copy+the+universal+MCP+server+JSON+entry+that+every+AI+client+accepts.\u0026amp;theme=0ed538260c0fcf374bac1c4c\u0026amp;signature=b07bf9eb5d1827d0962dbe92304963d2ebc6501c7ba6a86b1c8034d691bed7d1\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Install the Kataven MCP server — pip, API key, universal config - Kataven\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://katavenai.mintlify.app/_mintlify/api/og/v2?division=MCP+Server\u0026amp;title=Install+the+Kataven+MCP+server+%E2%80%94+pip%2C+API+key%2C+universal+config\u0026amp;description=Install+kataven-mcp+via+pip%2C+mint+an+sk_live_+API+key%2C+and+copy+the+universal+MCP+server+JSON+entry+that+every+AI+client+accepts.\u0026amp;theme=0ed538260c0fcf374bac1c4c\u0026amp;signature=b07bf9eb5d1827d0962dbe92304963d2ebc6501c7ba6a86b1c8034d691bed7d1\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kataven\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563EB\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.kataven.ai/sdks/mcp/install\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/sdks/mcp/install.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.kataven.ai/#organization\",\"name\":\"Kataven\",\"url\":\"https://docs.kataven.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=6cf130449ec06609915faad2826a4c60\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.kataven.ai#website\",\"name\":\"Kataven\",\"url\":\"https://docs.kataven.ai\",\"publisher\":{\"@id\":\"https://docs.kataven.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.kataven.ai/sdks/mcp/install#webpage\",\"url\":\"https://docs.kataven.ai/sdks/mcp/install\",\"name\":\"Install the Kataven MCP server — pip, API key, universal config\",\"description\":\"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\",\"dateModified\":\"2026-05-08T17:59:26.373Z\",\"isPartOf\":{\"@id\":\"https://docs.kataven.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.kataven.ai/sdks/mcp/install#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.kataven.ai/sdks/mcp/install#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"MCP Server\",\"item\":\"https://docs.kataven.ai/sdks/mcp/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Install the Kataven MCP server — pip, API key, universal config\",\"item\":\"https://docs.kataven.ai/sdks/mcp/install\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.kataven.ai/sdks/mcp/install#article\",\"headline\":\"Install the Kataven MCP server — pip, API key, universal config\",\"name\":\"Install the Kataven MCP server — pip, API key, universal config\",\"description\":\"Install kataven-mcp via pip, mint an sk_live_ API key, and copy the universal MCP server JSON entry that every AI client accepts.\",\"url\":\"https://docs.kataven.ai/sdks/mcp/install\",\"mainEntityOfPage\":{\"@id\":\"https://docs.kataven.ai/sdks/mcp/install#webpage\"},\"dateModified\":\"2026-05-08T17:59:26.373Z\",\"keywords\":\"kataven mcp install, pip install kataven-mcp, mcp server setup, sk_live api key\",\"publisher\":{\"@id\":\"https://docs.kataven.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.kataven.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kataven\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Kataven","nav":{"global":null,"anchors":[{"anchor":"Documentation","icon":"book-open","groups":[{"group":"Get Started","pages":[{"title":"Kataven docs — voice \u0026 chat AI agents you can deploy in minutes","sidebarTitle":"Introduction","href":"/introduction"},{"title":"Quickstart — list your Kataven agents in 5 lines of code","sidebarTitle":"Quickstart","href":"/quickstart"},{"title":"Authentication","href":"/authentication"}]},{"group":"Concepts","pages":[{"title":"Agents","href":"/concepts/agents"},{"title":"Tools","href":"/concepts/tools"},{"title":"Playbooks \u0026 FAQs","href":"/concepts/playbooks-and-faqs"},{"title":"Telephony","href":"/concepts/telephony"},{"title":"Campaigns","href":"/concepts/campaigns"},{"title":"Embeddable widget","href":"/concepts/widget"},{"title":"Multi-tenancy","href":"/concepts/multi-tenancy"},{"title":"Rate limits","href":"/concepts/rate-limits"}]},{"group":"Guides","pages":[{"title":"Build your first AI voice agent — 10-minute tutorial","sidebarTitle":"Your first agent","href":"/guides/your-first-agent"},{"title":"Inbound calls — wire a phone number to an AI agent","sidebarTitle":"Inbound calls","href":"/guides/inbound-calls"},{"title":"Outbound calls — place AI voice calls programmatically","sidebarTitle":"Outbound calls","href":"/guides/outbound-call"},{"title":"Add a voice AI agent to your website — Kataven widget","sidebarTitle":"Add to your website","href":"/guides/embed-widget"}]},{"group":"Manage with AI","pages":[{"title":"Manage Kataven with AI — Claude, ChatGPT, Codex, Cursor","sidebarTitle":"Overview","href":"/guides/ai-agents"},{"title":"Manage Kataven with Claude Code — voice AI from the terminal","sidebarTitle":"Manage with Claude Code","href":"/guides/manage-with-claude-code"},{"title":"Manage Kataven with Claude Desktop — MCP integration","sidebarTitle":"Manage with Claude Desktop","href":"/guides/manage-with-claude-desktop"},{"title":"Manage Kataven with ChatGPT — MCP integration + OpenAI Agents SDK","sidebarTitle":"Manage with ChatGPT","href":"/guides/manage-with-chatgpt"},{"title":"Manage Kataven with Codex CLI — voice AI from OpenAI's terminal agent","sidebarTitle":"Manage with Codex","href":"/guides/manage-with-codex"}]},{"group":"MCP Server","pages":[{"title":"Kataven MCP server — manage voice AI agents from any AI app, no code","sidebarTitle":"Overview","description":"Install one piece of software and let Claude, ChatGPT, Cursor, Windsurf, Zed, VS Code, JetBrains, Warp, Goose, n8n, or Raycast run your Kataven account by chat. No API calls, no scripts.","href":"/sdks/mcp/overview"},{"title":"Install the Kataven MCP server — pip, API key, universal config","sidebarTitle":"Install","href":"/sdks/mcp/install"},{"group":"Clients","pages":[{"title":"Connect Kataven MCP to Claude Desktop","sidebarTitle":"Claude Desktop","description":"Set up the Kataven MCP server in Claude Desktop on macOS, Windows, or Linux. Manage voice agents, run campaigns, and place test calls — all from chat with Claude.","href":"/sdks/mcp/clients/claude-desktop"},{"title":"Connect Kataven MCP to Cursor","sidebarTitle":"Cursor","href":"/sdks/mcp/clients/cursor"},{"title":"Connect Kataven MCP to Windsurf (Codeium)","sidebarTitle":"Windsurf","href":"/sdks/mcp/clients/windsurf"},{"title":"Connect Kataven MCP to Zed","sidebarTitle":"Zed","href":"/sdks/mcp/clients/zed"},{"title":"Connect Kataven MCP to VS Code (GitHub Copilot agent mode)","sidebarTitle":"VS Code","href":"/sdks/mcp/clients/vs-code"},{"title":"Connect Kataven MCP to JetBrains AI Assistant","sidebarTitle":"JetBrains","href":"/sdks/mcp/clients/jetbrains"},{"title":"Connect Kataven MCP to Warp Terminal","sidebarTitle":"Warp Terminal","href":"/sdks/mcp/clients/warp"},{"title":"Connect Kataven MCP to Goose","sidebarTitle":"Goose","href":"/sdks/mcp/clients/goose"},{"title":"Connect Kataven MCP to Raycast AI","sidebarTitle":"Raycast","href":"/sdks/mcp/clients/raycast"},{"title":"Connect Kataven MCP to ChatGPT (Desktop, web, mobile)","sidebarTitle":"ChatGPT","href":"/sdks/mcp/clients/chatgpt"},{"title":"Connect Kataven MCP to Claude.ai (web)","sidebarTitle":"Claude.ai (web)","href":"/sdks/mcp/clients/claude-web"},{"title":"Connect Kataven MCP to n8n","sidebarTitle":"n8n","href":"/sdks/mcp/clients/n8n"}]},{"title":"Expose Kataven MCP via a tunnel — for ChatGPT, Claude.ai web, n8n","sidebarTitle":"Tunneling","href":"/sdks/mcp/tunneling"},{"title":"Use the Kataven MCP server programmatically — Agents SDK, LangGraph, Agno","sidebarTitle":"Programmatic","href":"/sdks/mcp/programmatic"},{"title":"Kataven MCP — security, key scoping, blast radius","sidebarTitle":"Security","href":"/sdks/mcp/security"},{"title":"Kataven MCP — troubleshooting","sidebarTitle":"Troubleshooting","href":"/sdks/mcp/troubleshooting"}]}]},{"anchor":"API Reference","icon":"rectangle-terminal","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]},{"anchor":"Python SDK","icon":"python","pages":[{"title":"Python SDK","href":"/sdks/python/overview"}]},{"anchor":"Node SDK","icon":"node-js","pages":[{"title":"Node SDK","href":"/sdks/node/overview"}]}]},"title":"Install the Kataven MCP server — pip, API key, universal config - Kataven","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":[],"chunks":[]}