Skip to main content
Glama

suspec-mcp

Suspec의 결정적 검사기에 셸 없이 접근하기 위한 얇은 MCP stdio 어댑터입니다. 얇음이 특징입니다. 검사 계약 0.26.0을 요구하며, 모든 CLI JSON 페이로드를 검증하고 순서가 있는 보고서와 종료 상태를 보존합니다.

도구

suspec_check

절대 아티팩트 경로의 순서가 있는 비어 있지 않은 배열에 대해 하나의 CLI 프로세스를 실행합니다. Frontmatter type:이 동작을 선택합니다.

입력

의미

paths

순서가 있는 비어 있지 않은 절대 기본 경로

specPath

작업 경로에 대한 절대 스펙

responseFormat

concise 또는 detailed

스펙, 작업, 변경 계획 및 캠페인 입력은 CLI 검사를 받습니다. 인벤토리, 감사, 리서치 및 패널은 checked: false를 반환합니다. 누락되거나 알 수 없는 유형은 거부됩니다.

한 번의 호출은 C002와 같은 파일 간 검사를 보존합니다. 작업 경로는 하나의 specPath를 공유합니다. 모든 작업은 해당 스펙을 명명해야 합니다. 잘못된 동반 페어링은 ok: false와 함께 CLI의 구조화된 거부를 생성합니다.

모든 아티팩트 결과는 해당 유형을 반복합니다. 선택적 최종 (file set) 보고서만 유형이 없습니다.

suspec_get_checks

간결 모드에서 계약 버전과 각 핵심 검사의 ID 및 심각도를 반환합니다. 이름을 보려면 responseFormat: "detailed"를 사용하세요. 동일한 계약은 suspec://checks에서 사용할 수 있습니다.

시작 및 리소스 읽기는 종료 코드 0에서 정확한 계약 0.26.0을 요구합니다. 리소스 실패는 리소스 콘텐츠로 오류 문서를 반환하는 대신 예외를 발생시킵니다.

Related MCP server: governed-mcp

봉투

모든 성공적인 어댑터 호출은 다음을 반환합니다:

  • ok: CLI가 실행되어 유효한 페이로드를 생성했는지 여부. 진단이 깨끗한지 여부는 아님.

  • source: 정확한 명령과 종료 코드.

  • data: 검증된 상세 출력 또는 간결한 프로젝션.

  • 선택적 note.

  • responseFormat.

ok는 어댑터가 작동했음을 의미하며, 아티팩트가 좋다는 의미가 아닙니다. 차단 진단이 있는 검사는 ok: true로 유지됩니다. data.level, 진단 및 source.exitCode를 검사하세요.

CLI 종료 코드 0, 1, 2는 계약에 속합니다. 다른 종료는 어댑터 시작 실패입니다. JSON 형태의 stdout은 새 계약을 협상하지 않습니다. 구조화된 CLI 오류는 종료 코드 2에서만 허용됩니다.

설치

Node.js 22.6 이상과 suspec CLI가 필요합니다. 두 패키지 모두 게시되지 않았습니다.

git clone https://github.com/jcosta33/suspec-mcp
cd suspec-mcp
corepack enable
pnpm install --frozen-lockfile

GUI 클라이언트가 셸 PATH에 의존하지 않도록 절대 진입점을 구성하세요:

{
  "mcpServers": {
    "suspec": {
      "command": "/absolute/path/to/suspec-mcp/bin/suspec-mcp.js",
      "args": ["--suspec-bin", "/absolute/path/to/suspec-cli/bin/suspec.js"]
    }
  }
}

CLI 우선순위:

플래그

환경 변수

기본값

--suspec-bin <path>

SUSPEC_BIN

PATH의 suspec

각 도구 호출은 전체 아티팩트 경로를 제공합니다. 서버는 저장소, 작업 공간, 구성 또는 저장소를 바인딩하지 않습니다. 이는 어댑터이지 두 번째 제품 두뇌가 아닙니다. ~/.agents/artifacts/<workspace>/는 특별한 런타임 의미가 없습니다. 사용자 수준 정책 설치는 CLI의 작업입니다. suspec setup을 직접 실행하세요. MCP는 설정, 저장, 승격, 수명 주기 또는 오케스트레이션 표면을 노출하지 않습니다.

보안

  • 기본 및 동반 경로는 절대 경로여야 하며 제어, 형식 또는 줄 구분 문자를 포함해서는 안 됩니다.

  • 어댑터는 셸 없이 고정된 인자 배열을 전달합니다.

  • check 및 지원되는 동반 또는 계약 플래그만 CLI에 도달합니다. setup은 하위 프로세스가 시작되기 전에 거부됩니다.

  • CLI 검사 표면은 읽기 전용입니다.

