Skip to main content
Glama

ForgeSpec MCP

Координационный фундамент для мультиагентной ИИ-разработки. ForgeSpec MCP — это сервер Model Context Protocol, который привносит структурированные, проверяемые рабочие процессы в разработку программного обеспечения с помощью ИИ посредством разработки на основе спецификаций (SDD).


Почему ForgeSpec?

Создание программного обеспечения с помощью нескольких ИИ-агентов (Claude, Codex, Gemini и т. д.) создает проблемы координации, которых не существует в одноагентных рабочих процессах:

Проблема

Без ForgeSpec

С ForgeSpec

Конфликтующие правки

Два агента одновременно изменяют один и тот же файл, вызывая конфликты слияния и потерю работы

Система резервирования файлов с TTL предотвращает конфликты до их возникновения

Нет общего контекста

Каждый агент работает изолированно; решения одного агента невидимы для других

Проверка контрактов создает общий аудиторский след на всех этапах

Неструктурированная работа

Агенты сразу переходят к коду без спецификаций, создавая несогласованные результаты

9-этапный конвейер обеспечивает поток: предложение -> спецификация -> проектирование -> реализация

Потеря прогресса

Если агент терпит неудачу в середине задачи, нет способа возобновить работу с того места, где он остановился

Доска задач на базе SQLite сохраняет состояние; любой агент может продолжить работу с того места, где остановился другой

Нет шлюзов качества

Код поставляется без проверки на соответствие исходным требованиям

Пороги уверенности блокируют переходы между этапами до тех пор, пока не будут выполнены критерии качества

Ключевые преимущества

  • Нулевая инфраструктура -- Встроенная база данных SQLite, никаких внешних сервисов не требуется

  • Универсальная совместимость -- Работает с любым клиентом MCP: Claude Code, Codex CLI, Gemini CLI, OpenClaw и другими

  • Мгновенная настройка -- Одна команда для запуска: npx -y forgespec-mcp

  • Проверенный в боях конвейер -- 9 этапов с порогами уверенности предотвращают преждевременные переходы между этапами

  • Аудиторский след -- Каждый контракт, переход задачи и резервирование файла регистрируются с отметками времени

  • Кроссплатформенность -- Протестировано на Ubuntu, Windows и macOS с Node 18, 20 и 22

  • Готовность к Cortex -- Нативная интеграция с Cortex для постоянной памяти и графа знаний между сессиями


Related MCP server: Specky

Рекомендуется: использовать в паре с Cortex

ForgeSpec управляет рабочим процессом (контракты, задачи, блокировки файлов). Cortex управляет памятью (наблюдения, граф знаний, непрерывность сессии). Вместе они образуют полный стек координации мультиагентных систем:

┌─────────────────────────────────────────────────────┐
│                   MCP Clients                       │
│   Claude Code  ·  Codex CLI  ·  Gemini CLI  · ...  │
└──────────┬──────────────────────────┬───────────────┘
           │                          │
     ┌─────▼─────┐            ┌──────▼──────┐
     │ ForgeSpec  │            │   Cortex    │
     │  MCP       │◄──────────►│   MCP       │
     │            │  artifact  │             │
     │ Contracts  │  type:     │ Observations│
     │ Task Board │  "cortex"  │ Knowledge   │
     │ File Locks │            │ Graph       │
     └────────────┘            └─────────────┘
  • ForgeSpec проверяет и сохраняет контракты SDD, управляет зависимостями задач, предотвращает конфликты файлов

  • Cortex сохраняет артефакты как наблюдения, связывает их через граф знаний, обеспечивает восстановление сессии

  • Артефакты, сохраненные с type: "cortex", сохраняются в Cortex через mem_save и связываются с помощью mem_relate

Установите оба для полноценного использования:

claude mcp add forgespec --transport stdio -- npx -y forgespec-mcp
claude mcp add cortex --transport stdio -- npx -y @anthropic/cortex-mcp

ForgeSpec работает автономно без Cortex -- артефакты также могут использовать type: "openspec" (файловая система) или type: "inline" (возвращаются в ответе).


Быстрый старт

Использование npx (установка не требуется)

npx -y forgespec-mcp

Глобальная установка

npm install -g forgespec-mcp

Проверка установки

forgespec-mcp --help

Конфигурация клиента

Claude Code

