manifestation-mcp
manifestation-mcp
Это MCP-сервер, который делает агента кодинга нацеленным на проектирование. В тот момент, когда you want now what to build, he does not врусается в код — он отступает шаг назад и расспрашивает вас, вытягивает ** спецификацию и показывает её обратно удобоваримыми куссками, Turning your подтверждение into компактный красно-зелёный TDD-план, and then generil GOD? [everything]. Actually, let me rethink.
I need to stop overthinking and just produce a clean translation. Let me write from scratch:
manifestation-mcp
MCP-сервер, который делает агента кодинга ориентированным на проектирование. Как только вы хотите что-то собрать, он не бросается в код — он делает шаг назад, расспрашивает вас, выуживает спецификацию и показывает её вам удобоваримыми кусками, превращает ваше одобрение в небольшой красно-зелёный TDD-план, а затем запускается виситейн.цикл разработки на субагентах (исполнитель → ревьюер → гейт качества), который может сам по себе проработать по этому плану.
Это портатый Python MCP-сервер: сервер — это мозг (пятифазный конечный автомат + вашаспец + план/план + библиотека навков), и он виз ownown суafGents внуéтри through Claude Agent SDK — поэтому один выз of run может работать автономно продлжительное время, не отклоняясь от плана.
Пять фаз
DISCOVERY → interview you; do NOT write code
SPEC → draft a spec; sign off chunk-by-chunk
PLAN → bite-sized red/green TDD task list (YAGNI, DRY)
EXECUTE → per task: implementer subagent → reviewer subagent → gate
DONE → artifacts left under .manifestation/ in your repoRelated MCP server: Spec Guard
Состояние живёт в файлах, которые можно осмотреть, в целевом репозитории: `/.manifestation/ ...
Wait, "inspected files" can المراج": "àзаметрйте".
Hmm, wait — actually "State in the target repo" — "Соstatic" should be translated.
OK final:
Состояние живёт в просматриваемых файлах целевого репозитория: <repo>/.manifestation/<project-id>/{state.json, spec.md, plan.md}.
Требования
...
OK I'll now just write it out formally in the response. Let me produce final carefully.
I must not include a "code fence" wrapper. Only the final text.# manifestation-mcp
MCP-сервер, который делает агента кодинга нацеленным на проектирование. В тот момент, когда вы хотите что-то построить, он не бросается в код — он делает шаг назад, расспрашивает вас, вытаскивает спецификацию и показывает её обратно удобоваримыми порциями, превращает ваше подтверждение в компактный красно-зелёный TDD-план, а затем запускает цикл разработки на су́багентах (исполнитель → ревьюер → контроль качества) which может сам от начала до конца пройти весь план.
Это портируемый Python MCP-сервер: сервер — это мозг (пятифазный конечный автомат + ваша спецификация/план + библиотека навков), и он сам запускает свой су́багентов внутри чере Claude Agent SDKC — поэтому один вызва run может рабоготь автономно длительное время, не отступая от плана.
Пять фаз
DISCOVERY → interview you; do NOT write code
SPEC → draft a spec; sign off chunk-by-chunk
PLAN → bite-sized red/green TDD task list (YAGNI, DRY)
EXECUTE → per task: implementer subagent → reviewer subagent → gate
DONE → artifacts left under .manifestation/ in your repoСостояние живёт в просматриваемых файлах целевого репозитория:
<repo>/.manifestation/<тельно-ид>/{state.json, spec.md, plan.md}.
Требования
Python 3.10+
uv(brew install uv)Для жвой выполнее (
run): Claude Code CLI в вашемPATHи учётные данные Claude (ANTHROPIC_API_KEYили сущestвyещий вход в Claude Code). Agent SDK управляет им для запуска изполнотшных и зации су́багентов.gitв целечом репозитории — TDD-гейт,git worktree, чтобы уже подтвердить, что real fail тест былей до реализации.
Установка
cd manifestation-mcp
uv sync
uv run pytest # 96 tests, no network required (1 live smoke skipped)Запуск
Рекомендуемый локалный лаунчер (усто́йчив у особенности редактируемой установки uv):
uv run python run_server.pyЗарегистрируйте его в Claude Code:
claude mcp add manifestation -- uv run --project /ABS/PATH/TO/manifestation-mcp python /ABS/PATH/TO/manifestation-mcp/run_server.py(Для пакуетной установки черez uvx/pipx консоль такой скрипт равотает напрямую.)
Автозапуск (опционально)
Скопируйте skill-shim/SKILL.md в свои навыки Claude Code (например,
~/.claude/skills/manifestation/SKILL.md). Его описание срабатывает на
фразах «build / implement / add a feature», так что рабочий процесс запускается
сам — вам ничего не нужно вызывать. Если он не установлен, запустите вручную
промптом /manifestation или вызовом инструмента start_project.
Инструменты
Инструмент | Что делает |
| Создаёт проект (проверяет путь к репозиторию); возвращает вопросы для интервью. |
| Принимает ответы; задаёт дополнительные вопросы или переходит к SPEC. |
| Следующая удобоваримая порция спецификации для ревью (ограничена по размеру). |
| принимает |
| Генерирует TDD-план с учётом репозитория; возвращает полные текста задач. Не запускает выполнение. |
| Фиксирует подтверждение пользователя и переходит к EXECUTE. |
| Цикл на субагентах с проверяемым сервером TDD-гейтом; контрольные точки после каждого шага; транслирует прогресс; сообщает |
| Разблокирует задачу BLOCKED, чтобы |
| Показывает прогресс (попытки по задачам, замечания, состояние подтверждения). |
Промпт: /manifestation <brief>. Ресурсы: skills://all, skill://<name>.
Выбор модели
Ничто не жёстко привязано к устаревшей модели. По умолчанию сервер наследует модель, с которой настроен Claude Code CLI. Переопределить глобально можно через переменную окружения
MANIFESTATION_MODEL (например, MANIFESTATION_MODEL=claude-opus-5) или в коде для конкретного вызова через AgentSDKClient(model=...).
Модель безопасности (прочитайте перед использованием run)
run запускает настоящие субагентов в вашем репозитории, поэтому понимайте границу доверия:
Исполнитель получает право записи +
Bash. Это по дизайну произвольное выполнение кода в целевой репозитории — запускайте его только в доверенных репозиториях, а для недоверенного кода используйте контейнер/VM. Песочницы нет.Ревьюер и планировщик ограничены только чтением двумя способами: изменяющие инструменты перечислены в
disallowed_toolsSDK, и колбэкcan_use_toolотклоняет каждый инструмент, которого нет в их списке разрешённых — это покрывает и средстве, которые мы не перечисляли (WebFetch, Task, MCP tools). Безопасно даже в недоверенном репозитории.TDD проверяется сервером, а не текстом. После запуска исполнителя сервер сам выполняет объявленную в задаче команду тестов: она должна проходить на
HEAD(реальный GREEN) и должна падать при повторном запуске против коммита только с тестами (HEAD~1) в одноразовом git worktree (реальный RED). Фабричные или переставленные следующие события ловятся; при невозможности подтверждения со стороны git/теورش system закрывается с ошибкой.Вердикт PASS с любыми сопутствующими замечаниями считается противоречием и проваливает задачу.
runтребует утверждённый план, контрольные точки после каждого шага (при упавшей попытке он продолжается с шага ревью, а не запускает исполнителя заново — поэтому праветки не дублируются), сохраняет полный журнал аудита и всегда ограничен:max_agent_calls**/max_budget_usd(оба через MCP) или встроенным limitом по умолчанию.Изменяющие вызовы инструментов сериализуются для каждого проекта внутрипроцессной блокировкой и межпроцессной файловой блокировкой.
Внедрение через
brief/answers/specзависит потоки данных в промпты субагентов — относитесь к входным данным проекта как к недоверенным.
Как он остаётся честным (и тестируемым)
Каждое взаимодействие с LLM проходит через одну готовую к инъекции точку (LLMClient). Юниты-тесты подставляют FakeLLMClient, поэтому весь конечный автомат — разведка, разбивание спецификаторы, генерация плана и элемент execute с всё и ревью-гейтами — проверен вообще без сетевых вызовов. Реальный AgentSDKClient находится за этим соединением и используется только в опциональном live smoke-тесте.
Архитектура
src/manifestation_mcp/
server.py # MCP tools/prompts/resources (thin wiring)
state.py # Project/Phase/Task model + file persistence + registry
llm.py # LLMClient seam: FakeLLMClient (tests) + AgentSDKClient (real)
agents.py # implementer / reviewer / planner subagent presets
runner.py # CommandRunner seam: SubprocessRunner (real) + FakeCommandRunner
phases/ # discovery, spec, plan, execute, verify (server-side TDD check)
skills/ # bundled Markdown skills, injected into subagent prompts
run_server.py # bulletproof local launcher
skill-shim/ # optional Claude Code auto-trigger skillMaintenance
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 gradedqualityCmaintenanceA methodology and MCP server for agent-driven software development where humans write specs and agents implement code, enforced by six mechanical gates to ensure spec validity, contracts, tests, and review.9MIT
- AlicenseNot gradedqualityCmaintenanceAn autonomous task decomposition and execution agent that plans, executes, verifies, and commits code changes for engineering goals.MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI coding agents to plan, build, and review websites and product interfaces with a persistent, user-led process, including design direction, component contracts, and implementation review.
Related MCP Connectors
Design intelligence for coding agents: audits, design systems, and a taste profile agents consult.
Adaptive plan/build/review cycles for AI coding assistants, persisted across sessions.
Design spec + milestones AI coding agents read before building; drift flagged, changes reviewed.
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/aiarghya1/manifestation-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server