{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-docs/mcp/mcp.sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"iClosed MCP server"},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"iclosed-mcp-server","__idx":0},"children":["iClosed MCP server"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The iClosed ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Model Context Protocol (MCP)"]}," server lets AI assistants such as Claude, Cursor and VS Code work with your ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["iClosed workspace"]}," in plain language. Your assistant can look up contacts, notes, deals, events and calls, book or reschedule calls, and record changes."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Beta"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The iClosed MCP server is in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["beta"]},". Tools and behavior may change before general availability."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MCP server URL:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://mcp.iclosed.io/mcp"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"quickstart","__idx":1},"children":["Quickstart"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Turn on MCP."]}," An account owner or super admin opens ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Settings → Developer → MCP"]}," and turns on ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Allow AI assistants (MCP) to connect to this workspace"]},". The account owner and super admins can connect without this step."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add the URL to your assistant."]}," Paste ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://mcp.iclosed.io/mcp"]}," into your assistant's MCP or connector settings."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Sign in and allow."]}," Your assistant opens iClosed in the browser. Sign in, review the permissions, and click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Allow access"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Step-by-step guides: ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/mcp-connectors/claude"},"children":["Claude"]}," · ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/mcp-connectors/claude-code"},"children":["Claude Code"]}," · ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/mcp-connectors/cursor"},"children":["Cursor"]}," · ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/mcp-connectors/vs-code"},"children":["VS Code"]}," · ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/mcp-connectors/other-clients"},"children":["Other clients"]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"before-you-connect","__idx":2},"children":["Before you connect"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You need:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["An iClosed account"]}," on any plan."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MCP turned on for your workspace."]}," An account owner or super admin turns it on in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Settings → Developer → MCP"]},". It is off by default for members; the account owner and super admins can always connect. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/admins"},"children":["For admins"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["An MCP-compatible assistant"]}," that can connect to a remote server over HTTPS and sign in with OAuth."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You don't need an API key. Leave any \"headers\" or \"API key\" fields in your assistant empty."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-it-works","__idx":3},"children":["How it works"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MCP"]}," is an open standard for connecting AI assistants to tools and data. The iClosed MCP server exposes workspace actions as ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["tools"]}," that your assistant can call. Each tool maps to an operation in the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference"},"children":["public API"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["You sign in with OAuth 2.1 and PKCE"]},", the authorization method MCP clients expect. Your assistant registers itself with iClosed automatically, then you approve the requested permissions on the iClosed consent screen."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Access follows your role."]}," The assistant acts as you, in the workspace you approved. It can only do what your iClosed role allows, even if it requested more."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Rate limits:"]}," each connection can make up to ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["20 requests per 10 seconds"]},". Every request to the MCP server counts, not only tool calls. The standard per-endpoint ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/rate-limiting"},"children":["API rate limits"]}," also apply. If you go over the limit, the server responds with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["429 Too Many Requests"]}," and a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Retry-After"]}," header."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transport:"]}," Streamable HTTP."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"what-assistants-can-do","__idx":4},"children":["What assistants can do"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Area"},"children":["Area"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What the assistant can do"},"children":["What the assistant can do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Contacts"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List, search, view, create and update contacts; view a contact's journey"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Contact notes"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read and add notes on a contact"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Custom fields"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read fields and contact stages; create and update fields; set field answers"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Deals"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List, create and update deals"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Events"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List events, check available booking slots, activate or deactivate an event"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Event calls"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Search calls, book, reschedule or cancel a call, reassign the closer"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Call outcomes"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Set a call's outcome, with notes, and create the deal when it's won"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Products"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List, create and update products"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transactions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List, record, update and delete transactions"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Users and availability"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List workspace users and their availability schedules"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Tool names are the same in every client, though clients display them differently. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/tools"},"children":["Tools"]}," for the full list."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"related-documentation","__idx":5},"children":["Related documentation"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/security"},"children":["Security and permissions"]}," — scopes, consent and data handling."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/mcp/troubleshooting"},"children":["Troubleshooting and FAQ"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/oauth-clients"},"children":["OAuth Clients"]}," — for developers building their own OAuth app (not needed for MCP)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/api-reference"},"children":["API Reference"]}," — the REST operations the MCP tools call."]}]}]},"headings":[{"value":"iClosed MCP server","id":"iclosed-mcp-server","depth":1},{"value":"Quickstart","id":"quickstart","depth":2},{"value":"Before you connect","id":"before-you-connect","depth":2},{"value":"How it works","id":"how-it-works","depth":2},{"value":"What assistants can do","id":"what-assistants-can-do","depth":2},{"value":"Related documentation","id":"related-documentation","depth":2}],"frontmatter":{"sidebar":{"path":"./mcp.sidebars.yaml"},"seo":{"title":"iClosed MCP server"}},"lastModified":"2026-10-07T07:39:18.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/mcp/introduction","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}