claude mcp add forgespec --transport stdio -- npx -y forgespec-mcp

Codex CLI (~/.codex/config.toml)

[mcp_servers.forgespec]
command = "npx"
args = ["-y", "forgespec-mcp"]

Gemini CLI (settings.json)

{
  "mcpServers": {
    "forgespec": {
      "command": "npx",
      "args": ["-y", "forgespec-mcp"]
    }
  }
}

OpenClaw (openclaw.json)

mcp: {
  servers: {
    forgespec: { command: "npx", args: ["-y", "forgespec-mcp"] }
  }
}

Конвейер SDD

ForgeSpec обеспечивает жизненный цикл разработки на основе спецификаций (Spec-Driven Development) — 9-этапный конвейер, который гарантирует, что ИИ-агенты работают методично, а не сразу переходят к написанию кода.

Каждый этап имеет порог уверенности, который должен быть достигнут перед переходом к следующему:

Этап

Порог

Цель

init

0.5

Начальная настройка контекста проекта и соглашений

explore

0.5

Исследование кодовой базы, диагностика проблем

propose

0.7

Подготовка предложения по изменениям с указанием объема и рисков

spec

0.8

Написание подробных спецификаций с использованием Given/When/Then

design

0.7

Определение архитектуры, потоков данных, изменений файлов

tasks

0.8

Декомпозиция на задачи реализации, упорядоченные по зависимостям

apply

0.6

Выполнение реализации (допускается частичное завершение)

verify

0.9

Проверка реализации на соответствие спецификациям

archive

0.9

Объединение спецификаций, создание ретроспективы


Справочник инструментов

ForgeSpec предоставляет 15 инструментов MCP, организованных в три категории.

Инструменты контрактов SDD (5)

Управляйте жизненным циклом разработки с помощью типизированных, проверенных контрактов.

Инструмент

Описание

sdd_validate

Проверка контракта на соответствие схеме этапа с проверкой уверенности

sdd_save

Проверка и сохранение контракта в базу данных

sdd_get

Получение одного контракта по ID

sdd_list

Список контрактов с дополнительными фильтрами по проекту/этапу

sdd_history

Получение истории переходов между этапами для проекта

Инструменты доски задач (8)

Управление задачами на базе SQLite с отслеживанием зависимостей и автоматической разблокировкой.

Инструмент

Описание

tb_create_board

Создание доски с дополнительными встроенными задачами (атомарно, позволяет избежать N отдельных вызовов)

tb_add_task

Добавление задачи с приоритетом, ссылкой на спецификацию, критериями и зависимостями

tb_status

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

tb_claim

Взятие задачи в работу (проверяет зависимости перед назначением)

tb_update

Обновление статуса и/или добавление заметок с отметкой времени (автоматически разблокирует зависимые задачи при завершении)

tb_unblocked

Список задач, готовых к работе (все зависимости разрешены)

tb_get

Получение полных сведений о задаче по ID

tb_list_boards

Список всех досок (для обнаружения после потери контекста)

Инструменты резервирования файлов (2)

Рекомендательная блокировка файлов для предотвращения конфликтов правок между агентами.

Инструмент

Описание

file_reserve

Резервирование файлов/глобов с TTL. Используйте check_only: true для проверки конфликтов без резервирования

file_release

Освобождение резервирований (конкретных шаблонов или всех)


Примеры использования

Пример 1: Проверка и сохранение контракта SDD

ИИ-агент, завершающий этап "propose", сохраняет свою работу как проверенный контракт:

// Tool: sdd_validate
{
  "contract": "{\"phase\":\"propose\",\"change_name\":\"add-auth-service\",\"project\":\"my-app\",\"status\":\"success\",\"confidence\":0.85,\"executive_summary\":\"Add JWT-based authentication service with login, logout, and token refresh endpoints. Affects 4 files in src/auth/.\",\"artifacts_saved\":[{\"topic_key\":\"sdd/add-auth-service/proposal\",\"type\":\"cortex\"}],\"next_recommended\":[\"spec\",\"design\"],\"risks\":[{\"description\":\"Token storage strategy needs security review\",\"level\":\"medium\"}]}"
}

