MCP Hub
Back to servers

amoCRM MCP Server

An MCP server that provides 36 tools for interacting with the amoCRM (Kommo) API v4, covering leads, contacts, companies, and tasks. It supports full entity lifecycles, account analytics, and bulk operations with integrated OAuth 2.0 and rate limiting.

Updated
Feb 19, 2026

amoCRM MCP Server

MCP server for amoCRM (Kommo) API v4. Exposes 36 tools for leads, contacts, companies, tasks, notes, pipelines, associations, analytics, and more.

Built with FastMCP. Works with Claude Desktop, Cursor, and any MCP-compatible client.

Features

  • 36 MCP tools across 11 domains (leads, contacts, companies, tasks, notes, pipelines, associations, account, batch, unsorted, analytics)
  • OAuth 2.0 token refresh with disk persistence
  • Rate limiting — 7 req/s with automatic 429 backoff and jitter
  • HAL+JSON normalization — strips _links, flattens _embedded
  • Consistent response envelopes{data, pagination} or {error, status_code, detail}
  • stdio and SSE transports

Quick Start

1. Install

pip install -e .

2. Configure

Copy .env.example to .env and fill in your amoCRM credentials:

cp .env.example .env

You need at minimum:

  • AMO_SUBDOMAIN — your amoCRM account subdomain
  • AMO_ACCESS_TOKEN — OAuth access token

For automatic token refresh, also set:

  • AMO_CLIENT_ID, AMO_CLIENT_SECRET, AMO_REFRESH_TOKEN

3. Run

# stdio (default — for Claude Desktop, Cursor, etc.)
python -m amocrm_mcp

# SSE transport
AMO_TRANSPORT=sse AMO_PORT=8000 python -m amocrm_mcp

Claude Desktop config

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "amocrm": {
      "command": "python",
      "args": ["-m", "amocrm_mcp"],
      "env": {
        "AMO_SUBDOMAIN": "your-subdomain",
        "AMO_ACCESS_TOKEN": "your-token"
      }
    }
  }
}

Tools

DomainToolsDescription
Leadsleads_list, leads_get, leads_search, leads_create, leads_create_complex, leads_updateFull lead lifecycle
Contactscontacts_get, contacts_search, contacts_create, contacts_updateContact management
Companiescompanies_get, companies_search, companies_create, companies_updateCompany management
Taskstasks_list, tasks_get, tasks_create, tasks_updateCRM task operations
Notesnotes_list, notes_createNotes on entities
Pipelinespipelines_list, pipelines_get, pipelines_list_statusesPipeline & status info
Associationsassociations_get_linked, associations_link_entitiesEntity relationships
Accountaccount_get, account_list_users, account_list_custom_fieldsAccount metadata
Batchbatch_create_leads, batch_create_contacts, batch_update_leadsBulk operations
Analyticsanalytics_get_events, analytics_get_pipeline_analytics, +1CRM analytics
Unsortedunsorted_list, unsorted_accept, unsorted_rejectUnsorted inbox

Getting amoCRM Credentials

  1. Go to your amoCRM account → SettingsIntegrations
  2. Create a new integration (or use an existing one)
  3. Copy the access token, client ID, and client secret
  4. Your subdomain is the part before .amocrm.ru in your account URL

License

MIT

Reviews

No reviews yet

Sign in to write a review