서버는 프로세스에서 사용할 수 있는 모든 경로를 읽을 수 있습니다. 파일 시스템 권한은 제안이 아니라 보안 경계입니다. 프로세스 권한을 클라이언트 신뢰 경계에 맞추거나 OS 샌드박싱을 적용하세요.

개발

픽스처 드리프트는 실제 CLI를 사용합니다. 손으로 쓴 일치는 아무것도 증명하지 않습니다. SUSPEC_BIN을 절대 CLI 소스 경로로 설정하세요. 그렇지 않으면 suspec-cli라는 형제 패키지가 검색을 충족할 수 있습니다. 생성은 다른 패키지를 거부합니다.

export SUSPEC_BIN=/absolute/path/to/suspec-cli/bin/suspec.js
pnpm install
pnpm test:run
pnpm gate
pnpm fixtures

test/fixtures/provenance.json은 CLI git HEAD, 완전한 더티 작업 트리 해시 및 바이너리 해시를 기록합니다. scripts/generate-fixtures.mjs는 출력을 캡처합니다. 테스트는 모든 픽스처를 src/suspec/contract.ts를 통해 파싱합니다. 픽스처는 생성되며 손으로 편집되지 않습니다.

라이선스

MIT

Available Tools

10 tools
swarm_check_fileCheck one artifact fileA
Read-onlyIdempotent

Run the Swarm checks contract over one file (spec / task / review / change-plan). Returns diagnostics, never a verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesworkspace-relative path to the artifact file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnly, idempotent, non-destructive, and not open-world. The description adds that it returns diagnostics and never a verdict, which is useful behavioral context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that immediately states the action and key details, with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple one-parameter tool with full annotations and an output schema, the description provides all necessary context: what files it applies to, what it returns, and that it does not produce a verdict.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add extra meaning beyond the schema's 'workspace-relative path' definition; it only lists file types which are not part of the parameter description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool runs a checks contract on one file of specified types (spec/task/review/change-plan) and returns diagnostics, not a verdict. This distinguishes it from the sibling tool 'swarm_check_workspace' which likely checks the entire workspace.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that this tool is for single file checks and contrasts with the workspace-level sibling, but it does not explicitly state when not to use it or provide named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_check_workspaceCheck the whole workspaceA
Read-onlyIdempotent

Run the Swarm checks contract over every spec + change plan. Returns diagnostics, never a verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, destructiveHint, and idempotentHint. The description adds value by clarifying the output is diagnostics (not a verdict), providing behavioral insight beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that efficiently communicates the tool's purpose and output with no extraneous detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with comprehensive annotations and an output schema, the description is fully adequate. It explains what the tool does and what it returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so the baseline is 4. The description correctly avoids unnecessary parameter information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it runs the Swarm checks contract over every spec and change plan, specifying the scope as the whole workspace, which distinguishes it from siblings like swarm_check_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies its use for a workspace-level check and notes 'never a verdict,' which hints at when not to use it (if a verdict is needed). However, no explicit alternatives or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_get_checksGet the checks contractA
Read-onlyIdempotent

The checks contract — version + the core checks (id/name/severity). What review must satisfy.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, so the safety profile is clear. The description adds the specific return content (version and core checks) and the purpose ('what review must satisfy'), providing mild additional behavioral context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (two phrases) and front-loaded with the key information. However, the second phrase 'What review must satisfy' could be integrated more clearly. Minimal redundancy, but structure could be improved for readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there are no parameters, annotations are present, and an output schema exists, the description sufficiently explains what the tool returns. It covers the essential purpose and content. No major gaps, but could mention that it is a static contract definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist (schema coverage 100% vacuously). The description does not need to explain parameters. According to guidelines, with 0 parameters, baseline is 4, which is appropriate as no additional param info is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves 'the checks contract' including version and core checks (id/name/severity), and explains it defines what a review must satisfy. This distinguishes it from sibling tools like swarm_check_file or swarm_get_review, which operate on specific checks or reviews.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description does not mention situations where this tool is preferred or why it should be called instead of swarm_get_review or swarm_check_file. The agent must infer usage from the title alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_get_reviewGet a parsed review packetA
Read-onlyIdempotent