// Response:
{
  "valid": true,
  "phase": "propose",
  "confidence": 0.85,
  "threshold": 0.7,
  "meets_confidence": true,
  "allowed_next_phases": ["spec", "design", "init"],
  "warnings": []
}
// Tool: sdd_save (after validation)
{
  "contract": "{\"phase\":\"propose\",\"change_name\":\"add-auth-service\",\"project\":\"my-app\",\"status\":\"success\",\"confidence\":0.85,\"executive_summary\":\"Add JWT-based authentication service...\",\"next_recommended\":[\"spec\",\"design\"],\"risks\":[]}"
}

// Response:
{
  "saved": true,
  "id": "sdd_a1b2c3d4-...",
  "phase": "propose",
  "project": "my-app"
}

Пример 2: Создание доски задач и управление задачами

Настройте доску, добавьте задачи с зависимостями и позвольте агентам брать работу:

// Step 1: Create a board
// Tool: tb_create_board
{ "project": "my-app", "name": "add-auth-service" }
// -> { "created": true, "board_id": "board_x7k9m2...", "project": "my-app" }

// Step 2: Add tasks with dependencies
// Tool: tb_add_task
{
  "board_id": "board_x7k9m2...",
  "title": "Create JWT utility module",
  "description": "Implement sign, verify, and refresh token functions",
  "priority": "p0",
  "spec_ref": "sdd/add-auth-service/spec",
  "acceptance_criteria": "All token operations pass unit tests",
  "dependencies": []
}
// -> { "created": true, "task_id": "task_abc123...", "priority": "p0" }

// Tool: tb_add_task
{
  "board_id": "board_x7k9m2...",
  "title": "Build auth middleware",
  "priority": "p1",
  "acceptance_criteria": "Middleware validates tokens on protected routes",
  "dependencies": ["task_abc123..."]  // depends on JWT module
}
// -> { "created": true, "task_id": "task_def456..." }

// Step 3: Agent claims a task
// Tool: tb_claim
{ "task_id": "task_abc123...", "agent": "implement-agent-1" }
// -> { "claimed": true, "task_id": "task_abc123...", "status": "in_progress" }

// Step 4: Mark task done (auto-unblocks dependents)
// Tool: tb_update
{ "task_id": "task_abc123...", "status": "done", "notes": "JWT module complete with RS256 support" }
// -> { "updated": true, "unblocked_tasks": ["task_def456..."] }
// task_def456 automatically moves from "backlog" to "ready"

Пример 3: Предотвращение конфликтов файлов между агентами

Два агента, работающие параллельно, используют резервирование файлов, чтобы избежать конфликтов:

// Agent 1 checks then reserves auth files (two-phase pattern)
// Tool: file_reserve (check_only)
{
  "patterns": ["src/auth/**", "src/middleware/auth.ts"],
  "agent": "implement-agent-1",
  "check_only": true
}
// -> { "reserved": false, "has_conflicts": false, "conflicts": [] }

// No conflicts — proceed to reserve
// Tool: file_reserve
{
  "patterns": ["src/auth/**", "src/middleware/auth.ts"],
  "agent": "implement-agent-1",
  "ttl_minutes": 30
}
// -> { "reserved": true, "has_conflicts": false, "expires_at": "2025-01-15T10:30:00.000Z" }

// Agent 2 checks before editing
// Tool: file_reserve (check_only)
{
  "patterns": ["src/auth/jwt.ts"],
  "agent": "implement-agent-2",
  "check_only": true
}
// -> { "reserved": false, "has_conflicts": true, "conflicts": [{ "pattern": "src/auth/**", "held_by": "implement-agent-1" }] }
// Agent 2 knows to work on something else

// Agent 1 finishes and releases
// Tool: file_release
{ "agent": "implement-agent-1" }
// -> { "released": true, "count": 2 }

Пример 4: Отслеживание истории этапов проекта

Просмотрите, как изменения продвигались по конвейеру:

// Tool: sdd_history
{ "project": "my-app", "limit": 5 }

// Response:
{
  "project": "my-app",
  "history": [
    { "id": "sdd_...", "phase": "verify", "change_name": "add-auth-service", "status": "success", "confidence": 0.92, "created_at": "2025-01-15T10:45:00Z" },
    { "id": "sdd_...", "phase": "apply",  "change_name": "add-auth-service", "status": "success", "confidence": 0.78, "created_at": "2025-01-15T10:30:00Z" },
    { "id": "sdd_...", "phase": "tasks",  "change_name": "add-auth-service", "status": "success", "confidence": 0.88, "created_at": "2025-01-15T09:15:00Z" },
    { "id": "sdd_...", "phase": "spec",   "change_name": "add-auth-service", "status": "success", "confidence": 0.85, "created_at": "2025-01-15T09:00:00Z" },
    { "id": "sdd_...", "phase": "propose","change_name": "add-auth-service", "status": "success", "confidence": 0.85, "created_at": "2025-01-15T08:30:00Z" }
  ]
}

Переменные окружения

Переменная

По умолчанию

Описание

FORGESPEC_DIR

~/.forgespec

Директория для хранения базы данных

FORGESPEC_DB

~/.forgespec/forgespec.db

Полный путь к базе данных SQLite


Архитектура

forgespec-mcp
├── src/
│   ├── index.ts              # Entry point: stdio transport
│   ├── server.ts             # MCP server setup and tool registration
│   ├── types/index.ts        # Zod schemas, phase config, type definitions
│   ├── database/index.ts     # SQLite init, WAL mode, schema creation
│   ├── tools/
│   │   ├── sdd-contracts.ts  # 5 contract lifecycle tools
│   │   ├── task-board.ts     # 8 task management tools
│   │   └── file-reservation.ts # 2 file locking tools
│   └── utils/id.ts           # Prefixed UUID generation
└── tests/
    ├── sdd-contracts.test.ts # Schema and phase transition tests
    └── tools.test.ts         # Integration tests for all CRUD operations

Технологический стек:

  • Model Context Protocol SDK -- фреймворк сервера MCP

  • better-sqlite3 -- встроенная база данных с режимом WAL

  • Zod -- проверка схемы во время выполнения

  • Vitest -- фреймворк тестирования с покрытием v8


Разработка

# Clone the repository
git clone https://github.com/lleontor705/forgespec-mcp.git
cd forgespec-mcp

# Install dependencies
npm install

# Run in development mode (hot reload)
npm run dev

# Run tests
npm test

# Run tests in watch mode
npm run test:watch

# Build for production
npm run build

# Open MCP Inspector for debugging
npm run inspect

Выпуск новой версии

ForgeSpec использует standard-version для автоматического семантического версионирования на основе Conventional Commits.

# Commits determine the version bump automatically:
#   fix: ...    -> patch (1.2.0 -> 1.2.1)
#   feat: ...   -> minor (1.2.0 -> 1.3.0)
#   feat!: ...  -> major (1.2.0 -> 2.0.0)

# Create a release (bumps version, updates CHANGELOG, creates git tag)
npm run release

# Or specify the bump type manually
npm run release -- --release-as minor
npm run release -- --release-as major

# First release from current version
npm run release -- --first-release

# Push with tags to trigger CI/CD
git push --follow-tags origin master

Конвейер CI/CD затем:

  1. Запускает тесты на Ubuntu/Windows/macOS с Node 18, 20, 22

  2. Ожидает одобрения производственной среды

  3. Публикует в npm с подтверждением происхождения

  4. Создает релиз на GitHub с автоматически сгенерированными примечаниями


Участие в разработке

  1. Сделайте форк репозитория

  2. Создайте ветку для функции: git checkout -b feature/my-feature

  3. Используйте Conventional Commits для своих сообщений:

    • feat: добавить новый инструмент для X

    • fix: устранить состояние гонки при резервировании файлов

    • docs: обновить примеры использования

  4. Запустите тесты: npm test

  5. Отправьте изменения и откройте Pull Request


Лицензия

MIT -- создано lleontor705

Install Server
A
license - permissive license
C
quality
A
maintenance

Maintenance

Maintainers
Response time
2wRelease cycle
12Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables spec-driven development workflows with AI assistants, providing tools for managing specification lifecycles, task dependencies, code navigation, testing, and automated reviews through a unified CLI and MCP interface.
    4
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    An MCP server for Spec-Driven Development that transforms natural language ideas and meeting transcripts into structured, production-grade specifications using EARS notation. It automates a 7-phase pipeline to generate project artifacts like requirements, architecture designs, and task lists directly to disk.
    58
    110
    17
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Centralized MCP server for spec-driven AI agent workflows, enabling isolated feature management, task tracking, and implementation with handoff and archiving capabilities across multiple projects and developers.
    57
    1
    MIT

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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/lleontor705/forgespec-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server