Skip to main content
Glama
amocrm-mcp

amocrm-mcp

by ilyaberdysh

AmoCRM MCP Server

MCP-сервер для AmoCRM. Подключается к Claude Desktop и даёт Claude прямой доступ к вашей CRM через 17 инструментов.

Задавайте вопросы на русском — Claude сам вызовет нужные API и скомбинирует ответ.

Архитектура

┌──────────────────┐     stdin/stdout      ┌──────────────────┐     HTTPS      ┌──────────────┐
│  Claude Desktop  │ ◄──── MCP Protocol ──► │  amocrm-mcp      │ ◄── REST ───► │  AmoCRM API  │
│  (LLM + UI)      │                        │  (локальный)      │                │  (облако)    │
└──────────────────┘                        └──────────────────┘                └──────────────┘

Как это работает:

  1. Claude Desktop запускает amocrm-mcp как subprocess

  2. MCP-сервер сообщает Claude: "у меня 17 инструментов — get_leads, get_contacts..."

  3. Пользователь пишет вопрос на русском

  4. Claude решает какие инструменты вызвать и в каком порядке

  5. MCP-сервер передаёт запросы в AmoCRM API v4, возвращает JSON

  6. Claude анализирует данные и отвечает пользователю

Внутри MCP-сервера нет ИИ — это прокси между Claude и AmoCRM.

Related MCP server: GoHighLevel MCP Server

Установка

Вариант A: pip (рекомендуется)

pip install amocrm-mcp

Вариант B: из исходников

git clone https://github.com/ilyaberdysh/amocrm-mcp.git
cd amocrm-mcp
pip install -e .

Настройка

1. Создать интеграцию в AmoCRM

  1. AmoCRM → Настройки → Интеграции → Создать интеграцию

  2. Тип: Внешняя интеграция

  3. Redirect URI: https://localhost

  4. Скопировать Client ID и Client Secret

2. Авторизоваться

amocrm-mcp-auth

Или если установлено из исходников:

python3 auth_setup.py

Скрипт спросит:

  • Субдомен — часть URL вашего AmoCRM (например mycompany из mycompany.amocrm.ru)

  • Client ID и Client Secret — из шага 1

  • Redirect URI — по умолчанию https://localhost

  • Auth code — откроется URL, авторизуетесь, скопируете code из URL редиректа

Токены сохранятся в ~/.amocrm/config.json.

3. Подключить к Claude Desktop

Откройте файл конфигурации:

Mac: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

Добавьте:

{
  "mcpServers": {
    "amocrm": {
      "command": "amocrm-mcp"
    }
  }
}

Если установлено из исходников, укажите полный путь:

{"command": "python3", "args": ["/путь/до/amocrm-mcp/server.py"]}

4. Перезапустить Claude Desktop

Cmd+Q (Mac) / Alt+F4 (Windows) → открыть заново.

В чате появится иконка инструментов — amocrm с 17 тулами.

5. Проверить

Покажи мои воронки в AmoCRM

Инструменты (17)

Инструмент

Что делает

get_pipelines

Воронки продаж с этапами и их ID

get_leads

Сделки с фильтрами (менеджер, воронка, статус, даты, сумма)

count_and_sum_leads

Подсчёт и сумма сделок без лимита 200 — для аналитики

get_contacts

Контакты (поиск по имени, email, телефону)

get_companies

Компании

get_users

Пользователи / менеджеры

get_tasks

Задачи (активные/выполненные, сортировка по дедлайну)

get_notes

Примечания к сделкам, контактам, компаниям

get_events

Журнал событий (смена этапов, создание сделок)

get_customers

Покупатели (повторные клиенты)

get_unsorted

Неразобранные заявки

get_catalogs

Каталоги товаров/услуг

get_catalog_elements

Элементы каталогов

get_custom_fields

Пользовательские поля сущностей

get_loss_reasons

Причины отказа

get_tags

Теги

get_sources

Источники трафика

Примеры запросов

Сколько сделок закрыто в феврале 2025?
Сравни продажи за этот и прошлый месяц
Кто из менеджеров закрыл больше всего сделок?
Покажи просроченные задачи Никиты
Сделки на этапе "Переговоры" во всех воронках
Найди сделки дороже 500 000 ₽ в работе
Сколько неразобранных заявок?
Какие кастомные поля есть у сделок?
Причины отказа по проигранным сделкам

Структура проекта

