Skip to main content
Glama

ForgeSpec MCP

멀티 에이전트 AI 개발을 위한 조정 백본. ForgeSpec MCP는 Model Context Protocol 서버로, 사양 기반 개발(SDD)을 통해 AI 기반 소프트웨어 엔지니어링에 구조화되고 감사 가능한 워크플로우를 제공합니다.


왜 ForgeSpec인가?

여러 AI 에이전트(Claude, Codex, Gemini 등)로 소프트웨어를 구축하면 단일 에이전트 워크플로우에는 없는 조정 문제가 발생합니다:

문제

ForgeSpec 미사용 시

ForgeSpec 사용 시

편집 충돌

두 에이전트가 동일한 파일을 동시에 수정하여 병합 충돌 및 작업 손실 발생

TTL이 포함된 파일 예약 시스템이 충돌을 사전에 방지

공유 컨텍스트 부재

각 에이전트가 독립적으로 작업하며, 한 에이전트의 결정이 다른 에이전트에게 보이지 않음

계약 검증을 통해 모든 단계에 걸쳐 공유 감사 추적 생성

비구조적 작업

에이전트가 사양 없이 바로 코드로 넘어가 일관성 없는 결과물 생성

9단계 파이프라인이 제안 -> 사양 -> 설계 -> 구현 흐름을 강제

진행 상황 손실

에이전트가 작업 도중 실패하면 중단된 지점부터 재개할 방법이 없음

SQLite 기반 작업 보드가 상태를 유지하여 다른 에이전트가 작업을 이어받을 수 있음

품질 게이트 부재

원래 요구 사항에 대한 검증 없이 코드가 배포됨

품질 기준이 충족될 때까지 신뢰도 임계값이 단계 전환을 차단

주요 장점

  • 제로 인프라 -- 내장된 SQLite 데이터베이스, 외부 서비스 불필요

  • 범용 호환성 -- Claude Code, Codex CLI, Gemini CLI, OpenClaw 등 모든 MCP 클라이언트와 호환

  • 즉시 설정 -- 한 번의 명령어로 시작: npx -y forgespec-mcp

  • 검증된 파이프라인 -- 신뢰도 임계값이 있는 9단계 파이프라인으로 성급한 단계 전환 방지

  • 감사 추적 -- 모든 계약, 작업 전환 및 파일 예약이 타임스탬프와 함께 기록됨

  • 크로스 플랫폼 -- Node 18, 20, 22를 사용하는 Ubuntu, Windows 및 macOS에서 테스트 완료

  • 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"로 저장된 아티팩트는 mem_save를 통해 Cortex에 유지되고 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) 수명 주기를 강제합니다. 이는 AI 에이전트가 바로 코드로 넘어가지 않고 체계적으로 작업하도록 보장하는 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" 단계를 완료하는 AI 에이전트가 작업을 검증된 계약으로 저장합니다:

// 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

기술 스택:


개발

# 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은 Conventional Commits를 기반으로 자동 의미론적 버전 관리를 위해 standard-version을 사용합니다.

# 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. Node 18, 20, 22를 사용하여 Ubuntu/Windows/macOS에서 테스트 실행

  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