The review packets status, coverage rows, and verify blocks. Read-only; the verdict is the humans.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYestask id or stem (the review is reviews/<stem>.md)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds 'Read-only' and 'the verdict is the human`s' beyond the annotations (readOnlyHint, destructiveHint, idempotentHint). It reinforces the read-only nature and provides context about the human role, aligning with annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using one sentence and a parenthetical to convey the tool's purpose and key behavior. Every word adds value, making it easy for an AI agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adequately covers what the tool returns (status, coverage rows, verify blocks) and its read-only nature. No further details are necessary for this simple get tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'task' is fully described in the schema (100% coverage). The description does not add new semantic information about the parameter beyond what the schema already provides, so baseline score is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a review packet's status, coverage rows, and verify blocks. It distinguishes itself from sibling tools by specifying these components, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes 'Read-only; the verdict is the human`s,' implying the tool should be used for reading without modification. It provides context but does not explicitly list when not to use or alternatives, though siblings like swarm_reconcile_review serve different purposes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_get_specGet a parsed specA
Read-onlyIdempotent

The spec`s frontmatter, requirements (id + line + named verify command), and sections. Read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
specYesspec id (e.g. SPEC-auth)

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds context by listing the specific components returned (frontmatter, requirements, sections) and reiterates 'Read-only', consistent with annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (one sentence) and front-loaded with key information. Minor formatting issue with apostrophe ('spec`s') does not hinder understanding. Could be slightly more polished.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple getter tool with one parameter, good annotations, and an output schema, the description covers the returned data. It lacks details on error handling or response format, but overall it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema fully covers the single parameter 'spec' with a description ('spec id (e.g. SPEC-auth)'), so baseline is 3. The description does not add further parameter details, which is acceptable given 100% coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool retrieves a parsed spec, including frontmatter, requirements (with id, line, named verify command), and sections. It also explicitly marks it as read-only, distinguishing it from sibling tools like swarm_check_file or swarm_get_checks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving spec details but does not provide explicit guidance on when to use this tool over siblings or when not to use it. Given nine sibling tools, some direction would be beneficial.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_get_statusSwarm workspace boardA
Read-onlyIdempotent

The derived workspace board — specs, their tasks, and review status. Read-only; no verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds minimal value by repeating 'Read-only; no verdict', but does not contradict annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the purpose with no wasted words. Every part is essential.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, the description adequately explains the return value ('specs, their tasks, and review status'). It does not need to detail format or additional behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0 parameters and 100% schema description coverage, the description does not need to add parameter information. Baseline for 0 params is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'The derived workspace board — specs, their tasks, and review status', specifying the verb ('get' implied in name) and resource, distinguishing it from sibling tools like swarm_get_spec or swarm_get_task.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies read-only usage with 'Read-only; no verdict', but does not explicitly state when to use this tool versus siblings like swarm_get_checks or swarm_reconcile_review. No alternatives are named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_get_taskGet a parsed task packetA
Read-onlyIdempotent