amocrm-mcp/
├── server.py           # MCP-сервер — точка входа, 17 tool definitions
├── amocrm_client.py    # AmoCRM API v4 клиент
│                         - OAuth2 с auto-refresh токенов
│                         - Retry на 429 (rate limit) с backoff 2s/5s/10s
│                         - Пагинация до 10 000 записей
│                         - Обработка пустых ответов API
├── config.py           # Чтение/запись ~/.amocrm/config.json
├── auth_setup.py       # CLI для первичной OAuth2 авторизации
├── pyproject.toml      # Метаданные, зависимости, entry points
└── QA_TEST_PROMPT.md   # QA-промпт для тестирования (10 вопросов)

Токены

  • Хранятся в ~/.amocrm/config.json

  • Обновляются автоматически при каждом запросе

  • Протухают если не использовать > 3 месяцев

  • Если протухли — снова запустите amocrm-mcp-auth

Отладка

# Проверить что сервер запускается
amocrm-mcp
# Если висит без ошибок — ждёт подключения (Ctrl+C для выхода)

# Проверить конфиг
cat ~/.amocrm/config.json

# Логи Claude Desktop
# Mac: ~/Library/Logs/Claude/
# Windows: %APPDATA%\Claude\logs\

Требования

  • Python 3.11+

  • Claude Desktop

  • Аккаунт AmoCRM с правами создания интеграций

Технологии

  • MCP SDK — Model Context Protocol

  • AmoCRM API v4 (OAuth2)

  • Без внешних HTTP-библиотек — urllib из stdlib

Лицензия

MIT

Available Tools

18 tools
count_and_sum_leadsA

Подсчитывает количество и общую сумму сделок по фильтрам БЕЗ лимита в 200 записей. Возвращает {count, total_price, by_pipeline: [{pipeline_id, count, total_price}]}. ИСПОЛЬЗУЙ ЭТОТ ИНСТРУМЕНТ (а не get_leads) для: подсчёта количества сделок, суммы продаж, сравнения периодов, ответов на 'сколько всего сделок'. Параметр exclude_closed=true исключает закрытые сделки (выигранные 142 и проигранные 143) — используй для подсчёта АКТИВНЫХ сделок.

Inputs: pipeline_id, status_ids, responsible_user_ids, created_by, +10 more.

get_catalog_elementsC

Товары или услуги из каталога.

Inputs: catalog_id (required), query, limit.

get_catalogsA

Список каталогов товаров/услуг. Используй чтобы получить catalog_id для get_catalog_elements.

Inputs: no named parameters.

get_companiesC

Поиск и получение компаний.

Inputs: query, responsible_user_ids, created_at_from, created_at_to, +5 more.

get_contactsC

Поиск и получение контактов с фильтрами.

Inputs: query, responsible_user_ids, created_at_from, created_at_to, +5 more.

get_customersC

Покупатели (повторные клиенты / подписки). Используй если в аккаунте включён модуль Покупатели.

Inputs: responsible_user_ids, created_at_from, created_at_to, updated_at_from, +4 more.

get_custom_fieldsA

Кастомные поля сущности — их ID и названия. Используй чтобы понять как фильтровать по ним.

Inputs: entity (required).

get_eventsB

История событий: смена этапов, создание и удаление сделок и контактов. Принимает entity_type как leads/contacts/companies (автоматически конвертируется в формат API).

Inputs: entity_type, event_types, date_from, date_to, +1 more.

get_leadsA

Получает сделки из CRM с фильтрами. Все даты — unix timestamp (секунды). Используй closed_at_from/closed_at_to для фильтра по дате ЗАКРЫТИЯ. date_from/date_to — только для даты СОЗДАНИЯ. Максимум 200 записей за запрос. ВНИМАНИЕ: фильтры price_from/price_to могут конфликтовать с status_ids — для фильтрации активных сделок по цене используй count_and_sum_leads с exclude_closed=true.

Inputs: pipeline_id, status_ids, responsible_user_ids, created_by, +18 more.

get_leads_grouped_by_companyA

Группирует ВСЕ сделки по компаниям и суммирует. Возвращает топ-N компаний по общей сумме (LTV). Пагинирует все сделки на сервере — нет лимита в 200. Используй для LTV-анализа, рейтинга клиентов, поиска топ-компаний для интервью. Подтягивает названия компаний автоматически.

Inputs: pipeline_id, status_ids, responsible_user_ids, exclude_closed, +5 more.

get_loss_reasonsB

Причины отказа по проигранным сделкам.

Inputs: no named parameters.

get_notesB

Заметки и комментарии к сделкам, контактам или компаниям. Содержит записи менеджеров, результаты звонков.

Inputs: entity_type, entity_ids, note_types, created_at_from, +2 more.

get_pipelinesA

Возвращает все воронки продаж с этапами и их ID. Вызывай ПЕРВЫМ когда нужен pipeline_id или status_id для этапа.

Inputs: no named parameters.

get_sourcesC

Источники трафика/лидов.

Inputs: no named parameters.

get_tagsD

Теги для сущности.

Inputs: entity (required).

get_tasksA

Задачи менеджеров. По умолчанию возвращает АКТИВНЫЕ задачи (is_completed=false). Передай is_completed=true для завершённых.

Inputs: responsible_user_ids, is_completed, date_from, date_to, +5 more.

get_unsortedC

Неразобранные заявки — входящие лиды, ещё не попавшие в воронку.

Inputs: pipeline_id, category, limit.

get_usersA

Список менеджеров/пользователей CRM с группами.

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 18 tools

    Disambiguation5/5

    Each tool targets a distinct entity or operation (e.g., leads, contacts, pipelines, tasks). Overlaps like count_and_sum_leads vs get_leads are clearly differentiated in descriptions, leaving no ambiguity for an agent.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (primarily get_*), with only minor variations like count_and_sum_leads and get_leads_grouped_by_company that still adhere to the same style.

    Tool Count4/5

    With 18 tools, the server is slightly above the typical 3-15 range, but the count is justified by the breadth of CRM entities covered (leads, contacts, companies, pipelines, tasks, etc.). It remains well-scoped and not excessive.

    Completeness2/5

    The tool set provides extensive read and aggregation capabilities but lacks any create, update, or delete operations. Critical mutations are missing, which would cause agent failures when trying to modify records.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    • Solk CRM for Claude: accounts, pipeline, visits, quotes, orders and tickets with your permissions.

      https://mcp.solk.app/mcp
    • Create contacts, move deals, send proposals and invoices, read your inbox, from Claude or ChatGPT.

      https://onehub360.com/api/mcp
    • xmagnet — AI-powered B2B CRM for Claude. 35 tools that turn natural-language prompts into real CRM actions: prospect, enrich, score leads, manage deals, scan buying intent, run email campaigns and sequences, build forms and landing pages, refine ICP, and analyze performance — all directly inside Claude. 🚀 ONE-CLICK INSTALL: https://api.xmagnet.ai/claude The install page guides Claude users through 3 steps in under a minute: open Claude Connectors, paste the connector name, paste the server URL, sign in. A reviewer workspace is auto-provisioned on first sign-in with sample contacts, deals, campaigns, and ICP suggestions, so every tool works end-to-end with zero setup. No 2FA. No paid plan required. Free tier exposes all 35 tools. What you can do: • Prospecting — search_contacts, search_companies, search_investors, find_contacts_at_companies, enrich_contact, validate_email, find_competitors, company_intelligence • Pipeline — get_deals_pipeline, scan_deal_intent, get_ghost_pipeline, create_deal • Campaigns & sequences — create_campaign, generate_campaign_content, get_campaign_stats, get_bounce_stats, get_unsub_stats, create_sequence_draft, list_sequences • Top of funnel — suggest_icp, get_icp, create_form, list_forms, create_landing_page, list_landing_pages, show_suggestions • Operations — analyze_contacts, get_contact_details, update_contact, save_contacts_to_crm, export_contacts, get_dashboard_stats, get_credit_balance Example prompts to try: • "Find C-suite contacts at fintech companies that raised Series A in the last 6 months." • "Scan my open deals for buying intent and prioritize follow-ups." • "Generate a re-engagement campaign for contacts who opened my last newsletter but didn't reply." • "Show me my deals pipeline by stage with weighted value and win rate." • "Generate a landing page for my Q2 webinar with a registration form." Built for founders, SDRs, RevOps, and growth teams who want their CRM to take action — not just store records. Install: https://api.xmagnet.ai/claude · Site: https://xmagnet.ai · Privacy: https://xmagnet.ai/privacy-policy · Terms: https://xmagnet.ai/terms-of-service · Support: ashish.sinha@xmagnet.ai

      https://api.xmagnet.ai/mcp
    • Manage your Elocuenti AI sales agents, CRM, campaigns and analytics from Claude.

      https://mcp.elocuenti.com/mcp

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Enables LLMs like Claude to interact with Pipedrive CRM data through a standardized interface, providing 22 tools for managing deals, persons, organizations, activities, and more.
      22
      1
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI agents to interact with amoCRM, providing access to deals, contacts, companies, notes, tasks, and custom fields via natural language.
      13 npm
      MIT