Kontur Diadoc
БесплатноНе проверенMCP server for Kontur.Diadoc — electronic document interchange, EDI (Russia)
Описание
MCP server for Kontur.Diadoc — electronic document interchange, EDI (Russia)
README
Если вы искали, как подключить Диадок к нейросети, достать счета-фактуры и УПД из ЭДО не кликая по кабинету или подписать документ из чата — это оно. 12 инструментов: поиск контрагентов по ИНН, список и содержимое документов, отправка и подписание (счета-фактуры, акты, УПД, ТОРГ-12 и др.). Пишете «покажи входящие УПД за март» — получаете список, а не инструкцию, куда нажать.
MCP server for Kontur.Diadoc electronic document interchange (EDI). Search organizations and counterparties, list/fetch documents, send and sign them — straight from your AI assistant.
Инструменты / Tools
| Tool | Назначение | Ключевые параметры |
|---|---|---|
authenticate |
Проверить аутентификацию, вернуть превью токена | — |
list_organizations |
Поиск организаций по ИНН/КПП | inn (обяз.), kpp, include_relations |
get_organization |
Детали организации | один из: org_id / box_id / inn (+kpp) |
list_documents |
Список документов в ящике с фильтрами и пагинацией | box_id, filter_category, timestamp_from/to, count, after_index_key |
get_document |
Конкретный документ | box_id, message_id, entity_id, inject_entity_content |
send_document |
Отправить документ контрагенту | from_box_id, to_box_id, type_named_id, content_base64, signature_base64? |
sign_document |
Подписать входящий документ | box_id, message_id, entity_id, signature_base64? / sign_with_test_signature? |
list_counterparties |
Список контрагентов | box_id (myBoxId), counteragent_status, query, page_size |
Установка / Install
Claude Desktop / Cline / Cursor
{
"mcpServers": {
"kontur-diadoc": {
"command": "npx",
"args": ["-y", "@theyahia/kontur-diadoc-mcp"],
"env": {
"DIADOC_API_CLIENT_ID": "<YOUR_DEVELOPER_KEY>",
"DIADOC_LOGIN": "<YOUR_LOGIN>",
"DIADOC_PASSWORD": "<YOUR_PASSWORD>"
}
}
}
}
Переменные окружения / Environment variables
| Variable | Обяз. | Описание |
|---|---|---|
DIADOC_API_CLIENT_ID |
да | Ключ разработчика (ddauth_api_client_id), выдаётся при регистрации для доступа к API |
DIADOC_LOGIN |
да | Логин учётной записи Diadoc |
DIADOC_PASSWORD |
да | Пароль учётной записи Diadoc |
DIADOC_BASE_URL |
нет | Альтернативный хост API (напр. песочница). По умолчанию https://diadoc-api.kontur.ru |
⚠️ Изменение совместимости (v1.1.0): ключ разработчика теперь читается из
DIADOC_API_CLIENT_ID. Старое имяDIADOC_CLIENT_IDвсё ещё принимается как fallback. Прежняя переменнаяDIADOC_API_KEYбольше не требуется (раньше она читалась, но никуда не отправлялась).
Как получить доступ / Getting credentials
- Зарегистрируйте приложение и получите ключ разработчика (
ddauth_api_client_id) на портале разработчика Контура. - Используйте логин и пароль вашей учётной записи Diadoc.
- Для экспериментов запросите доступ к тестовому контуру (песочнице) и укажите его хост
в
DIADOC_BASE_URL.
Основные понятия / Key concepts
- box_id — идентификатор «ящика» организации в Diadoc; адресат отправки и контекст большинства операций.
- ИНН/КПП — проверяются на формат (ИНН 10 или 12 цифр, КПП 9 цифр) до обращения к API.
- filter_category — обязательный фильтр в
list_documents, формат<DocumentType>.<DocumentClass><Status>, напр.Any.Inbound,Any.InboundNotFinished,XmlTorg12.OutboundWithRecipientSignature. - Пагинация — курсорная: ответ содержит ключ, который передаётся в
after_index_keyследующего запроса (count0–100). Сдвиг поoffsetDiadoc не использует. - Время —
timestamp_from/timestamp_toпринимаются как ISO-8601 и автоматически конвертируются в .NET-тики (timestampFromTicks/timestampToTicks), которых ждёт API.
Подписание документов / Signing — важно
Diadoc API не создаёт криптографическую подпись сам. Боевую подпись (КЭП, формат CAdES/PKCS#7) формирует клиент — например, через КриптоПро CSP — и передаёт её сюда в base64:
send_document— полеsignature_base64(можно опустить для неподписанных/неформализованных документов: тогда отправляется только содержимое).sign_document— полеsignature_base64; либоsign_with_test_signature: trueдля тестовой подписи в песочнице (в проде не работает).
Генерация самой подписи — вне зоны ответственности этого сервера. Он корректно формирует структуру запроса (
DocumentAttachments/SignedContentдля отправки,Signaturesдля подписания) и прокидывает вашу подпись в Diadoc.
Обработка ошибок / Error handling
Ошибки API (HTTP-статус и тело ответа Diadoc) возвращаются как результат инструмента с флагом
isError: true и понятным текстом, а не роняют сессию. Клиент сам делает:
повтор с экспоненциальной задержкой на 429/5xx, одну прозрачную ре-аутентификацию на 401,
таймаут 15 с на запрос.
Примеры запросов / Demo prompts
- «Найди организацию по ИНН 7707083893 в Diadoc»
- «Покажи входящие неподписанные документы за этот месяц»
- «Открой документ по message_id … и entity_id …»
- «Отправь неформализованный документ контрагенту box-456»
- «Подпиши входящий акт тестовой подписью (песочница)»
- «Список моих контрагентов со статусом IsMyCounteragent»
Разработка / Development
npm install
npm run dev # запуск из исходников (tsx)
npm run build # компиляция в dist/
npm test # vitest
npm run typecheck # tsc --noEmit
npm run lint # biome check .
npm run format # biome check --write . (автоформат + фиксы)
Справочник API / API reference
Документация: developer.kontur.ru/doc/diadoc-api
Лицензия / License
MIT
Установка Kontur Diadoc
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/theYahia/kontur-diadoc-mcpFAQ
Kontur Diadoc MCP бесплатный?
Да, Kontur Diadoc MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Kontur Diadoc?
Нет, Kontur Diadoc работает без API-ключей и переменных окружения.
Kontur Diadoc — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Kontur Diadoc в Claude Desktop, Claude Code или Cursor?
Открой Kontur Diadoc на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
Roblox Studio
Enables AI coding tools to control Roblox Studio for workspace exploration, instance manipulation, and script management. It provides tools for playtesting, sce
автор: paralovOpencode Omniroute Plugin
OpenCode plugin for the OmniRoute AI Gateway. Drives dynamic model discovery, /connect auth flow, and multi-instance OmniRoute providers via the official @openc
автор: GitHub ActionsAWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzMCP-Agent
A simple, composable framework to build agents using Model Context Protocol by [LastMile AI](https://www.lastmileai.dev)
автор: lastmile-aiSpring AI MCP Client
Provides auto-configuration for MCP client functionality in Spring Boot applications.
mcp.natoma.ai
A Hosted MCP Platform to discover, install, manage and deploy MCP servers by [Natoma Labs](https://www.natoma.ai)
MCPHub
Website to list high quality MCP servers and reviews by real users. Also provide online chatbot for popular LLM models with MCP server support.
Compare Kontur Diadoc with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
