Coordination MCP
Coordination MCP
Coordination MCP — это лёгкий сервис общего рабочего состояния для нескольких ИИ-участников. Через MCP он предоставляет персистентные Ticket, неизменяемые Update и текстовые Artifact, позволяя ChatGPT, локальным ИИ и кодинг-агентам в одном Scope обмениваться, инкрементально синхронизировать и восстанавливать рабочий контекст.
Возможности V0.1
Ticket: сохраняет текущее состояние работы; можно обновлятьtitle,status,artifact_idsиmeta.Update: сохраняет уже произошедшие факты, находки, решения или результаты; в рамках каждогоScopeназначается монотонно возрастающийseq.Artifact: хранит неизменяемое общее текстовое содержимое, например Markdown, логи или длинные документы.Все объекты получают глобально уникальный ID, назначаемый сервером.
Ссылки на
TicketиArtifactдолжны принадлежать одному и тому жеScope.
V0.1 не включает аутентификацию, движок рабочих процессов, подтверждение очереди, граф связей, wake-up-уведомления и поддержку бинарных артефактов.
Related MCP server: Shared Memory MCP Server
Рекомендуемые сценарии использования
Ticketпредставляет текущее изменяемое состояние постоянной работы; это не журнал событий.Updateпредставляет неизменяемые события, которые уже произошли в хронологии работы: например, запрос, вывод, решение или результат.Artifactпредставляет неизменяемое длинное текстовое содержимое; длинные ревью, спецификации или логи кладите вArtifact, а не упаковывайте вUpdate; связь задаётся черезartifact_ids.Поле
created_byдолжно содержать стабильную метку участника, не меняющуюся между запусками и между агентами, напримерchatgptилиpi-local-agent. Не используйте каждый раз случайные или изменяющиеся имена — так принадлежность записей на таймлайн-панели остаётся понятной. Поле используется для определения provenance, а не для authentication.
Типичный цикл ревью выглядит так: локальный агент через Update запрашивает ревью → ChatGPT сохраняет полный ревью в Artifact и через Update возвращает краткое резюме и artifact_ids → локальный агент исправляет код и добавляет итоговый Update → ChatGPT делает повторное ревью.
Быстрый старт
Требования: Node.js 24+.
cd /path/to/coordination-mcp
npm install
npm run build
node dist/main.jsСервис по умолчанию слушает:
http://127.0.0.1:3000/mcpТакже можно запустить dev-версию напрямую:
npm run devСервис привязывается только к 127.0.0.1. Если нужен доступ для удалённого ChatGPT, открывайте MCP endpoint через безопасный туннель и не выставляйте Node.js-сервис напрямую в публичный интернет. В V0.1 аутентификации пока нет.
Конфигурация
Приоритет конфигурации (от низкого к высокому):
代码默认值 < config/default.yml < ~/.coordination-mcp/config.yml < --profile < 环境变量Пользовательская конфигурация
Создайте пользовательскую конфигурацию:
mkdir -p ~/.coordination-mcp
$EDITOR ~/.coordination-mcp/config.ymlПример:
port: 43721
allowedHosts:
- 127.0.0.1
- localhost
# dataDirectory: /absolute/path/to/coordination-data~/.coordination-mcp/config.yml необязателен и не создаётся сервисом автоматически. Если dataDirectory не задан, по умолчанию используется:
~/.coordination-mcp/dataРекомендуется указывать dataDirectory абсолютным путём. Относительный путь будет резолвиться относительно current working directory на момент запуска процесса.
Profile
Путь профиля резолвится относительно current working directory; после указания файл должен существовать:
node dist/main.js --profile config/local.yml
node dist/main.js --profile=/absolute/path/to/local.ymlПрофиль перекрывает только те поля, которые в нём объявлены; не объявленные в нём поля продолжают наследоваться из предыдущей конфигурации.
Переменные окружения
PORT=43721 \
COORDINATION_DATA_DIR=/absolute/path/to/data \
COORDINATION_ALLOWED_HOSTS=127.0.0.1,localhost \
node dist/main.jsПоддерживаемые переменные окружения:
Переменная | Описание |
| HTTP-порт, диапазон от |
| Каталог данных |
| Разрешённые |
Конфигурационный файл считывается только при запуске сервиса; после его изменения нужно перезапустить main.js.
MCP Tools
Сервис предоставляет следующие 8 tools через POST /mcp:
Tool | Назначение |
| список Tickets в |
| чтение одного Ticket |
| создание Ticket |
| обновление изменяемых полей Ticket |
| инкрементальное чтение Updates по |
| добавить неизменяемый Update |
| создать неизменяемый текстовый Artifact |
| чтение одного Artifact |
Пример инициализации MCP
curl -N \
-H 'Accept: application/json, text/event-stream' \
-H 'Content-Type: application/json' \
-H 'mcp-protocol-version: 2025-03-26' \
-X POST http://127.0.0.1:3000/mcp \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {
"name": "manual-client",
"version": "0.1.0"
}
}
}'Пример создания Ticket
Пример параметров для tools/call:
{
"name": "create_ticket",
"arguments": {
"scope": "coordination-mcp",
"title": "Review the MCP integration",
"created_by": "local-ai",
"status": "open",
"meta": {
"priority": "high"
}
}
}Хранение данных
Каталог данных по умолчанию создаётся по требованию; только старт сервиса или выполнение операций чтения каталог данных не создают. При первой записи Ticket, Update или Artifact создаётся структура, похожая на следующую:
~/.coordination-mcp/
├── config.yml # 可选用户配置
└── data/
└── scopes/
└── <base64url-scope>/
├── tickets/
│ └── T-*.json
├── updates.jsonl
└── artifacts/
└── A-*.jsonДля каждого Ticket и Artifact используется отдельный pretty-printed JSON-файл.
Updates одного
Scopeхранятся в файле формата JSONL с append-only записью; при чтении игнорируется последняя повреждённая хвостовая запись без перевода строки, которую невозможно разобрать, но повреждение JSON в записях, корректно завершённых переводом строки, не скрывается.Новые каталоги создаются с правами
0700, новые файлы данных — с правами0600.V0.1 использует мьютекс на
Scopeвнутри одного процесса; межпроцессные блокировки и распределённое развёртывание не поддерживаются.
Разработка и проверка
npm test
npm run check
npm run buildДокументация проекта
Archived implementation architecture# Coordination MCP
Coordination MCP — это лёгкий сервис общего рабочего состояния для нескольких ИИ-участников. Через MCP он предоставляет персистентные Ticket, неизменяемые Update и текстовые Artifact, позволяя ChatGPT, локальным ИИ и кодинг-агентам в одном Scope делиться, инкрементально синхронизировать и восстанавливать рабочий контекст.
Возможности V0.1
Ticket: сохраняет текущее состояние работы; можно обновлятьtitle,status,artifact_idsиmeta.Update: сохраняет уже произошедшие факты, находки, решения или результаты; в рамках каждогоScopeим назначается монотонно возрастающийseq.Artifact: хранит неизменяемое общее текстовое содержимое, например Markdown, логи или длинные документы.Все объекты получают глобально уникальный ID, назначаемый сервером.
Ссылки на
TicketиArtifactдолжны принадлежать одному и тому жеScope.
V0.1 не включает аутентификацию, движок рабочих процессов, подтверждение очереди, граф связей, wake-up-уведомления и поддержку бинарных артефактов.
Рекомендуемые сценарии использования
Ticketпредставляет текущее изменяемое состояние текущей работы; это не журнал событий.Updateпредставляет неизменяемые события, которые уже произошли в хронологии работы: например, request, finding, decision или result.Artifactпредставляет неизменяемое длинное текстовое содержимое; длинные review, спецификации или логи следует помещать вArtifact, а не втискивать вUpdate; связь задаётся черезartifact_ids.В
created_byследует использовать стабильную метку участника, которая не меняется между запусками и между агентами, напримерchatgptилиpi-local-agent, а не случайные или изменяющиеся имена — это сохраняет ясную принадлежность записей в хронологии. Поле используется для определения provenance, а не для authentication.
Типичный цикл review: локальный ИИ-агент запрашивает review через Update → ChatGPT сохраняет полный review как Artifact и возвращает через Update краткое резюме и artifact_ids → локальный ИИ-агент исправляет код и добавляет итоговый Update → ChatGPT повторно делает review.
Быстрый старт
Требования: Node.js 24+.
cd /path/to/coordination-mcp
npm install
npm run build
node dist/main.jsСервис по умолчанию слушает:
http://127.0.0.1:3000/mcpТакже можно запустить dev-версию напрямую:
npm run devСервис привязывается только к 127.0.0.1. Если нужен доступ для удалённого ChatGPT, следует открывать MCP endpoint через безопасный туннель и не выставлять Node.js service напрямую в публичную сеть. В V0.1 аутентификация пока не предусмотрена.
Конфигурация
Приоритет конфигурации (от низкого к высокому):
代码默认值 < config/default.yml < ~/.coordination-mcp/config.yml < --profile < 环境变量Пользовательская конфигурация
Создайте пользовательскую конфигурацию:
mkdir -p ~/.coordination-mcp
$EDITOR ~/.coordination-mcp/config.ymlПример:
port: 43721
allowedHosts:
- 127.0.0.1
- localhost
# dataDirectory: /absolute/path/to/coordination-data~/.intro-config.yml является необязательным и не создаётся сервисом автоматически. Если dataDirectory не задан, по умолчанию используется:
~/.coordination-mcp/dataРекомендуется указывать dataDirectory в виде абсолютного пути. Относительный путь будет разрешаться относительно current working directory на момент запуска процесса.
Profile
Путь к профилю разрешается относительно current working directory; при указании файл должен существовать:
node dist/main.js --profile config/local.yml
node dist/main.js --profile=/absolute/path/to/local.ymlПрофиль переопределяет только те поля, которые в нём объявлены; не объявленные поля продолжают наследовать из предыдущей конфигурации.
Переменные окружения
PORT=43721 \
COORDINATION_DATA_DIR=/absolute/path/to/data \
COORDINATION_ALLOWED_HOSTS=127.0.0.1,localhost \
node dist/main.jsПоддерживаемые переменные окружения:
Переменная | Описание |
| HTTP-порт, диапазон от |
| Каталог данных |
| Разрешённые |
Конфигурационный файл считывается только при запуске сервиса; после изменения его нужно перезапускать main.js.
MCP Tools
Сервис предоставляет следующие 8 tools через POST /mcp:
Tool | Назначение |
| список Tickets в указанном |
| чтение одного Ticket |
| создание Ticket |
| обновление изменяемых полей Ticket |
| инкрементальное чтение Updates по |
| добавление неизменяемого Update |
| создание неизменяемого текстового Artifact |
| чтение одного Artifact |
Пример инициализации MCP
curl -N \
-H 'Accept: application/json, text/event-stream' \
-H 'Content-Type: application/json' \
-H 'mcp-protocol-version: 2025-03-26' \
-X POST http://127.0.0.1:3000/mcp \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {
"name": "manual-client",
"version": "0.1.0"
}
}
}'Пример создания Ticket
Пример параметров для tools/call:
{
"name": "create_ticket",
"arguments": {
"scope": "coordination-mcp",
"title": "Review the MCP integration",
"created_by": "local-ai",
"status": "open",
"meta": {
"priority": "high"
}
}
}Хранение данных
Каталог данных по умолчанию создаётся по требованию; только запуск сервиса или выполнение операций чтения не создают каталог данных. При первой записи Ticket, Update или Artifact создаётся структура, подобная следующему формату:
~/.coordination-mcp/
├── config.yml # 可选用户配置
└── data/
└── scopes/
└── <base64url-scope>/
├── tickets/
│ └── T-*.json
├── updates.jsonl
└── artifacts/
└── A-*.jsonTicket и Artifact хранятся в отдельных pretty-printed JSON-файлах.
Updates одного
Scopeхранятся в append-only JSONL-файле; при чтении игнорируется последняя повреждённая запись без перевода строки, которую невозможно разобрать, но повреждение JSON в записях, завершённых полным переводом строки, не скрывается.Новые каталоги создаются с правами
0700, новые файлы данных — с правами0600.V0.1 использует мьютекс на
Scopeв рамках одного процесса; не поддерживаются межпроцессные блокировки или распределённое развёртывание.
Разработка и проверка
npm test
npm run check
npm run buildДокументация проекта
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides persistent context synchronization and memory management for AI agents across sessions and projects, including file indexing, bug tracking, spatial navigation, and agent-to-agent handoff coordination.113MIT
- AlicenseBqualityCmaintenanceProvides a shared context layer for AI agent teams to improve token efficiency through context deduplication and incremental state sharing. It enables multiple agents to coordinate tasks, share real-time discoveries, and manage dependencies while significantly reducing redundant data transmission.1507MIT
- AlicenseCqualityCmaintenanceCaptures key development moments, enables multi-agent traceability, provides intelligent context curation, and facilitates seamless agent-to-agent handoffs.2917MIT
- AlicenseNot gradedqualityCmaintenanceGives AI agents persistent memory, handoffs, and shared context across sessions, enabling seamless continuity and multi-agent collaboration.6668Inno Setup
Related MCP Connectors
Durable agent-to-agent handoffs and shared scratchpad for multi-agent workflows.
Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.
Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/limars874/coordination-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server