The task packet`s scope, affected areas, claimed changes, and frontmatter (id/source/status). Read-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYestask id or stem

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds value by detailing the specific data returned (scope, affected areas, etc.), but could further disclose behavior like error handling or response format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loading the key information about what is returned and noting it's read-only. No extraneous words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema present, full annotations), the description sufficiently covers its purpose and return data. Could mention that output schema defines full structure, but not necessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'task' has a schema description 'task id or stem', which matches the description. With 100% schema coverage, the description adds no new information beyond the schema, resulting in a baseline score of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool retrieves a parsed task packet and lists its components (scope, affected areas, claimed changes, frontmatter). This clearly distinguishes it from siblings like swarm_get_spec or swarm_check_file.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like swarm_get_spec or swarm_scan_task. No when/when-not or prerequisite information is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_reconcile_reviewReconcile a review packet vs task/spec/diffA
Read-onlyIdempotent

Reconcile a finished run: compare task, spec, review packet, and git diff. Returns coverage gaps, empty-evidence Pass rows, scope drift, and self-report mismatches as facts + a derived human-attention list. Never issues a final verdict — a human or an independent reviewer owns the result.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYestask id or stem (the CLI reviews `tasks/<stem>.md`)
baseNothe base branch/commit to diff the worktree against

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description adds behavioral context: the tool returns specific types of issues and does not issue a final verdict. This complements annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loading the action and inputs, then listing outputs, and finally clarifying constraints. Every sentence adds value with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not detail return values. It covers purpose, inputs, outputs, and behavioral constraints sufficiently for the tool's complexity, given rich annotations and schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema adequately describes the two parameters. The description adds minor context (e.g., task is a stem, base is a branch/commit) but does not significantly enhance understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reconciles a finished run by comparing task, spec, review packet, and git diff. It lists specific outputs (coverage gaps, empty-evidence Pass rows, scope drift, self-report mismatches, human-attention list) and distinguishes itself by explicitly stating it never issues a final verdict, setting it apart from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates when to use ('Reconcile a finished run') and specifies that the tool does not give a final verdict, implying a human or independent reviewer should act on the output. However, it does not explicitly compare to alternatives or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_scan_taskScan a task in progress (reconcile vs the diff)A
Read-onlyIdempotent

Reconcile a task against its spec and the worktree diff to surface coverage gaps, out-of-scope changes, and self-report mismatches — before a review packet exists. Same engine as reconcile_review. Never a verdict. If the task has no live worktree, returns a structured "not runnable here" result, not an error.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYestask id or stem (the CLI reviews `tasks/<stem>.md`)
baseNothe base branch/commit to diff the worktree against

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint, destructiveHint, idempotentHint), the description adds key behavioral traits: 'Never a verdict' and the non-error result for absent worktree. These clarify the tool's safe, read-only, and consistent behavior without contradicting annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no fluff. The first sentence front-loads the core purpose and output. The second provides sibling context. The third edge case. Every sentence is essential.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (2 params, simple), the description covers purpose, output (structured result), edge cases, and relationship to sibling. Output schema exists, so no need to detail return format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and parameters are fully described. The description does not add new semantic details beyond what the schema provides, such as the format of 'task' or 'base'. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool reconciles a task against its spec and worktree diff to surface coverage gaps, out-of-scope changes, and self-report mismatches. Differentiates from sibling swarm_reconcile_review by noting 'Same engine as reconcile_review' and adding context 'before a review packet exists' and 'Never a verdict'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says when to use ('before a review packet exists') and what the tool does not do ('Never a verdict'). Mentions an edge case behavior ('returns a structured not runnable here result, not an error'). Does not explicitly list alternatives, but the sibling reference provides differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

swarm_validate_review_packetValidate a review packet (structure + evidence)A
Read-onlyIdempotent

Run the review-file checks (C012 coverage, C013 verify-evidence) over a review packet: structure, status, and that Pass rows carry evidence. The diff-aware half (out-of-scope, self-report) comes from reconcile_review when a worktree exists. Returns diagnostics, never a verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault
reviewYesworkspace-relative path to the review packet file

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYes
noVerdictIssuedYes
noVerdictNoteYes
sourceYes
dataNo
derivedNo
noteNo

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and the description adds that the tool 'Returns diagnostics, never a verdict,' clarifying the output type. This complements the annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two concise, front-loaded sentences. The first sentence states the core purpose, and the second clarifies scope and output. Every word adds value, with no wasted text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a single parameter, 100% schema coverage, an output schema (though not shown), and simple behavior, the description adequately covers what the tool does, what it checks, and what it returns. It is complete for its complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The sole parameter 'review' is fully described in the input schema as 'workspace-relative path to the review packet file' (100% coverage). The description does not add additional semantic context beyond what the schema provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool runs specific review-file checks (C012 coverage, C013 verify-evidence) on a review packet, covering structure, status, and evidence for Pass rows. It also distinguishes from sibling tool reconcile_review, which handles diff-aware checks. This clearly defines the tool's purpose and differentiates it from others.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates when to use this tool (for structure and evidence checks) and notes that diff-aware checks come from reconcile_review, providing implicit guidance on alternatives. However, it does not explicitly state when not to use this tool, missing a clear exclusion criterion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv0.1.0
    • First observedswarm_check_file
    • First observedswarm_check_workspace
    • First observedswarm_get_checks
    • First observedswarm_get_review
    • First observedswarm_get_spec
    • First observedswarm_get_status
    • First observedswarm_get_task
    • First observedswarm_reconcile_review
    • First observedswarm_scan_task
    • First observedswarm_validate_review_packet

TDQS

A4.3/5.0

Scored across 10 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: checking files vs workspace, getting different entities (checks, review, spec, status, task), reconciling reviews, scanning tasks, and validating packets. No overlapping functionality.

Naming Consistency5/5

All tools follow the consistent pattern 'swarm_verb_noun' using snake_case. Verbs are appropriate (check, get, reconcile, scan, validate) and nouns are specific, making the set predictable and easy to navigate.

Tool Count5/5

10 tools is well-scoped for a server focused on analysis and verification of specifications, tasks, and reviews. Each tool serves a necessary function without redundancy or bloat.

Completeness5/5

The tool surface covers all essential operations for the server's analysis purpose: checking, retrieving all relevant entities, reconciling, scanning, and validating. No obvious gaps given the read-only/analysis scope.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers