MCP Probe Kit
MCP Probe Kit is a comprehensive AI development enhancement toolkit with 23 tools for code quality, development efficiency, and project management, designed primarily for use within the Cursor editor.
Code Quality Tools (7)
detect_shell - Detect AI model wrapping/proxying with JSON fingerprint verification
code_review - Comprehensive code analysis for quality, security, performance, and best practices
debug - Error analysis with debugging strategies and solutions
gentest - Generate complete test cases for Jest/Vitest/Mocha including unit, boundary, and exception tests
refactor - Code refactoring suggestions with implementation plans
perf - Performance bottleneck analysis for algorithms, memory, React components, and database queries
fix - Auto-fix lint errors, TypeScript types, formatting, imports, and unused code
Development Efficiency Tools (11)
gencommit - Generate standardized Git commit messages following Conventional Commits with emoji support
genapi - Generate API documentation in Markdown, OpenAPI, or JSDoc formats
gendoc - Generate detailed JSDoc/TSDoc comments with parameters, returns, and examples
genpr - Generate Pull Request descriptions with change summary and checklist
genchangelog - Generate CHANGELOG.md from commit history following Keep a Changelog standard
gensql - Generate SQL queries from natural language for PostgreSQL/MySQL/SQLite
genui - Generate React/Vue 3 UI components with TypeScript, Tailwind CSS, and accessibility support
explain - Detailed code explanations including logic, principles, design patterns, and complexity analysis
convert - Convert code formats/frameworks (JS→TS, Class→Hooks, Promises→Async/Await, CSS→Tailwind, etc.)
genreadme - Generate README.md documentation from project code in standard, minimal, or detailed styles
split - Split large files into smaller, maintainable components with intelligent strategy analysis
Project Management Tools (5)
init_setting - Initialize Cursor AI configuration with recommended settings
init_project - Set up Spec-Driven Development project structure with constitution, spec, plan, and tasks
check_deps - Analyze dependency health including outdated packages, security vulnerabilities, and package size
resolve_conflict - Analyze and resolve Git merge conflicts with recommendations
analyze_project - Deep project analysis of structure, tech stack, dependencies, code metrics, and architecture patterns to help AI understand legacy projects
Provides tools for Git workflow management including commit message generation, PR descriptions, changelog creation, and merge conflict resolution assistance
Integrates with GitHub workflows through spec-driven project initialization based on GitHub's Spec-Kit methodology and Pull Request description generation
Offers comprehensive JavaScript development tools including code review, debugging, testing, refactoring, and code conversion capabilities
Generates comprehensive test suites and test cases specifically formatted for the Jest testing framework
Automatically generates CHANGELOG.md files following the Keep a Changelog standard format based on commit history
Generates various Markdown documentation including API docs, README files, and project documentation with proper formatting
Creates test suites and test cases formatted specifically for the Mocha testing framework
Generates optimized SQL queries, table creation statements, and performance analysis for MySQL databases
Analyzes npm package dependencies for health checks, security vulnerabilities, outdated packages, and unused dependencies
Creates complex SQL queries with JOINs, subqueries, and window functions optimized for PostgreSQL databases
Generates React components with TypeScript, hooks, accessibility support, and converts class components to functional components with hooks
Assists in splitting and refactoring Redux store modules and provides architectural analysis for Redux-based applications
Recommends and generates UI components compatible with shadcn/ui component library standards and patterns
Generates SQL queries and database schemas optimized for SQLite with performance considerations
Creates comprehensive API documentation in OpenAPI/Swagger format from code analysis
Generates UI components with Tailwind CSS styling and converts existing CSS to Tailwind utility classes
Provides comprehensive TypeScript development support including type error fixing, code conversion from JavaScript to TypeScript, and interface generation
Generates UI components with UnoCSS styling and utility class optimization
Creates test suites and test cases specifically optimized for the Vitest testing framework
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Probe Kitcode_review @auth/login.ts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-probe-kit — Know the Context, Feed the Moment
Talk is cheap, show me the Context.
mcp-probe-kit is a protocol-level toolkit designed for developers who want AI to understand project intent, choose a precise workflow, and retain validated experience without flooding the model with internal actions.
Languages: English | 简体中文 | 日本語 | 한국어 | Español | Français | Deutsch | Português (BR)
🚀 AI-Powered Complete Development Toolkit - Covering the Entire Development Lifecycle
A powerful MCP (Model Context Protocol) server with 24 model-visible tools by default, 30 when Memory is configured, and a 34-tool compatibility surface available through MCP_TOOLSET=full. It covers the complete workflow from product analysis to final release and supports structured output.
🎉 v4 stable release: native MCP Apps, resumable plans, evidence convergence, managed GitNexus Sidecar, parent-child specs, and a version-locked CLI fallback.
Supports All MCP Clients: Cursor, Claude Desktop, Cline, Continue, and more
Protocol Support: Legacy MCP (2025-era) + Modern MCP 2026-07-28 · SDK: split TypeScript SDK v2 packages
Runtime: Node.js 20 or newer. MCP_PROTOCOL_MODE=auto is the default; use legacy or modern only for compatibility diagnosis.
🎬 v4 in action
v4 turns delegated Agent work into an observable and verifiable delivery loop. The animations below are rendered from the same MCP App source shipped in the npm package—not separate marketing mockups.
Feature Workbench — parent-child specs, active step, outputs, evidence, and cross-session recovery.
Memory Center — semantic search, full-content inspection, lifecycle state, evidence, stale marking, and confirmed deletion.
Convergence Gate — blocks closure when steps or requirements/spec/implementation/test/review evidence are incomplete.
Five native MCP Apps: Memory Center, Feature Workbench, Bug Workbench, Product Workbench, and Convergence Gate.
Resumable delegated plans:
plan_heartbeatpersists real progress;resume_planrestores the next executable step.Evidence-based convergence:
convergegates delivery and long-term Memory writes.Managed GitNexus Sidecar: version/platform/architecture/Node isolation, integrity verification, real FTS probe, and safe degradation.
Version-locked CLI fallback: project-local
probewrappers reach the same Tool Registry when a host drops the MCP tool lease.Parent-child specifications: complex releases are decomposed and recursively validated instead of being flattened into one oversized spec.
Open the five live, read-only MCP App demos
v4 stable:
mcp-probe-kit@4.0.0is the current stable release and npmlatestchannel.
Related MCP server: MCP AI POC
📚 Complete Documentation
👉 https://mcp-probe-kit.bytezonex.com
Quick Start - Setup in 5 minutes
Local Memory Stack (Qdrant + Nomic Embed) - Docker Compose, ports
50008/50012, MCP envAll Tools - Default, conditional Memory, App-only, and full compatibility surfaces
Best Practices - Full development workflow guide
v3 → v4 Migration Guide - Tool surfaces, protocol, Apps, plan state, Memory, and compatibility
MCP Apps Live Demos - Five real read-only workbenches generated from the shipped App source
✨ Core Features
📦 Tool Surfaces
The default compact surface keeps every independently useful workflow while removing competing internal and maintenance entries from the model context.
🧭 Routing (1) —
workflow🔁 Plan State & Convergence (3) —
plan_heartbeat,resume_plan,converge🔄 Workflow Orchestration (6) —
start_feature,start_bugfix,start_onboard,start_ui,start_product,start_ralph📦 Project & Specification (4) —
init_project,init_project_context,check_spec,estimate🏗️ Architecture (1) —
architecture🔍 Code, Test & Git (6) —
code_insight,gentest,code_review,refactor,gencommit,git_work_report🎨 UI/UX Utilities (2) —
ui_design_system,ui_search🗣️ Structured Interview (1) —
interview
That is 24 model-visible tools by default. When the full Memory stack is configured, six Memory tools are added dynamically, bringing the model-visible surface to 30:
search_memory, read_memory_asset, memorize_asset, update_memory_asset, delete_memory_asset, scan_and_extract_patterns
For compatibility and diagnostics, MCP_TOOLSET=full restores all 34 model tools. The compact surface deliberately omits add_feature, fix_bug, sync_ui_data, and ask_user: their implementations remain available through orchestration, maintenance scripts, or full compatibility mode.
workflow is a fallback tool-selection guide, not a natural-language intent classifier. The Agent normally chooses the appropriate MCP tool directly from the current conversation, Skill, and tool descriptions. scenario=auto returns guidance only (firstTool=null); an explicit scenario returns deterministic guidance for a scenario the Agent has already selected.
🔁 Delegated Plan State, Recovery, and Convergence
Every v4 delegated plan declares
executionStatePolicyand instructs the Agent to create a local checkpoint on the first step.plan_heartbeatpersists completed/skipped steps, unresolved items, evidence, and the last verified revision under.mcp-probe-kit/plans/.resume_planrecalculates ready and blocked steps from stored dependencies after interruption, restart, or Agent handoff.convergerefuses closure while steps, unresolved items, or requirements/spec/implementation/test/review evidence are incomplete. Formal long-term memory writes are allowed only after convergence passes.These tools track and validate Agent execution; they do not move file, shell, Git, or implementation work into the MCP server.
🛡️ Quality Constraints (single source of truth)
All hard quality rules live in one module (src/lib/quality-constraints.ts) and are injected into code_review, the add_feature task templates, and the UI tools. Change once, apply everywhere — inspired by taste-skill and impeccable.
Code limits: single file ≤ 500 lines (split into modules/components when exceeded), function ≤ 50 lines, nesting ≤ 4, parameters ≤ 3.
Completeness blacklist:
code_reviewflags placeholder/elision patterns (// ...,// TODO,// rest of code, bare...) as CRITICAL — "a partial output is a broken output".Anti-laziness task templates:
add_featuretasks now carry a Scope-lock deliverable count, a mandatory evidence block (read code before writing), a per-file line budget, and a binary zero-tolerance rule for placeholders.check_specvalidates these (missing Scope-lock = error, thin task without evidence = warning).UI hard red lines: numeric, machine-checkable rules — 4pt spacing scale, WCAG contrast (4.5/3/3), type scale ≥ 1.25, hero font ≤ 6rem, OKLCH, eight interaction states, cognitive load ≤ 4, motion 150-300ms.
UI banned list + Pre-Flight checklist: match-and-refuse blacklist for AI slop (default Inter/Roboto, AI purple-blue gradients, gradient text, cookie-cutter card grids, em-dash, cream/beige body backgrounds, nested cards) plus a delivery-gate self-check matrix.
🧠 Code Graph Bridge (GitNexus)
code_insightbridges GitNexus by default for query/context/impact analysisThe bridge prefers an explicitly configured or system GitNexus CLI, then a version-locked managed Sidecar; GitNexus is not bundled into the main package and is never globally installed
init_project_contextbootstraps baseline graph docs underdocs/graph-insights/; ifdocs/project-context.mdalready exists, it preserves the old context docs and only backfills graph docs plus the index entrystart_featurerefreshes the GitNexus index and runs task-levelquery/context/impactnarrowing before spec generation to reduce over-scopingstart_bugfixrefreshes the GitNexus index and runs task-level graph analysis before TBP RCA to constrain failure boundary and blast radiusOlder projects that already have
project-context.mdbut no graph docs are bootstrapped automatically through theinit_project_contextstepIf GitNexus is unavailable, the server falls back automatically without breaking orchestration
Real graph queries read the
.gitnexusindex;docs/graph-insights/latest.md|jsonare readable snapshots for humans and AI agentsMCP resources in MCP client settings list 2 entries (
probe://status,probe://project/bootstrap). Graph runtime snapshots (probe://graph/latest, etc.) andprobe://project/skill|agents|context|graphremain readable viaresources/readwhen tools expose URIsGraph snapshots are persisted to
.mcp-probe-kit/graph-snapshots(customizable viaMCP_GRAPH_SNAPSHOT_DIR)Tool responses include
_meta.graphwith snapshot URI and local JSON/Markdown file paths
🐛 SRC-8 Bug Root-Cause Workflow (TBP-Inspired)
SRC-8 Methodology (中文: src8-methodology.zh-CN.md) — Software Root-Cause 8-step protocol inspired by Toyota TBP / PDCA, adapted for code and AI agents
start_bugfixruns graph narrowing, then delegated SRC-8 plan (metadata.plan.stepssrc8-1~8) before repair and testsfix_bugreturns delegated plan (src8-1~8),src8Checklist,rootCauseWorksheet(Step 4 core), and hard gates (no code change until root-cause worksheet is closed)Highlights vs manufacturing TBP: repro contract, attribution layers (including
agent_behavior), contributing factors, memorize_asset for cross-repo learning
Inherited from Toyota TBP: gap thinking, Plan-before-Do, no skipping to root-cause analysis, fact-based investigation, countermeasures over symptoms, evaluate then standardize.
Our elevation: genchi-genbutsu → read code/logs/repro; Step 4 worksheet; guidance-only MCP that forces discipline while the Agent executes.
🧠 Memory Retrieval
Memory tools use Qdrant as the vector database backend
Embedding service supports two modes:
ollamaopenai-compatible
Memory tools:
search_memory- Semantic search across the shared memory pool (optionally prefertype/tags); text output includesid,score, summary, description, and a--- content ---body (default up to 1500 chars viaMEMORY_SEARCH_CONTENT_MAX_CHARS)memorize_asset- Persist an already validatedMemoryCandidateinto vector memory; for delegated workflows, call it only afterconvergepassesread_memory_asset- Read full asset content byasset_id(text output includes the fullcontentbody)update_memory_asset- Update an existing asset byasset_id(preserves ID;contentchanges re-embed)delete_memory_asset- Delete an asset byasset_idfrom the shared poolscan_and_extract_patterns- Extract reusable patterns from code/file/directory before deciding whether to persist
Cross-repo memory pools: do not rely on source_project / source_path for shared retrieval; put file paths in content instead. Search injection hides foreign sourcePath unless MEMORY_REPO_ID matches or MEMORY_SEARCH_SHOW_SOURCE=true.
Memory backend and embedding configuration:
Vector database: Qdrant
Recommended local setup:
Qdrant (port 50008) + Infinity / nomic-embed (port 50012)— lighter than Ollama; see Local Memory Stack guide (中文: memory-local-setup.zh-CN.md)Supported embedding providers:
ollamaopenai-compatible(Infinity, OpenAI, etc.)
Required environment variables for memory write/search:
MEMORY_QDRANT_URLMEMORY_EMBEDDING_URLMEMORY_EMBEDDING_MODEL
Optional environment variables:
MEMORY_QDRANT_API_KEYMEMORY_QDRANT_COLLECTION(default:mcp_probe_memory)MEMORY_EMBEDDING_API_KEYMEMORY_EMBEDDING_PROVIDER(ollamaby default)MEMORY_SEARCH_LIMIT(default:3)MEMORY_SUMMARY_MAX_CHARS(default:280)MEMORY_SEARCH_MIN_SCORE(default:0= disabled; try0.72for noisy pools)MEMORY_SEARCH_SHOW_SOURCE(default:false)MEMORY_REPO_ID(optional; showsourcePathonly whensourceProjectmatches)MEMORY_INJECTION_CONTENT_MAX_CHARS(default:1500; max content per hit injected intostart_*guides)
Behavior notes:
Read-only memory access only requires
MEMORY_QDRANT_URLMemory write is enabled only when
MEMORY_QDRANT_URL,MEMORY_EMBEDDING_URL, andMEMORY_EMBEDDING_MODELare all configuredThe Qdrant collection is auto-created on first write, and vector dimension is inferred from the first embedding response
Recommended local memory setup (Qdrant + Nomic Embed / Infinity):
Full Docker Compose, ports, and troubleshooting: docs/memory-local-setup.md
{
"mcpServers": {
"mcp-probe-kit": {
"command": "npx",
"args": ["-y", "mcp-probe-kit@4.0.0"],
"env": {
"MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
"MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
"MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
"MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
"MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
"MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
"MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
"MEMORY_SEARCH_LIMIT": "3",
"MEMORY_SUMMARY_MAX_CHARS": "280"
}
}
}
}Alternative: Qdrant + Ollama (if you already run Ollama):
docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
ollama pull nomic-embed-text"MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
"MEMORY_EMBEDDING_PROVIDER": "ollama",
"MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
"MEMORY_EMBEDDING_MODEL": "nomic-embed-text"OpenAI-compatible embedding (hosted API):
{
"mcpServers": {
"mcp-probe-kit": {
"command": "npx",
"args": ["-y", "mcp-probe-kit@4.0.0"],
"env": {
"MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
"MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
"MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
"MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
"MEMORY_EMBEDDING_API_KEY": "your-api-key",
"MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"
}
}
}
}🎯 Structured Output
Core and orchestration tools support structured output, returning machine-readable JSON data, improving AI parsing accuracy, supporting tool chaining and state tracking.
⏱️ Native Tasks, Progress, and Cancellation
Uses an SDK-independent Internal Task Runtime, with the current SDK task protocol exposed through a Legacy Adapter
Supports task lifecycle endpoints:
tasks/get,tasks/result,tasks/list,tasks/cancelAdvertises
capabilities.tasks.requests.tools.callso clients can create tasks fortools/callFalls back to synchronous execution when protocol task storage is unavailable
Emits
notifications/progresswhen client provides_meta.progressTokenIgnores late progress after terminal completion; tool/task result is the final completion signal
Handles request cancellation via
AbortSignaland preserves a clearcancelledstateLong-running orchestration tools (
start_*) andsync_ui_datasupport cooperative cancellation/progress callbacksInternal task persistence defaults to memory. Set
MCP_TASK_STORE=jsonto use.mcp-probe-kit/tasks.json, or setMCP_TASK_STORE_PATHto choose another JSON path. Interrupted tasks that cannot reconstruct their executor are explicitly marked failed on restart instead of being reported as still running.
🔌 Official MCP Apps and Memory Center
v4.0.0 uses the official @modelcontextprotocol/ext-apps SDK and the stable io.modelcontextprotocol/ui extension.
MCP Apps are enabled by default and can be disabled with
MCP_ENABLE_UI_APPS=0.UI metadata and
ui://resources are exposed only after the client advertises support fortext/html;profile=mcp-app.Five stable Apps are included: Memory Center, Feature Workbench, Bug Workbench, Product Workbench, and Convergence Gate.
Memory Center uses a responsive master-detail layout for historical browsing, semantic search, full-content inspection, lifecycle state, evidence, stale marking, and confirmed deletion.
Feature and Bug Workbenches render a live plan stepper. The App polls
resume_planwhile visible, and progress advances only after the Agent records real step state throughplan_heartbeat.Product Workbench and Convergence Gate use the same developer-console design system for delivery paths, blockers, and evidence gaps.
list_memory_assetsis an App-only action with_meta.ui.visibility=["app"]. It may appear in the rawtools/listresponse of an Apps-capable host, but compliant hosts must not offer it to the model. The model-visible count remains 24 by default or 30 with Memory.Clients without MCP Apps support continue to receive the normal text and
structuredContentresponses; no GUI capability is required for existing workflows.Trace metadata passthrough remains available through
MCP_ENABLE_EXTENSIONS_CAPABILITY=1.
🧪 Tool and Real-Agent Contract Verification
# Deterministic server-side audit across compact, Memory, full, App-only, and Legacy surfaces
npm run audit:tools
# Optional real-host audit: Claude Code calls and evaluates all 34 model tools
npm run audit:tools:agentThe direct audit verifies non-empty readable text, structuredContent, and that every referenced MCP tool exists on the active surface. The real-Agent audit additionally checks whether an Agent understands each tool, can follow the returned guidance, sees no text/structured contradiction, and can execute the stated next step. It is intentionally separate from release:verify because it requires a configured Claude Code account and incurs model usage.
🧭 Delegated Orchestration Protocol
All start_* orchestration tools return an execution plan in structuredContent.metadata.plan.
AI needs to call tools step by step and persist files, rather than the tool executing internally.
Plan Schema (Core Fields):
{
"mode": "delegated",
"steps": [
{
"id": "spec",
"tool": "add_feature",
"args": { "feature_name": "user-auth", "description": "User authentication feature" },
"outputs": ["docs/specs/user-auth/requirements.md"]
}
]
}Field Description:
mode: Fixed asdelegatedsteps: Array of execution stepstool: Tool name (e.g.add_feature)action: Manual action description when no tool (e.g.update_project_context)args: Tool parametersoutputs: Expected artifactswhen/dependsOn/note: Optional conditions and notes
🧩 Structured Output Field Specification (Key Fields)
Both orchestration and atomic tools return structuredContent, common fields:
summary: One-line summarystatus: Status (pending/success/failed/partial)steps: Execution steps (orchestration tools)artifacts: Artifact list (path + purpose)metadata.plan: Delegated execution plan (only start_*)specArtifacts: Specification artifacts (start_feature)estimate: Estimation results (start_feature / estimate)
🧠 Requirements Clarification Mode (Requirements Loop)
When requirements are unclear, use requirements_mode=loop in start_feature / start_bugfix / start_ui.
This mode performs 1-2 rounds of structured clarification before entering spec/fix/UI execution.
Example:
{
"feature_name": "user-auth",
"description": "User authentication feature",
"requirements_mode": "loop",
"loop_max_rounds": 2,
"loop_question_budget": 5
}🧩 Template System (Regular Model Friendly)
add_feature supports template profiles, default auto auto-selects: prefers guided when requirements are incomplete (includes detailed filling rules and checklists), selects strict when requirements are complete (more compact structure, suitable for high-capability models or archival scenarios).
Example:
{
"description": "Add user authentication feature",
"template_profile": "auto"
}Applicable Tools:
start_featurepassestemplate_profiletoadd_featurestart_bugfix/start_uialso supporttemplate_profilefor controlling guidance strength (auto/guided/strict)
Template Profile Strategy:
guided: Less/incomplete requirements info, regular model prioritystrict: Requirements structured, prefer more compact guidanceauto: Default recommendation, auto-selects guided/strict
Parent-Child Specifications
For version-level or epic work, start_feature defaults to spec_layout: "auto" and selects parent-child when the requirement spans multiple modules, stages, or capability domains. If child boundaries are not known yet, the delegated plan first returns a decompose-spec step. You can still explicitly pass flat or parent-child; add_feature remains an atomic tool and defaults to flat unless the layout and subspecs are already defined. The MCP server returns templates and pendingFiles; the calling Agent creates the parent spec, spec-manifest.json, and child specs after review. check_spec then validates the complete hierarchy recursively.
start_feature uses query-only GitNexus narrowing with an 8-second degradation budget, so graph cold starts do not block specification planning. Automatic index refresh is disabled by default; set MCP_GITNEXUS_AUTO_REFRESH=1 when the MCP process should refresh the index before graph queries.
{
"feature_name": "commerce-v2",
"description": "Upgrade the commerce domain while preserving v1 compatibility",
"spec_layout": "parent-child",
"subspecs": [
{ "id": "01-foundation", "title": "Data foundation", "fr": ["FR-1"] },
{ "id": "06-inventory-ledger", "title": "Inventory ledger", "fr": ["FR-2"], "dependsOn": ["01-foundation"] }
]
}🔄 Workflow Orchestration
6 intelligent orchestration tools that automatically combine multiple basic tools for one-click complex development workflows:
start_feature- New feature development (Requirements → Design → Estimation)start_bugfix- Bug fixing (SRC-8 RCA → Fix → Testing)start_onboard- Project onboarding (Generate project context docs)start_ui- UI development (Design system → Components → Code)start_product- Product design (PRD → Prototype → Design system → HTML)start_ralph- Ralph Loop (Iterative development until goal completion)
🚀 Product Design Workflow
start_product is a complete product design orchestration tool, from requirements to interactive prototype:
Workflow:
Requirements Analysis - Generate standard PRD (product overview, feature requirements, page list)
Prototype Design - Generate detailed prototype docs for each page
Design System - Generate design specifications based on product type
HTML Prototype - Generate interactive prototype viewable in browser
Project Context - Auto-update project documentation
Structured Output Additions:
start_product.structuredContent.artifacts: Artifact list (PRD, prototypes, design system, etc.)interview.structuredContent.mode:usage/questions/record
🎨 UI/UX Pro Max
4 UI/UX tools with start_ui as the unified entry point:
start_ui- One-click UI development (supports intelligent mode) (orchestration tool)ui_design_system- Intelligent design system generationui_search- UI/UX data search (BM25 algorithm)sync_ui_data- Sync latest UI/UX data locally
Note: start_ui automatically calls ui_design_system and ui_search, you don't need to call them separately.
Inspiration:
ui-ux-pro-max-skill - UI/UX design system philosophy
json-render - JSON template rendering engine
Skill Bridge for UI/PRD workflows:
start_uiandstart_productnow include a Skill Bridge section in guidance andstructuredContent.metadata.skills.Recommended skill call order:
ui-ux-pro-max→interaction-design→frontend-design.If some skills are missing, workflow continues with MCP main plan and marks unavailable skills in metadata.
Why use sync_ui_data?
Our start_ui tool relies on a rich UI/UX database (colors, icons, charts, components, design patterns, etc.) to generate high-quality design systems and code. This data comes from npm package uipro-cli, including:
🎨 Color schemes (mainstream brand colors, color palettes)
🔣 Icon libraries (React Icons, Heroicons, etc.)
📊 Chart components (Recharts, Chart.js, etc.)
🎯 Landing page templates (SaaS, e-commerce, government, etc.)
📐 Design specifications (spacing, fonts, shadows, etc.)
Data Sync Strategy:
Embedded Data: Synced at build time, works offline
Background Auto Sync: Downloads latest data to
~/.mcp-probe-kit/ui-ux-data/without changing current session outputNext-Start Activation: Newly downloaded data is applied on next process start (keeps current session deterministic)
Manual Sync: Use
sync_ui_datato force refresh cache immediately (still applies next start by default)
This ensures start_ui can generate professional-grade UI code even offline.
🎤 Requirements Interview
2 interview tools to clarify requirements before development:
interview- Structured requirements interviewask_user- AI proactive questioning
🧭 Tool Selection Guide
When to use orchestration tools vs individual tools?
Use orchestration tools (start_*) when:
✅ Need complete workflow (multiple steps)
✅ Want to automate multiple tasks
✅ Need to generate multiple artifacts (docs, code, tests, etc.)
Use individual tools when:
✅ Only need specific functionality
✅ Already have project context docs
✅ Need more fine-grained control
Common Scenario Selection
Scenario | Recommended Tool | Reason |
Develop new feature (complete flow) |
| Auto-complete: spec→estimation |
Only need feature spec docs |
| More lightweight, only generates docs |
Fix bug (complete flow) |
| Delegated SRC-8 plan (src8-1~8) → fix → test → memorize |
Only need bug analysis |
| Delegated SRC-8 plan + root-cause worksheet (methodology: docs) |
Generate design system |
| Directly generate design specs |
Develop UI components |
| Complete flow: design→components→code |
Product design (requirements to prototype) |
| One-click: PRD→prototype→HTML |
One-sentence requirement analysis |
| Generate complete project spec docs |
Project onboarding docs |
| Generate tech stack/architecture/conventions |
🚀 Quick Start
Method 1: Use directly with npx (Recommended)
No installation needed, use the latest version directly.
Cursor / Cline Configuration
Config file location:
Windows:
%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.jsonmacOS:
~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.jsonLinux:
~/.config/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Config content:
{
"mcpServers": {
"mcp-probe-kit": {
"command": "npx",
"args": ["-y", "mcp-probe-kit@4.0.0"]
}
}
}Skill & AGENTS auto-bootstrap (v3.6.3+): Every MCP tool call writes
.agents/skills/mcp-probe-kit/SKILL.mdand merges themcp-probe:contextblock intoAGENTS.md. Workspace root is auto-detected (Cursor injectsWORKSPACE_FOLDER_PATHS; OpenCode projectopencode.jsonsets cwd). No per-clientMCP_PROJECT_ROOTunless global MCP cannot resolve the workspace — then setMCP_PROJECT_ROOTor passproject_rootin tool args.
Multi-harness adapters (v3.6.8+):
AGENTS.mdand the canonical Skill stay the single rule source. If the project already has.trae/,.lingma/,.comate/,.codebuddy/, or.claude/, matching thin adapters (skill mirror or rules pointer) are written automatically — no env vars.
Version-locked CLI fallback (v4.0.0+): Bootstrap also writes
.mcp-probe-kit/bin/probe.cmd|probe.ps1|probeand.mcp-probe-kit/runtime.json. If a modified host or third-party Agent provider connects the MCP server but omits its tools from the Agent session, the generated Skill and Cursor rule instruct the Agent to invoke the same Tool Registry through the project wrapper. The wrapper pins the exact MCP package version, does not install globally, and does not modify the project'spackage.json.Memory for CLI fallback:
install-agentalso creates.mcp-probe-kit/local.env(andlocal.env.example). The CLI fallback path (probe.* exec ...) does not inherit IDEmcp.jsonenv; editlocal.envwith the sameMEMORY_*keys.
Direct CLI examples:
# JSON from stdin is the most portable option
printf '%s' '{"intent":"build a task board","scenario":"feature","project_root":"."}' \
| ./.mcp-probe-kit/bin/probe exec workflow --stdin
# Repair or install the project wrappers without a working MCP tool lease
npx --yes mcp-probe-kit@<exact-version> install-agent --project-root .Claude Desktop Configuration
Config file location:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Config content:
{
"mcpServers": {
"mcp-probe-kit": {
"command": "npx",
"args": ["-y", "mcp-probe-kit@4.0.0"]
}
}
}OpenCode Configuration
Config file location:
Project-level:
opencode.json(in project root)Global:
~/.config/opencode/opencode.json
Config content:
{
"mcp": {
"mcp-probe-kit": {
"type": "local",
"command": ["npx", "-y", "mcp-probe-kit@4.0.0"],
"enabled": true
}
}
}Note: OpenCode uses
opencode.jsonwith a different schema from Cursor/Claude Desktop. The keymcpreplacesmcpServers,commandis an array,type: "local"is required, and environment variables useenvironmentinstead ofenv. See OpenCode MCP docs for details.
Method 2: Global Installation
npm install -g mcp-probe-kitUse in config file:
{
"mcpServers": {
"mcp-probe-kit": {
"command": "mcp-probe-kit"
}
}
}Optional Memory System Setup
If you want to use memorize_asset, update_memory_asset, read_memory_asset, delete_memory_asset, and scan_and_extract_patterns, configure as follows:
Qdrant only (
MEMORY_QDRANT_URL):read_memory_asset,delete_memory_assetQdrant + embedding (all three
MEMORY_*write/search vars):search_memory,memorize_asset,update_memory_assetNo memory backend:
scan_and_extract_patterns(local scan only; persist viamemorize_assetwhen ready)
For full write/search you need both:
A Qdrant vector database
An embedding service in either
ollamaoropenai-compatiblemode
Note (CLI fallback): If you run the project wrapper (
./.mcp-probe-kit/bin/probe* exec ...) instead of native MCP, Memory env is read from.mcp-probe-kit/local.env(created byinstall-agent).
Full guide (Docker Compose for Qdrant + Infinity, ports 50008 / 50012, MCP env, smoke tests):
Option A: Qdrant + Nomic Embed / Infinity (recommended)
Lightweight local stack; no Ollama. Deploy Qdrant and nomic-embed via Docker Compose (see guide), then:
{
"mcpServers": {
"mcp-probe-kit": {
"command": "npx",
"args": ["-y", "mcp-probe-kit@4.0.0"],
"env": {
"MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
"MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
"MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
"MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
"MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
"MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
"MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
"MEMORY_SEARCH_LIMIT": "3",
"MEMORY_SUMMARY_MAX_CHARS": "280"
}
}
}
}Embedding URL must be
/embeddings(not/v1/embeddings). Qdrant requiresapi-keywhenQDRANT__SERVICE__API_KEYis set.
Option B: Qdrant + Ollama
docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
ollama pull nomic-embed-text"MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
"MEMORY_EMBEDDING_PROVIDER": "ollama",
"MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
"MEMORY_EMBEDDING_MODEL": "nomic-embed-text"Option C: Qdrant + hosted OpenAI-compatible API
"MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
"MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
"MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
"MEMORY_EMBEDDING_API_KEY": "your-api-key",
"MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"Memory Environment Variables
MEMORY_QDRANT_URL: Qdrant base URL, required for all memory featuresMEMORY_QDRANT_API_KEY: Optional Qdrant API keyMEMORY_QDRANT_COLLECTION: Collection name, defaultmcp_probe_memoryMEMORY_EMBEDDING_PROVIDER:ollamaoropenai-compatibleMEMORY_EMBEDDING_URL: Embedding endpoint URLMEMORY_EMBEDDING_API_KEY: Optional for Ollama, usually required for hosted OpenAI-compatible providersMEMORY_EMBEDDING_MODEL: Default isnomic-embed-textMEMORY_SEARCH_LIMIT: Default search result count is3MEMORY_SUMMARY_MAX_CHARS: Default summary truncation length is280
Notes
Memory write capability is enabled only when
MEMORY_QDRANT_URL,MEMORY_EMBEDDING_URL, andMEMORY_EMBEDDING_MODELare configuredMemory read capability only requires
MEMORY_QDRANT_URLQdrant collections are auto-created on first write with
CosinedistanceVector size is inferred from the first embedding response
GitNexus Managed Runtime
Applies to code_insight, start_feature, start_bugfix, and init_project_context.
GitNexus is not bundled into the mcp-probe-kit npm tarball because it includes native, platform-specific dependencies and uses the PolyForm Noncommercial license. The runtime policy is:
Use
MCP_GITNEXUS_COMMANDwhen explicitly configured.Otherwise reuse an already validated managed Sidecar from the mcp-probe-kit user cache.
Otherwise use a compatible
gitnexusCLI already available onPATH.If no runtime is installed, graph analysis degrades immediately instead of blocking the main workflow. The Agent can run
doctor gitnexus --installand retry automatically.
Validated compatibility:
Node.js | Managed GitNexus |
20-21 | Managed Sidecar disabled; use a system GitNexus CLI or degraded mode |
22+ / Windows、macOS、Linux |
|
Each managed installation is isolated by GitNexus version, operating system, CPU architecture, and Node.js major version. npm integrity is checked against the pinned release metadata before the runtime is accepted. The installer then runs gitnexus doctor plus a real TypeScript indexing probe and rejects any runtime that silently disables FTS/BM25 search.
Install or repair the managed Sidecar through the project launcher:
# Windows
& ./.mcp-probe-kit/bin/probe.cmd doctor gitnexus --install# macOS / Linux
./.mcp-probe-kit/bin/probe doctor gitnexus --installThe first installation can take several minutes because GitNexus includes native parsers, LadybugDB, ONNX Runtime, and post-install grammar builds. It runs outside the project and does not modify the project package.json or node_modules.
Available modes:
MCP_GITNEXUS_MODE=auto— default; explicit/system/existing managed runtime, otherwise fast degradation.MCP_GITNEXUS_MODE=managed— require the managed Sidecar and allow installation during the graph request.MCP_GITNEXUS_MODE=system— use only explicit/system GitNexus; never install.MCP_GITNEXUS_MODE=off— disable GitNexus.MCP_GITNEXUS_AUTO_INSTALL=1— allowautomode to install synchronously; not recommended for latency-sensitive clients.
Some GitNexus dependencies use native modules. On Windows, LadybugDB FTS also requires the OpenSSL runtime shipped with Git for Windows; mcp-probe-kit discovers its mingw64/bin directory and exposes it only to the managed child process. Set MCP_GITNEXUS_WINDOWS_RUNTIME_BIN to an equivalent directory when Git is installed in a nonstandard location. A failed prebuilt-binary download may still require Visual Studio Build Tools with the C++ workload. Installation failure never prevents the mcp-probe-kit workflow from continuing in degraded mode.
Example config using a preinstalled gitnexus CLI:
{
"mcpServers": {
"mcp-probe-kit": {
"command": "mcp-probe-kit",
"env": {
"MCP_GITNEXUS_MODE": "system",
"MCP_GITNEXUS_COMMAND": "gitnexus",
"MCP_GITNEXUS_ARGS": "mcp",
"MCP_GITNEXUS_CONNECT_TIMEOUT_MS": "30000",
"MCP_GITNEXUS_TIMEOUT_MS": "45000"
}
}
}
}Restart Client
After configuration, completely quit and reopen your MCP client.
💡 Usage Examples
Daily Development
code_review @feature.ts # Code review
gentest @feature.ts # Generate tests
gencommit # Generate commit messageNew Feature Development
start_feature user-auth "User authentication feature"
# Auto-complete: Requirements analysis → Design → Effort estimationBug Fixing
start_bugfix
# Then paste error message
# Auto-complete: Problem location → Fix solution → Test codeProduct Design
start_product "Online Education Platform" --product_type=SaaS
# Auto-complete: PRD → Prototype → Design system → HTML prototypeUI Development
start_ui "Login Page" --mode=auto
# Auto-complete: Design system → Component generation → Code outputProject Context Documentation
# Single file mode (default) - Generate a complete project-context.md
init_project_context
# Modular mode - Generate 6 category docs (suitable for large projects)
init_project_context --mode=modular
# Generates: project-context.md (index) + 5 category docsGit Work Report
# Generate daily report
git_work_report --date 2026-02-03
# Generate weekly report
git_work_report --start_date 2026-02-01 --end_date 2026-02-07
# Save to file
git_work_report --date 2026-02-03 --output_file daily-report.md
# Auto-analyze Git diff, generate concise professional report
# If direct command fails, auto-provides temp script solution (auto-deletes after execution)❓ FAQ
Q1: Tool not working or errors?
Check detailed logs:
Windows (PowerShell):
npx -y mcp-probe-kit@4.0.0 2>&1 | Tee-Object -FilePath .\mcp-probe-kit.logmacOS/Linux:
npx -y mcp-probe-kit@4.0.0 2>&1 | tee ./mcp-probe-kit.logQ2: Client not recognizing tools after configuration?
Restart client (completely quit then reopen)
Check config file path is correct
Confirm JSON format is correct, no syntax errors
Check client developer tools or logs for error messages
Q2b: Cursor shows connected but 0 tools / Agent says No MCP servers available?
This is a known Cursor-side issue: stderr may report a valid compact tool surface, while Mcp FileSystem Writer shows lease returned 0 tools and toolCount=0 — the Agent lease layer silently dropped the tool list.
Common causes:
Symptom in logs | Likely cause |
| Cursor internal payload size limit (whole list dropped silently) |
| Windows |
Settings green dot, Agent | Renderer ↔ shared-process MCP routing not wired for this session |
What we do: tools/list omits outputSchema by default, and v4.0.0 defaults to the 24-tool compact model surface. Structured output still works through structuredContent on tools/call. Restore output schemas with MCP_INCLUDE_OUTPUT_SCHEMA=1, or restore the 34-tool compatibility surface with MCP_TOOLSET=full.
What you can try:
Reload MCP or fully quit Cursor (not just close window) and reopen
Check Output → MCP for
lease returned 0 tools/ipcReady/MessagePortIn Composer, open the tools panel — ensure the server toggle is on (some versions default off)
Upgrade Cursor (3.7.36+ had Windows
ipcReadyregressions; try latest or roll back to a known-good build)If still broken after server update, report to Cursor with:
connected=true, stderr tool count, leasetoolCount=0, andshared-process MCP routing disabled
Fallback when the Host Agent path is replaced or does not bridge MCP tools:
If the MCP panel and tool cache are healthy but the actual Agent request is handled by a third-party provider with no MCP tool bridge, restarting the server cannot fix that path. Use the project wrapper generated by bootstrap:
# Windows
'{"intent":"continue the current feature","scenario":"feature","project_root":"."}' |
.\.mcp-probe-kit\bin\probe.cmd exec workflow --stdin# macOS / Linux
printf '%s' '{"intent":"continue the current feature","scenario":"feature","project_root":"."}' \
| ./.mcp-probe-kit/bin/probe exec workflow --stdinThe Skill automatically selects this route when native MCP tools are absent. plan_heartbeat, resume_plan, and converge use the same project files across separate CLI processes and native MCP sessions.
Diagnostic: .cursor/projects/<project>/mcps/user-mcp-probe-kit/
This folder is written by Cursor (Mcp FileSystem Writer), not by mcp-probe-kit. After a successful tool lease you should see:
mcps/user-mcp-probe-kit/
├── SERVER_METADATA.json
├── STATUS.md
├── tools/ ← one JSON per model-visible tool (~24 by default); Agent reads these for CallMcpTool
│ ├── init_project.json
│ └── ...
└── resources/ ← from resources/list (may exist even when tools/ is empty)State | Meaning |
|
|
| Partial write or session interrupted; Reload MCP |
| Cursor marked the server unhealthy for Agent even if Settings is green |
Healthy session: tools/ should auto-populate within seconds of MCP connect — no manual setup, no repo config.
Q3: How to update to latest version?
npx method (Recommended):
Use @latest tag in config, automatically uses latest version.
Global installation method:
npm update -g mcp-probe-kitQ4: Why can the first GitNexus installation take a long time?
GitNexus includes native parsers, a graph database, ONNX Runtime, and post-install grammar builds. A cold managed installation may take several minutes, especially on Windows or a slow network.
The normal feature and bug-fix workflows do not wait for this installation in default auto mode. They return a structured managed_install_required degradation result, and the Agent can automatically run:
& ./.mcp-probe-kit/bin/probe.cmd doctor gitnexus --installThe installation is stored in the mcp-probe-kit user cache, uses an exact compatible version and npm integrity pin, and does not modify the business project. If native installation fails, graph analysis remains degraded while the rest of the workflow continues normally.
👉 More FAQ
🤝 Contributing
Issues and Pull Requests welcome!
Improvement suggestions:
Add useful tools
Optimize existing tool prompts
Improve documentation and examples
Fix bugs
📄 License
MIT License
🔗 Related Links
Author: Kyle (小墨)
GitHub: mcp-probe-kit
npm: mcp-probe-kit
Documentation: https://mcp-probe-kit.bytezonex.com
Related Projects:
Model Context Protocol (MCP) - Official MCP protocol docs
GitHub Spec-Kit - GitHub spec-driven development toolkit
ui-ux-pro-max-skill - UI/UX design system philosophy source
json-render - JSON template rendering engine inspiration
uipro-cli - UI/UX data source
Made with ❤️ for AI-Powered Development
Acknowledgements
Thanks to the Linux.do community for its support in promoting the project and providing feedback.
Available Tools
24 toolsarchitectureARead-only
独立架构领域能力,使用 ARC-8 完成架构评估、设计、校验和漂移检查。可直接调用,也可由功能、Bug 或重构流程按需组合;MCP 负责方法、门禁与结构化证据,不替 Agent 声称绝对最优架构。
| Name | Required | Description | Default |
|---|---|---|---|
| diff | No | validate/drift 使用的真实 Git diff、revision 摘要或实现证据 | |
| mode | No | ARC-8 入口阶段:assess、design、validate 或 drift,默认 assess | |
| scope | No | 涉及模块、目录、服务或数据域 | |
| baseline | No | 已有 assess 结果、ADR、ArchitectureCandidate、Plan 或设计证据;可传对象或 JSON/文本 | |
| decision | No | ||
| non_goals | No | 本次明确不处理的内容 | |
| constraints | No | 已确认的业务与技术约束 | |
| description | Yes | 本次架构任务的完整目标,不能只传“继续”或“优化架构” | |
| alternatives | No | ||
| project_root | No | 目标项目根目录绝对路径 | |
| save_to_docs | No | 是否返回架构文档 delegated 落盘计划;工具本身不直接重写项目文档 | |
| current_facts | No | 当前架构事实,需标记 fact/inference/unknown | |
| observed_drift | No | Agent 已确认的架构偏移事实 | |
| transition_plan | No | ||
| collect_evidence | No | 是否自动调用 code_insight 并召回 Memory 证据,默认 true;测试或已提供完整证据时可设 false | |
| runtime_evidence | No | 运行结果、图谱摘要、日志、指标或验收证据 | |
| structural_causes | No | ||
| target_architecture | No | ||
| protected_invariants | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true. The description adds key behavioral context: 'MCP 负责方法、门禁与结构化证据,不替 Agent 声称绝对最优架构。' This clarifies that the tool does not guarantee optimal architecture, providing important limitations. It also implies structured evidence gathering and gating. No contradictions detected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that cover purpose, usage modes, composition guidance, and behavioral disclaimer. Every sentence provides unique value. There is no redundancy. It is front-loaded with the core purpose and then adds nuance. Perfect for a tool with many parameters that need schema-level documentation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (19 parameters, nested objects, no output schema), the description does not explain return values or the overall process of ARC-8. However, it sets appropriate expectations by stating the tool provides '方法、门禁与结构化证据'. For a highly complex architecture tool, a 4 is suitable as it covers intent and limitations without over-specifying internal details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 68%, meaning many parameters have descriptions. The description adds value by framing the overall purpose and the mode parameter as the entry point. However, many parameters (e.g., 'diff', 'baseline', 'decision') have schema descriptions that already explain them. The description does not deeply elaborate on these, but given moderate coverage, a 4 is justified for reinforcing the context without repeating schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '独立架构领域能力,使用 ARC-8 完成架构评估、设计、校验和漂移检查。' It specifies the verb ('架构推理与变更'), resource ('架构'), and the four modes (assess, design, validate, drift). This distinguishes it from siblings like 'code_review' or 'code_insight' which focus on code-level aspects, not architecture-level reasoning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says '可直接调用,也可由功能、Bug 或重构流程按需组合', indicating when to call it directly versus compose within workflows. It doesn't explicitly exclude cases or name alternatives, but hints at composition with other flows. A 4 is appropriate because it provides clear context for usage but lacks explicit when-not-to-use or alternative tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_specARead-onlyIdempotent
校验已落盘的功能规格(docs/specs//requirements|design|tasks.md)是否完整:检测残留 [填写] 占位、缺失章节、缺 FR/验收标准、FR 未进覆盖矩阵。写完规格后、进入实现前调用;未通过按报告补全后重跑。
| Name | Required | Description | Default |
|---|---|---|---|
| docs_dir | No | 文档根目录,默认为 docs | |
| feature_name | No | 要校验的规格目录名,对应 docs/specs/<feature_name>/ | |
| project_root | No | 可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already state readOnlyHint and idempotentHint, so the safety profile is covered. The description adds value by detailing what the validation checks (placeholder, missing sections, etc.) and implying a report output. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the purpose, includes the validation scope, and embeds usage timing. No superfluous words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only validation tool with no output schema, the description covers the essential context: what is checked, when to use it, and the follow-up action. It could benefit from mentioning the report format or exit behavior, but it is sufficient for correct invocation. The rich annotations compensate for missing details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already documented (e.g., feature_name pattern, project_root auto-detection). The description reinforces the feature_name path pattern but does not add substantial new semantics beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb (校验) and resource (功能规格 docs/specs/<feature_name>/requirements|design|tasks.md), and lists exact validation checks (placeholder detection, missing sections, FR/acceptance criteria, FR coverage). This distinguishes it from all sibling tools, which focus on coding, review, or memory tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to call (写完规格后、进入实现前) and the rerun loop (未通过按报告补全后重跑). It provides clear contextual guidance, though it does not explicitly mention when not to use it or name alternative tools. The when-to-use is strong enough for a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
code_insightARead-only
当用户需要基于代码图谱分析调用链、上下文和影响面时使用。默认桥接 GitNexus,支持 query/context/impact 模式;不可用时自动降级并返回原因
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | 分析目标(可选) | |
| mode | No | 分析模式:auto(默认)、query、context、impact | |
| repo | No | 仓库名称(多仓库场景可选) | |
| query | No | 查询文本(query 模式推荐) | |
| target | No | 目标符号(context/impact 模式推荐) | |
| direction | No | impact 方向:upstream / downstream | |
| max_depth | No | impact 最大深度(可选,默认 3) | |
| project_root | No | 项目根目录绝对路径。建议显式传入;当调用里还包含相对路径参数时,应统一相对该项目根目录解析,避免依赖客户端 cwd。 | |
| task_context | No | 任务上下文(可选) | |
| include_tests | No | impact 是否包含测试文件(可选,默认 false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds details on multiple analysis modes, default backend, and automatic degradation with error reporting, providing useful behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using two sentences to convey purpose, modes, and fallback behavior. Every word serves a purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the high-level purpose is clear, the description does not explain the return value or output format. Given the complexity (10 parameters, 4 modes) and no output schema, some indication of what the user gets would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add additional parameter-level meaning; the schema already describes each parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: analyzing call chains, context, and impact using a code graph. It specifies the modes (query/context/impact) and the default backend (GitNexus), making it distinct from siblings like code_review.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool (when analyzing code graph relationships) and mentions auto-degradation when unavailable. It does not provide explicit exclusions or alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
code_reviewARead-onlyIdempotent
当用户需要审查代码、真实 Git diff 或托管 Plan 的交付一致性时使用。MCP 可确定性收集 changed files、Plan 声明范围、产物、测试、公共契约、架构和 revision 证据;代码语义问题仍由 Agent 审查,不伪装成静态扫描器
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | 要审查的代码。可以是代码片段、完整文件或 git diff 输出 | |
| focus | No | 审查重点:security(安全)、performance(性能)、quality(质量)、all(全部)。可选,默认 all | |
| plan_id | No | 可选托管 Plan ID。提供后读取 Plan 状态并比较 declaredScope、产物、测试、架构证据和 revision | |
| base_ref | No | diff_mode=range 时的基线 Git ref | |
| head_ref | No | diff_mode=range 时的目标 Git ref | |
| diff_mode | No | Git diff 范围。auto 默认审查相对 HEAD 的 staged+unstaged 变更;working 仅未暂存;staged 仅已暂存;range 使用 base_ref/head_ref | |
| file_path | No | 要审查的文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取 | |
| project_root | No | 项目根目录绝对路径。未传 code/file_path 时,可从该 Git 仓库自动收集真实 diff | |
| max_diff_chars | No | 最大 diff 字符数,1000-500000,默认 120000。超出时明确标记 truncated |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注释已声明readOnlyHint和idempotentHint,描述在此基础上补充了'确定性收集 changed files、Plan声明范围、产物、测试、公共契约、架构和revision证据,代码语义问题由Agent审查',揭示了工具的行为边界和非侵入性,未与注释矛盾。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
描述仅两句话,第一句点明目的,第二句解释行为边界,无废话。结构紧凑,信息前置,非常高效。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具较复杂(9参数,无输出模式),描述覆盖了适用场景和行为边界,但未说明输出格式或返回内容。缺少输出说明使得完整性不足,但Schema已完整描述参数,基本可用。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema描述覆盖率为100%,所有9个参数已在输入模式中详细说明。描述未添加任何参数相关的内容,因此按照规则基线3分。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述明确使用'当用户需要审查代码、真实 Git diff 或托管 Plan 的交付一致性时使用',具体指出了三种适用场景,动词'审查'配合资源'代码/diff/Plan'。进一步说明工具职责边界(收集证据,不伪装静态扫描器),与兄弟工具code_insight等自然区分。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述直接给出了使用条件(审查代码、diff、Plan一致性),提供了清晰的上下文。但未明确罗列何时不适合使用,也未提及兄弟工具作为替代,因此无法达到最高分。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convergeAIdempotent
按 Delegated Plan 自己声明的证据和质量闸门关闭计划。任一未完成步骤、未决事项、必需证据或验收结果缺失都会拒绝收敛;除 requirements 外,证据只有摘要但没有 reference/revision 也不算可复核证据。调用参数只能增加证据要求,不能削弱 Plan。
| Name | Required | Description | Default |
|---|---|---|---|
| plan_id | Yes | ||
| docs_dir | No | 规格目录,默认 docs | |
| feature_name | No | 可选;提供后 converge 会真实调用 check_spec | |
| project_root | No | ||
| required_evidence_kinds | No | 可选附加要求;与 Plan.requiredEvidenceKinds 合并,不能移除 Plan 已声明要求 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond annotations: it clarifies that evidence without reference/revision is not reviewable, explains rejection conditions, and states the monotonic nature of evidence requirements. This complements the annotations (idempotentHint=true, destructiveHint=false) by detailing exactly what the tool checks and rejects, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded paragraph of three sentences. Every sentence adds essential information: the core function, rejection criteria, and parameter constraint. There is no redundancy or filler, achieving high density of useful guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters, no output schema, and moderate complexity. The description covers behavior and constraints well but fails to specify what the tool returns on success (e.g., confirmation, next steps) or any side effects. Given the absence of an output schema, these gaps reduce completeness for an agent invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 60% schema coverage, the description compensates by explaining parameter behavior for 'required_evidence_kinds' (only additive, not removing) and 'feature_name' (triggers check_spec call). While 'docs_dir' and 'project_root' are not elaborated, the description adds meaningful constraints beyond the schema, earning above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to close a Delegated Plan by verifying its declared evidence and quality gates. It uses specific verbs ('收敛' meaning converge/close) and identifies the resource ('Delegated Plan'). This distinguishes it from sibling tools like plan_heartbeat (status check) and resume_plan (resume), making selection unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides strong usage context by detailing conditions for rejection (incomplete steps, missing evidence) and the constraint that parameters can only add evidence requirements, not weaken the Plan. While it does not explicitly name alternative tools, it implicitly advises using converge only when all gate criteria are met. The guidance is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimateARead-onlyIdempotent
当用户需要估算开发工作量、评估任务时间时使用。估算开发工作量,输出故事点、时间范围(乐观/正常/悲观)、风险点
| Name | Required | Description | Default |
|---|---|---|---|
| team_size | No | 团队规模(人数)。可选,默认为 1 | |
| code_context | No | 相关代码或文件上下文。可选,有助于更准确的估算 | |
| experience_level | No | 经验水平:junior(初级)、mid(中级)、senior(高级)。可选,默认为 mid | |
| task_description | No | 任务描述。可以是简短的自然语言(如'估算开发工作量')或详细的任务说明 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and idempotentHint=true, so the tool's safe, non-destructive nature is covered. The description adds value by stating the outputs (故事点、时间范围、风险点), giving agents insight into what they can expect. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long: the first states the usage trigger, and the second summarizes outputs. Every word is purposeful with no redundancy or filler. Front-loaded with the most critical information (when to use).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 optional parameters and no output schema, the description covers the core purpose, usage context, and output types. It could be improved by mentioning that all parameters are optional or by providing a hint about the output structure (e.g., how risk points are represented), but it is largely complete for an estimation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning structured descriptions already exist for all four parameters. The tool description does not add any additional meaning beyond the schema, such as explaining how 'experience_level' affects estimation or the relationship between 'team_size' and output ranges. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: estimating development workload and task time. It specifies outputs (story points, time ranges, risk points) and the action verb '估算' (estimate) plus resource '开发工作量' (development workload). This clearly distinguishes it from siblings like 'plan_heartbeat' or 'init_project', which are not estimation-focused.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description starts with '当用户需要估算开发工作量、评估任务时间时使用' (use when user needs to estimate development workload or assess task time), providing a clear usage context. However, it does not explicitly mention when not to use this tool or compare it to sibling tools, leaving some ambiguity for alternative selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gencommitARead-onlyIdempotent
当用户需要生成 Git commit 消息时使用。返回 Conventional Commits 规范说明、步骤、输出模板和示例,供 AI 根据变更内容生成最终 commit message。它不直接代写最终消息,也不应被判定为空结果
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Commit 类型:fixed(修复)、feat(新功能)、docs(文档)、style(样式)、chore(杂项)、refactor(重构)、test(测试)。可选,会自动识别 | |
| changes | No | 代码变更内容。可以是 git diff 输出、变更描述或自然语言。如果不提供,工具会提示执行 git diff | |
| project_root | No | 可选,目标 Git 仓库根目录或其子目录。未提供 changes 时用于确认当前项目确实是 Git 仓库 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
已有注释标明 readOnlyHint=true 和 idempotentHint=true,描述进一步补充了工具的具体行为:返回规范说明、步骤、模板和示例,不直接写入最终消息,并提示不应该被当作空结果。两者一致,无矛盾,且提供了额外上下文。得 4 分。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
仅用两句话清晰表达了目的、输入、输出和行为约束,信息密度高且前置关键内容,没有冗余。得满分 5 分。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
说明了返回值(规范、步骤、模板、示例),也提示了未提供 changes 时的行为(在参数 schema 中说明)。缺少输出 schema,但描述已涵盖关键信息。在兄弟工具较多的情况下,整体完整度较好,得 4 分。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
所有三个参数的 schema 描述覆盖率是 100%,描述本身没有再重复参数细节。根据规则,高覆盖率下基数为 3 分,且描述未新增参数含义,因此得 3 分。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
明确说明用于“生成 Git commit 消息”,并指明返回规范说明、步骤、模板和示例。描述中指出了工具的行为边界(不直接代写最终消息),但未明确与兄弟工具(如 git_work_report)区分,因此为 4 分。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
指出了使用场景(需要生成 commit 消息时),并澄清了工具不直接写入消息、不应被判断为空结果。但没有明确说明何时不适合使用,也未列出替代工具。因此得 3 分。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gentestARead-onlyIdempotent
当用户需要为代码生成单元测试时使用。指南型工具:注入 code/file_path 与测试清单,由 Agent 生成完整测试代码;MCP 不自动生成或运行测试
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | 要生成测试的代码。可以是函数、类或模块 | |
| file_path | No | 要生成测试的源文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取 | |
| framework | No | 测试框架:jest、vitest、mocha。可选,会自动识别项目使用的框架 | |
| project_root | No | 项目根目录绝对路径。配合 file_path 解析相对路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations (readOnlyHint, idempotentHint) by clarifying that it is a '指南型工具' (guide-type tool) where 'MCP 不自动生成或运行测试' (MCP does not automatically generate or run tests) and '由 Agent 生成完整测试代码' (the agent generates complete test code). This explains the tool's role as a guide, not a direct executor. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise: two sentences, front-loaded with the purpose, and every sentence provides essential information. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 100% schema coverage, no output schema, and no nested objects, the description adequately covers the tool's purpose and behavior. It explains the guide nature and the agent's role. A minor gap is the lack of information about the return value or output, but this is mitigated by the readOnlyHint and the description's clarity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description does not add any parameter-specific information beyond what the schema already provides. The mention of '注入 code/file_path 与测试清单' is too vague to add meaningful semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '当用户需要为代码生成单元测试时使用' (use when user needs to generate unit tests for code). It specifies the verb (generate), resource (unit tests), and distinguishes from sibling tools like code_review or refactor by being exclusively for test generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the usage condition: '当用户需要为代码生成单元测试时使用' (use when user needs to generate unit tests). It provides clear context but does not list when not to use or mention alternatives, which would be beneficial given the large sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
git_work_reportARead-onlyIdempotent
基于 Git diff 分析生成工作报告(日报/周期报)
核心功能:
支持日报模式(单个日期)和周期报模式(日期范围)
自动读取指定日期的所有 Git 提交
对每个提交执行 git show 获取完整 diff
使用 AI 分析 diff 内容提取实际工作内容
输出格式:
只输出「工作内容」部分
每条以 - 开头,中文,简洁专业
格式:做了什么 + 改了哪里/达到什么效果
不输出:提交哈希、文件列表、统计数据、风险总结
使用示例:
日报:git_work_report --date 2026-1-27
周期报:git_work_report --start_date 2026-2-1 --end_date 2026-2-6
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | 单个日期,格式 YYYY-MM-DD(日报模式) | |
| end_date | No | 结束日期,格式 YYYY-MM-DD(周期报模式) | |
| start_date | No | 起始日期,格式 YYYY-MM-DD(周期报模式) | |
| output_file | No | 可选,输出文件路径 | |
| project_root | No | 目标 Git 仓库根目录或其子目录;省略时按当前 MCP 工作区解析 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits: it reads Git diffs, uses AI to analyze content, and outputs only the 'work content' section. The annotations confirm readOnlyHint=true and idempotentHint=true, which aligns with the read-only behavior described. The description adds details about the output format and what is excluded, going 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections for core functionality, output format, and usage examples. It is concise for the amount of information conveyed, though some redundancy exists (e.g., both title and description mention 'Git 工作报告'). Each section adds value without unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity, 5 parameters with full schema coverage, no output schema, and read-only annotations, the description is complete. It explains the tool's mechanism, output format, and usage, leaving no obvious gaps for an agent to misinterpret. The lack of output schema is compensated by the explicit output format rules.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 adds significant value by explaining the date/start_date/end_date parameters in natural language with usage examples, clarifying the two modes. It also explains project_root's fallback behavior ('按当前 MCP 工作区解析'), which is not in the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's purpose: generating work reports from Git diff analysis, for daily and periodic modes. It explicitly states the verb '生成' (generate) and the resource '工作报告' (work report), distinguishing it from siblings like 'gencommit' or 'code_review' which are related but different operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage contexts: daily mode (single date) and periodic mode (date range), with concrete examples. However, it does not explicitly state when NOT to use this tool or compare to alternatives like 'gencommit' for commit messages, though the context is clear from the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
init_projectAIdempotent
当用户提供一句话需求时使用。基于 Spec-Driven Development 理念,分析需求并生成完整的项目规格文档(需求分析/技术设计/任务拆解)。适合项目初期的需求澄清和规划
| Name | Required | Description | Default |
|---|---|---|---|
| input | No | 项目需求描述。可以是一句话需求(如'创建电商网站')或简短的功能描述,工具会自动分析并生成详细的规格文档 | |
| project_name | No | 项目名称。可选,默认为'新项目' | |
| project_root | No | 可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。 init_project 是新项目初始化入口:显式传入尚不存在的绝对路径时,会创建该目录并仅写入 MCP 托管的 Skill、AGENTS.md 与 CLI fallback 文件;文件系统根目录、用户家目录和系统目录会被拒绝。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false. The description adds behavioral context by stating the tool is based on 'Spec-Driven Development' and generates specific document types (需求分析/技术设计/任务拆解). The parameter description for `project_root` further details file creation behavior and path restrictions. This adds value beyond the annotations, though the description itself could be more explicit about side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loads the key use case, and contains no filler. Every sentence adds value: usage trigger, methodology, and output content. It is efficiently structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the tool's output type (specification document with sections) but does not specify the return format (e.g., file path, text content, or JSON). Since there is no output schema, the description should clarify what the tool returns to the caller. The parameter `project_root` is well-documented, but the overall completeness is lacking for a tool that generates documents without explicit output guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% – all parameters have descriptions. The `input` parameter description explains the allowed format (one-sentence or short description), `project_name` provides a default value, and `project_root` has a detailed explanation of path resolution and edge cases. The tool description does not add parameter-specific information beyond what is already in the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '当用户提供一句话需求时使用' (use when user provides a one-sentence requirement) and '生成完整的项目规格文档' (generate complete project spec doc). It identifies the action (analyze requirement and generate documents) and context (initial project clarification). However, it does not explicitly differentiate from sibling tools like `init_project_context` or `start_product`, which could be confused for similar use cases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies when to use the tool ('当用户提供一句话需求时使用', '适合项目初期的需求澄清和规划'), providing clear context. However, it does not mention when not to use it or list alternative tools for different scenarios (e.g., `init_project_context` for adding context to existing projects). No explicit exclusions or guidance on choosing between this and similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
init_project_contextAIdempotent
生成/更新项目上下文写作计划(delegated):MCP 写入 AGENTS.md 与 layout.json;project-context 分类文档与 graph-insights 由 Agent 按返回的 plan 落盘。新功能请先 start_feature,修 bug 请先 start_bugfix。
| Name | Required | Description | Default |
|---|---|---|---|
| locale | No | AGENTS.md 语言;默认根据 README 探测 | |
| output | No | 高级:索引文件相对路径,如 AGENTS.md | |
| docs_dir | No | 附属文档根目录(project-context、graph-insights)。默认 docs | |
| filename | No | 高级:与 output_dir 合用,默认 project-context.md | |
| output_dir | No | 高级:索引所在目录,如 .claude/rules | |
| index_style | No | 索引风格:auto(默认 AGENTS.md)、agents、legacy(docs/project-context.md) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotent and non-destructive. Description adds that the tool writes to specific files (AGENTS.md, layout.json) and delegates follow-up actions. Could be more explicit about side effects or overwrite behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loading the core action and directing use cases. It packs essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While purpose and usage are clear, the description lacks details on the returned plan structure and how the agent should use it. With no output schema, more completeness would improve agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each parameter described. The description does not add additional semantic context beyond the schema, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates/updates project context writing plan, writing AGENTS.md and layout.json, and directs the agent to write associated documents. It distinguishes from sibling tools like start_feature and start_bugfix by indicating separate workflows.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs when to use alternatives: for new features use start_feature, for bug fixes use start_bugfix. This provides clear context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interviewBRead-onlyIdempotent
当用户需求不明确、需要澄清需求时使用。需求访谈工具,在开发前通过结构化提问澄清需求,避免理解偏差和返工;生成访谈记录文件供后续 start_feature/add_feature 使用;仅支持 feature 类型
| Name | Required | Description | Default |
|---|---|---|---|
| answers | No | 访谈问题的回答(JSON 对象,key 为问题 ID,value 为回答内容)。用于提交访谈结果 | |
| description | No | 功能描述(如'实现用户登录功能'),用于开始访谈。可以是简短的自然语言描述 | |
| feature_name | No | 功能名称(kebab-case 格式,如 user-login)。可选,会自动从描述中提取 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims the tool generates interview record files (side effects), but annotations declare readOnlyHint=true and idempotentHint=true, which imply no state changes. This is a direct contradiction, severely undermining transparency. Without annotations, the description itself would provide some behavioral context, but the contradiction makes it misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that packs essential information: use case, function, output, and type constraint. It is concise but could be better structured (e.g., separate sentences for clarity). Still, it efficiently conveys key points.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested object parameter ('answers') and no output schema. The description fails to explain the structure of the interview answers or the format of the generated record file. It mentions the output is used by other tools but lacks details needed for correct invocation and understanding the tool's full behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add significant meaning beyond the schema descriptions for 'answers', 'description', and 'feature_name'. It mentions that 'answers' are for submitting results and 'description' starts the interview, but this is already captured in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: clarify requirements through structured questions when they are unclear. It specifies that it generates interview record files for subsequent tools and only supports 'feature' type. While it lacks explicit differentiation from sibling tools like 'ask_user', the purpose is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use: when user requirements are unclear and need clarification. It also mentions the output is used by start_feature/add_feature, indicating the tool's place in the workflow. However, it does not provide when-not-to-use scenarios or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_heartbeatAIdempotent
由 Agent 在 Delegated Plan 执行过程中记录轻量检查点。首次调用必须提供完整 plan;后续合并步骤、证据、产物、候选经验、验收结果、运行证据和 revision。除 requirements 外,每条用于收敛的 evidence 必须至少提供 reference 或 revision,否则 converge 会明确拒绝。只记录状态,不代替 Agent 执行。
| Name | Required | Description | Default |
|---|---|---|---|
| plan | No | 首次 heartbeat 必填的完整 Delegated Plan Contract | |
| status | No | ||
| plan_id | Yes | Delegated Plan 的稳定 planId | |
| evidence | No | ||
| artifacts | No | ||
| project_root | No | 项目根目录;省略时按工作区解析 | |
| skipped_steps | No | ||
| declared_scope | No | 本次 Plan 已确认的目录、模块、契约、排除项等作用域;省略时保留原值 | |
| current_step_id | No | ||
| runtime_evidence | No | ||
| unresolved_items | No | ||
| memory_candidates | No | ||
| acceptance_results | No | ||
| completed_step_ids | No | ||
| last_verified_revision | No | ||
| architecture_candidates | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond annotations: it clarifies the tool only records state, does not execute the agent's actions, and reveals a dependency on 'converge' (which will reject evidence lacking reference/revision). Annotations already declare idempotentHint=true and destructiveHint=false, which the description does not contradict. The description reinforces the non-destructive, bookkeeping nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of about 100 Chinese characters, front-loading the purpose and then key constraints. Every sentence adds value. It could be slightly improved with bullet points or separate sections for first call vs subsequent calls, but it is already very concise without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 16 parameters, deep nesting, no output schema, and is part of a complex Delegated Plan workflow, the description is too minimal. It does not explain what the tool returns (likely just success/failure), how to handle conflicts or errors, the lifecycle of a heartbeat sequence, or what happens if the plan_id is invalid. For such complexity, more completeness is needed to guide the agent fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 25% (4 of 16 parameters have descriptions). The description compensates by stating that 'plan' is required on first call and that subsequent calls merge various categories like evidence, artifacts, acceptance_results, etc. However, it does not explain individual parameter semantics for fields like 'unresolved_items', 'last_verified_revision', or the differences between 'memory_candidates' and 'architecture_candidates'. The constraint for evidence (reference/revision) is helpful but insufficient for the overall parameter richness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool records lightweight checkpoints during Delegated Plan execution, with the specific verb '记录' and resource '检查点'. It also distinguishes itself from siblings by focusing on status recording rather than execution ('只记录状态,不代替 Agent 执行'). However, it does not explicitly differentiate from all 24 sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states that the first call must provide a complete plan and subsequent calls merge various fields (steps, evidence, artifacts, etc). It also provides a key constraint: for convergence, evidence must include 'reference' or 'revision' unless it is 'requirements'. This gives clear usage context. However, no explicit 'when NOT to use' or comparison to alternatives like 'converge' is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refactorARead-onlyIdempotent
当用户需要重构代码、改善代码结构时使用。指南型工具:注入 code/file_path 与重构清单,由 Agent 分析后输出重构计划 JSON;MCP 不自动修改源文件
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | 要重构的代码 | |
| goal | No | 重构目标:improve_readability(可读性)、reduce_complexity(复杂度)、performance(性能)。可选 | |
| file_path | No | 要重构的文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取 | |
| project_root | No | 项目根目录绝对路径。配合 file_path 解析相对路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: it is a guidance tool that injects code/file_path, analyzes, and outputs a refactoring plan JSON, and explicitly states that MCP does not modify source files. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The description is front-loaded with the purpose and immediately clarifies the tool's non-modifying nature and output format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters (0 required) and no output schema, the description explains the output (refactoring plan JSON) and behavior (no file modification). It lacks details on how conflicting inputs (both code and file_path) are handled, but overall it is sufficient for an agent to understand the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters adequately. The description mentions 'injection of code/file_path' but adds no new information beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool is for refactoring code and improving code structure. It specifies it's a guidance tool that outputs a refactoring plan JSON without modifying files, distinguishing it from sibling tools like fix_bug or add_feature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explicitly indicates when to use ('当用户需要重构代码、改善代码结构时使用') and mentions it's a guidance tool with no automatic file modification. It does not explicitly state when not to use, but the context is clear enough for an agent to choose appropriately among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
resume_planARead-onlyIdempotent
从 .mcp-probe-kit/plans/ 读取 Delegated Plan 检查点,按依赖计算下一可执行步骤、阻塞步骤和 resumeContext。plan_id 可选;省略时自动恢复当前项目最近更新的 active/blocked Plan。本工具只读取状态,不替 Agent 执行;返回 mustContinue=true 后 Agent 必须立即执行 nextStep/nextTool,逐步调用 plan_heartbeat,禁止只汇报恢复结果后停止。
| Name | Required | Description | Default |
|---|---|---|---|
| plan_id | No | 可选;省略时选择当前项目最近更新的 active/blocked Plan | |
| project_root | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint and idempotentHint. The description adds valuable context: it performs dependency calculation, returns a mustContinue flag, and imposes a post-call behavior requirement. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise and front-loaded with the core action. But it could be slightly more streamlined; the behavioral prohibition at the end, while important, adds length. Still, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (reading a plan, computing dependencies, returning a mustContinue flag), the description covers the purpose, usage, and key behavioral constraints. It mentions the output components (next step, blocked steps, resumeContext) but lacks a detailed return structure since no output schema exists. It is nearly complete but could elaborate on the format of the returned data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50% (only plan_id has a description). The description adds meaning for plan_id by explaining its optionality and default behavior. However, project_root is entirely undocumented in both schema and description, so the description does not fully compensate for the coverage gap. Baseline 3 is appropriate given the partial addition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (read, calculate), resource (Delegated Plan checkpoint from .mcp-probe-kit/plans/), and specific outputs (next executable step, blocked steps, resumeContext). It distinguishes itself from siblings like plan_heartbeat by noting it only reads state and does not execute, and contrasts with execution-oriented tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly explains when to use the tool (resume a plan, both with explicit plan_id or auto-detection), what to do after invocation (must immediately execute nextStep/nextTool and call plan_heartbeat), and what not to do (prohibited from only reporting results and stopping). This provides clear guidance and alternatives by implication.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_bugfixCRead-only
当用户需要找问题、修 bug、排查异常时使用。默认按 SRC-8(TBP-inspired)编排:收敛边界→真因工作表→修复→测试→记忆沉淀。
| Name | Required | Description | Default |
|---|---|---|---|
| docs_dir | No | 文档目录。可选,默认 docs | |
| description | No | Bug 描述(与 error_message 同义;仅传 description 时自动作为错误信息) | |
| stack_trace | No | 堆栈跟踪。可选 | |
| code_context | No | 相关代码。可选 | |
| feature_name | No | 关联功能规格名(对应 docs/specs/<feature_name>/)。提供后或能自动识别时,修复闭环会插入 check_spec 闸门 | |
| project_root | No | 项目根目录绝对路径。建议显式传入;docs_dir 等相对路径参数应统一相对该项目根目录解析,避免依赖客户端 cwd。 | |
| analysis_mode | No | 分析方法。默认 src8;tbp8 为兼容别名 | |
| error_message | No | 错误信息(可与 description 二选一) | |
| loop_max_rounds | No | 需求 loop 最大轮次(默认 2) | |
| template_profile | No | 模板档位:auto(默认,自动选择 guided/strict)、guided(普通模型友好)或 strict(结构更紧凑) | |
| requirements_mode | No | 需求模式:steady(默认,直接修复)或 loop(需求澄清与补全) | |
| loop_assumption_cap | No | 每轮假设上限(默认 3) | |
| loop_question_budget | No | 每轮最多提问数量(默认 5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool performs bug fixing (mutation), but annotations declare readOnlyHint=true. This is a direct contradiction. The description does not disclose any behavioral traits beyond the workflow steps, and the annotation conflict severely undermines transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is two sentences, front-loaded with purpose, and contains no extraneous information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 13 parameters and no output schema, the description only outlines the workflow process. It fails to describe return values, side effects, or prerequisites. The annotation contradiction further reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with all parameters having descriptions. The tool description adds no additional semantic meaning beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool is for finding problems, fixing bugs, and troubleshooting anomalies. It also describes the default workflow steps. However, it does not differentiate from the sibling tool 'fix_bug', which appears to have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies when to use (bug fixing/troubleshooting) but provides no explicit when-not-to-use or alternatives. Given the presence of sibling 'fix_bug', the lack of comparative guidance could lead to confusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_featureARead-only
新功能、功能增强、大版本升级或跨模块研发的首选入口。Agent 必须把当前对话已确认的完整目标、范围、模块、阶段和约束汇总到 description;用户只说“继续/开始/往下做”时不得原样透传。默认 spec_layout=auto,复杂多模块或多阶段需求会先生成 parent-child 子规格拆分计划,再进入 add_feature→check_spec→实现。仅在规格布局和子规格已明确、且只需渲染规格模板时才直接用 add_feature。
| Name | Required | Description | Default |
|---|---|---|---|
| docs_dir | No | 文档输出目录,默认为 docs | |
| subspecs | No | parent-child 的子规格定义;每项包含 id、title、fr 和可选 dependsOn | |
| description | No | 功能详细描述。应汇总当前对话已经确认的完整范围、模块、阶段和约束,不要只传最后一句简短确认;该字段也用于自动判断 flat / parent-child。 | |
| spec_layout | No | 规格布局:auto(默认,复杂多模块需求自动选择 parent-child)、flat 或 parent-child。显式值优先于自动判断。 | |
| feature_name | No | 功能名称(kebab-case 格式,如 user-auth)。可选,如果不提供会从 description 自动提取 | |
| project_root | No | 项目根目录绝对路径。建议显式传入;docs_dir 等相对路径参数应统一相对该项目根目录解析,避免依赖客户端 cwd。 | |
| loop_max_rounds | No | 需求 loop 最大轮次(默认 2) | |
| template_profile | No | 模板档位:auto(默认,自动选择 guided/strict)、guided(普通模型友好)或 strict(结构更紧凑) | |
| requirements_mode | No | 需求模式:steady(默认,直接生成规格)或 loop(需求澄清与补全) | |
| loop_assumption_cap | No | 每轮假设上限(默认 3) | |
| loop_question_budget | No | 每轮最多提问数量(默认 5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint: true and openWorldHint: true, which might seem contradictory since the tool orchestrates feature creation. The description clarifies its orchestrative, non-destructive nature: it generates specs and plans but doesn't modify code. It adds behavioral detail beyond annotations (e.g., the auto detection of parent-child layout). However, it could be more transparent about exactly what side effects occur (e.g., file creation, project state changes).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately concise for a tool with many parameters and complex orchestration. It front-loads the essential purpose and usage guidelines. However, it's somewhat dense and could benefit from clear separation of concerns (e.g., bullet points for different behavioral aspects) to improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (11 parameters, conditional orchestration, sibling differentiation needs), the description covers core aspects: purpose, when-to-use, orchestration flow, and key parameter semantics. It lacks an output description, but there is no output schema to rely on. It could be more complete by explaining the overall workflow in more detail, but it's adequate for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds significant value by explaining the semantics of description (must summarize confirmed scope, not just pass through user's last confirmation) and spec_layout's auto behavior (complex needs trigger parent-child planning). It also clarifies that feature_name is optional and auto-extracted. However, the description doesn't detail all 11 parameters individually.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is the primary entry point for new features, enhancements, major version upgrades, and cross-module development. It distinguishes itself from siblings like start_bugfix (bug fixes) and start_onboard (onboarding) by its scope and purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit when-to-use guidance: it's the first choice for complex multi-module or multi-phase requirements. It also explicitly states when NOT to use it and what to use instead: '仅在规格布局和子规格已明确、且只需渲染规格模板时才直接用 add_feature.' This is excellent usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_onboardARead-only
当用户需要快速上手新项目时使用。编排:生成上下文文档。
| Name | Required | Description | Default |
|---|---|---|---|
| docs_dir | No | 文档目录。可选,默认 docs | |
| project_path | No | 项目根目录绝对路径。建议显式传入;如果还传 docs_dir 等相对路径,应统一相对该项目根目录解析。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and openWorldHint=true, indicating the tool is safe and may access external resources. The description adds that it generates context documentation, but does not detail the process or potential side effects beyond what annotations convey. No contradiction detected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two very concise sentences that convey the purpose and process without any wasted words. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two optional parameters and no output schema, the description is adequate but minimal. It does not explain what 'context documentation' entails, prerequisites, or expected outcomes, which could improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers both parameters with descriptions, achieving 100% coverage. The tool description does not add any additional semantics beyond the schema, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is used for quickly starting a new project by generating context documentation. It distinguishes from siblings like 'init_project' by focusing on onboarding and documentation generation, but does not explicitly differentiate from potentially similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear context for when to use the tool (when starting a new project), but does not specify when not to use it or mention alternative tools among the siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_productARead-onlyIdempotent
产品设计完整工作流入口。返回闭环 delegated plan:Agent 生成 PRD 与原型文档,调用 ui_design_system 和 start_ui 完成设计系统及可交互 HTML 原型,并更新项目上下文;不会引用不存在的 gen_prd/gen_prototype 工具。
| Name | Required | Description | Default |
|---|---|---|---|
| docs_dir | No | 文档输出目录(可选)。默认为 'docs'。所有文档将保存到此目录下的子目录中。 | |
| constraints | No | 核心约束(可选)。多个约束建议用分号分隔。未提供时会尝试从 description 的“核心约束:”或“约束:”段落提取。 | |
| description | No | 产品描述。详细描述产品的目标、功能、用户需求等信息。这是整个工作流的基础输入。如果提供了 requirements_file,此参数可选。 | |
| product_name | No | 产品名称(可选)。如果不提供,将使用默认名称'新产品'。 | |
| product_type | No | 产品类型(可选)。用于生成设计系统,如 'SaaS'、'E-commerce'、'Healthcare' 等。默认为 'SaaS'。 | |
| project_root | No | 目标项目根目录绝对路径。建议显式传入,避免文档和 Skill 写入 MCP 包安装目录。 | |
| target_users | No | 目标用户(可选)。例如:TypeScript 项目维护者、企业管理员、普通消费者。未提供时会尝试从 description 的“目标用户:”段落提取。 | |
| requirements_file | No | 需求文档文件路径(可选)。如果提供,将读取该文件的完整内容作为产品需求。支持 Markdown、文本等格式。例如:'docs/requirements.md'、'project.md'。 | |
| skip_design_system | No | 跳过设计系统生成(可选)。默认为 false。如果设置为 true,将不生成设计系统。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations state readOnlyHint=true and idempotentHint=true, but the description describes a workflow that runs multiple steps and may produce artifacts. It does add context that it will call ui_design_system and start_ui, and update project context, which goes beyond annotations. It also clarifies that it won't reference non-existent tools. This adds useful behavioral context without contradicting annotations (since readOnlyHint=true might be questionable but not contradicted).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with the main purpose. It covers key workflow actions and mentions tool dependencies in the first sentence. It's not overly verbose, but could possibly be more concise by removing redundant mentions. Still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a workflow-orchestrating tool with 9 parameters (many optional) and no output schema, the description provides essential context about the workflow, what it generates, and which tools it integrates. It also clarifies implicit behavior. It lacks details about return values or step-by-step behavior, but given the schema covers parameters well, this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, meaning all 9 parameters are documented in the schema itself. The tool description does not add significant additional parameter semantics beyond what the schema already provides, except maybe the overall workflow context. Therefore, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly explains the tool's purpose: it is an entry point for a complete product design workflow that generates a delegated plan, creates PRD and prototype documents, and calls other tools. It also explicitly clarifies that it doesn't reference non-existent tools, which helps distinguish it from potential alternative tools. However, it doesn't provide strong differentiation from sibling tools like start_feature or start_ui, but the workflow context is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool: when starting a product design workflow from scratch, it will orchestrate the process and produce documents. It also explicitly notes it doesn't use gen_prd/gen_prototype, preventing misuse. However, it doesn't clearly say when NOT to use it or mention alternatives like start_feature, so it's not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_ralphARead-onlyIdempotent
用于需要多轮小步实现、每轮真实验证和正式收敛的长任务。返回有界 Delegated Plan、每轮 Heartbeat 证据契约和可选前台辅助脚本;不自动运行循环、不创建后台进程。安全停止不等于成功
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | 本次要完成的目标/需求描述。例如:'实现用户认证功能'、'修复登录 bug' | |
| mode | No | 运行模式:safe(安全模式,默认)、normal(普通模式)。安全模式包含多重保护机制 | |
| max_rounds | No | max_iterations 的兼容别名;建议新调用统一使用 max_iterations | |
| cli_command | No | Claude Code CLI 命令名。默认:'claude-code'(可能需要改为 'claude') | |
| max_minutes | No | 最大运行分钟数。safe 模式默认:25 | |
| project_root | No | 目标项目根目录绝对路径。省略时从当前已确认工作区解析 | |
| test_command | No | 每轮执行的测试命令。默认:'npm test'(会在首轮由 agent 识别正确命令) | |
| confirm_every | No | 每几轮要求人工确认。safe 模式默认:1(每轮都确认) | |
| max_diff_lines | No | git diff 变更行数超过此值停止(防失控)。safe 模式默认:300 | |
| max_iterations | No | 最大迭代轮数。safe 模式默认:8 | |
| confirm_timeout | No | 确认等待秒数,超时自动停止。safe 模式默认:20 | |
| max_same_output | No | 输出重复多少次停止(防卡死)。safe 模式默认:2 | |
| cooldown_seconds | No | 每轮后冷却秒数。safe 模式默认:8 | |
| completion_promise | No | 完成条件描述。默认:'tests passing + requirements met' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations include readOnlyHint: true and idempotentHint: true, which together suggest the tool is safe and non-destructive. However, the description describes initiating a multi-round cycle that likely makes changes (e.g., '每轮真实验证' implies code modifications and test runs). This contradicts the readOnlyHint, which should indicate a read-only operation. The description does not disclose behavioral traits beyond what annotations provide; it adds that the tool does not create background processes and that safe stop does not equal success, but these are minor. The contradiction between description and annotation is significant, warranting a score of 2.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at roughly two sentences. It front-loads the purpose and key behavioral traits. However, the structure could be improved by separating the 'returns' section from the 'not' statements for clarity. There is no redundancy, and each clause serves a purpose, earning a 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 14 parameters with 100% schema coverage, no output schema, and no nested objects. The description provides a high-level overview of what the tool does and its return values (Delegated Plan, Heartbeat evidence, optional front-end scripts). However, given the complexity of the tool (a multi-round development orchestrator), more context about the return format, how to use the evidence, and how failures are reported would be valuable. The presence of annotation contradictions further reduces completeness, making a 3 appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning every parameter already has a description in the schema. The tool description does not add any parameter-specific semantics beyond what the schema provides. However, there are 14 parameters, many with default behaviors tied to mode, and the description does not summarize key relationships (e.g., how mode affects max_rounds, confirm_every, etc.). The baseline for 100% coverage is 3, but given the complexity and the fact that the description could have provided a high-level overview of parameter interactions, a 4 is given because the schema descriptions are detailed and the tool description's lack of additional parameter guidance is not severely detrimental.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool is for long tasks requiring multi-turn small-step implementation with real verification and formal convergence. It uses specific verbs like 'start_ralph' implying initiation of a process, and contrasts with siblings by mentioning '多轮小步实现、每轮真实验证和正式收敛' which distinguishes it from simpler tools like start_feature or start_bugfix. However, the description is in Chinese, which might reduce clarity for non-Chinese speakers, and the title 'Ralph 循环开发编排' provides additional context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the tool is for '长任务' (long tasks) and mentions what it does not do: '不自动运行循环、不创建后台进程' and '安全停止不等于成功'. This gives implicit guidance on when to use it (complex, iterative tasks) and when not (if you need automatic loops or background processes). However, it does not explicitly name alternatives or provide exclusion criteria relative to the listed sibling tools like 'plan_heartbeat' or 'resume_plan', so a 4 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_uiARead-only
编排 UI 设计与实现:先锁定视觉方向和信息架构,再生成关键页面,后续通过真实截图评分与迭代完成验收。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | 执行模式:auto(智能)/ manual(默认) | manual |
| avoid | No | 项目特定禁用项,使用逗号分隔。 | |
| density | No | 内容密度。 | |
| template | No | 模板名称(可选,不提供则自动生成) | |
| framework | No | 目标框架:react、vue、html(默认 react) | react |
| references | No | 参考产品或方法,使用逗号分隔,如 Linear、Apple。 | |
| description | Yes | UI 需求描述(如 '登录页面'、'用户列表'、'设置页面') | |
| screen_type | No | 页面类型,如 professional-dashboard、workflow-console、marketing-page。未传时自动判断。 | |
| project_root | No | 项目根目录绝对路径。建议显式传入;如果存在 docs 或模板等相对路径解析,应统一相对该项目根目录处理,避免依赖客户端 cwd。 | |
| target_score | No | 截图视觉验收目标分数。 | |
| loop_max_rounds | No | 需求 loop 最大轮次(默认 2) | |
| target_audience | No | 目标用户及其专业程度、使用频率和主要压力。 | |
| template_profile | No | 模板档位:auto(默认,自动选择 guided/strict)、guided(普通模型友好)或 strict(结构更紧凑) | auto |
| visual_direction | No | 视觉方向名称。可使用内置方向或自定义方向。 | |
| brand_personality | No | 品牌气质,使用逗号分隔,如 精准、可信、克制。 | |
| requirements_mode | No | 需求模式:steady(默认)或 loop(需求澄清与补全) | |
| review_max_rounds | No | 截图评审未达标时的最大迭代轮次。每轮必须重新生成真实截图并评分。 | |
| loop_assumption_cap | No | 每轮假设上限(默认 3) | |
| loop_question_budget | No | 每轮最多提问数量(默认 5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint: true, openWorldHint: true, and idempotentHint: false. The description goes beyond these by disclosing the iterative loop (screenshot scoring), the planning phase before generation, and the acceptance criteria. This adds behavioral context: the tool may ask questions (loop), generate multiple revisions, and depend on external screenshot evaluation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: one sentence that captures the three-phase workflow. It front-loads the purpose before listing any parameters. However, given the complexity (19 parameters, multi-step process), a slightly expanded description might be warranted to avoid ambiguity. Minimal waste, but could do more without bloating.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high parameter count (19), rich annotations (readOnly, openWorld), and no output schema, the description provides a solid high-level narrative. It explains the iterative and screenshot-based nature of the tool. However, it does not mention what happens if 'loop' mode or 'auto' mode is selected, nor the role of templates or project_root. Still, for a tool with this complexity, the description is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description does not add much parameter-level semantics beyond what the schema already provides. It mentions locking visual direction and generating pages, which loosely maps to visual_direction and description, but does not explain complex parameters like requirements_mode or loop_* in greater depth. No extra value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool orchestrates UI design and development: first locking visual direction and information architecture, then generating key pages, and finally iterating with real screenshots. This is a specific verb+resource (orchestrate UI development) with a step-by-step process. It is reasonably distinguishable from sibling tools like ui_design_system (which likely focuses on design tokens) and ui_search (which is about searching).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used for starting a UI design workflow, but it does not explicitly state when to use this vs. siblings like ui_design_system or converge. There is no guidance on prerequisites (e.g., existing project root?), exclusion criteria, or alternative tools. The context is implicit but not explicit enough to help an agent decide between siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ui_design_systemARead-onlyIdempotent
生成可执行的视觉方向,而不是风格标签拼盘。输出核心任务、信息架构、内容密度、排版与色彩策略、组件原则、明确禁用项和截图验收标准。
| Name | Required | Description | Default |
|---|---|---|---|
| avoid | No | 项目特定禁用项,如 卡片瀑布、大标题、装饰性图标、大面积空白。 | |
| stack | No | 技术栈,如 react、nextjs、vue、nuxt、html。仅影响实现建议,不决定审美。 | |
| density | No | 内容密度。专业后台通常 compact,通用产品 comfortable,营销页 spacious。 | |
| keywords | No | 兼容旧调用方。等价于 brand_personality,后续应改用 brand_personality。 | |
| references | No | 参考产品或设计方法,如 Linear、Apple、Vercel。只提取结构方法,不照抄视觉。 | |
| description | No | 页面或产品的核心任务、关键内容和使用场景。不要只写视觉形容词。 | |
| screen_type | No | 页面类型,如 professional-dashboard、workflow-console、marketing-page、commerce-catalog、commerce-detail、content-workspace。未传时自动判断。 | |
| product_type | Yes | 产品类型,如 SaaS、交易系统、医疗应用、电商或品牌官网。 | |
| target_score | No | 视觉验收目标分数。低于该分数不得交付。 | |
| target_audience | No | 目标用户及其专业程度、使用频率和主要压力。 | |
| visual_direction | No | 指定视觉方向。内置方向包括 editorial-precision、operational-clarity、calm-trust、product-storytelling、commerce-focus,也支持自定义名称。 | |
| brand_personality | No | 品牌气质,如 精准、可信、克制。字符串可用逗号分隔。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and idempotentHint=true, meaning the tool doesn't change state and produces consistent results. The description aligns with this by describing generation of a design direction without side effects. It adds value by detailing what the tool outputs (e.g., 'explicit disallowed items'), which goes beyond annotation hints. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that front-loads the core distinction and lists all output deliverables. Every phrase is meaningful, and there is no redundancy. It efficiently uses 50 characters to set context and then specifies outcomes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given high parameter schema coverage (100%) and annotations, the description is largely complete. It could be improved by briefly mentioning the return format or what '截图验收标准' entails, but the core directive is clear. The absence of an output schema is compensated by the description listing concrete deliverables.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description goes beyond by emphasizing that output is executable, not just style tags. While most parameters have thorough schema descriptions, the tool description adds a strategic layer that clarifies purpose, compensating for the lack of extra parameter details in the tool description itself. The description effectively frames all 12 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates executable visual direction, distinguishing it from a 'collage of style tags'. It lists specific outputs: core tasks, information architecture, content density, typography, color strategy, component principles, explicit disallowed items, and screenshot acceptance criteria. This differentiates it from sibling tools like 'ui_search' (searching) and 'start_ui' (a different UI task).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly sets context by contrasting with 'style tag collages', suggesting when not to use it. However, it does not explicitly state when to use this tool versus alternatives like 'start_ui' or 'converge'. The sibling list is diverse, but no direct exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ui_searchARead-onlyIdempotent
搜索页面结构、组件、交互规范和实现参考。新 UI 流程优先使用 structure 模式按任务和页面类型选择信息架构;旧 search/catalog/template 模式继续兼容。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | structure(页面结构,推荐)、search(通用数据)、catalog(组件目录)、template(旧模板兼容)。 | search |
| limit | No | 返回结果数量。structure 模式默认 3、最多 5;其他模式默认 10、最多 50。 | |
| query | No | 核心任务或搜索关键词。structure 模式应描述用户要完成的任务。 | |
| stack | No | search 模式技术栈过滤。 | |
| density | No | structure 模式的目标内容密度。 | |
| category | No | search 模式数据类别:colors、icons、charts、landing、products、typography、styles、ux-guidelines、shadcn-blocks、shadcn-components、ui-themes、ui-guidelines-vercel。 | |
| min_score | No | search 模式最小相关性得分。 | |
| screen_type | No | structure 模式的页面类型,如 professional-dashboard、workflow-console、marketing-page、commerce-catalog。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and openWorldHint=false, covering the safety profile. The description adds context about mode behavior (e.g., structure mode limits) but does not disclose additional behavioral traits such as authorization requirements or rate limits. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that front-load the core purpose and immediately follow with mode guidance. Every sentence serves a clear purpose without repetition or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 optional parameters, no output schema, and annotations present, the description covers the modes and usage well. It could be more complete by describing the return format or result structure, but the mode descriptions and parameter schema together provide sufficient context for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented in the schema. The overall description does not add significant meaning beyond what each parameter's description already provides. Baseline score of 3 is appropriate as the schema carries the burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for page structures, components, interaction specs, and implementation references. It distinguishes between four modes (structure, search, catalog, template) and recommends structure mode for new UI processes. However, it does not explicitly differentiate this tool from sibling tools like ui_design_system.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides internal mode usage guidance: prefer structure mode for new UI processes, while old modes remain compatible. It does not, however, give guidance on when to use this tool versus alternative sibling tools, nor does it mention excluded scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflowARead-onlyIdempotent
仅当 Agent 阅读 Skill 和各工具 description 后仍不确定该调用哪个 MCP 时使用的兜底选择指南。workflow 不做自然语言意图识别:scenario=auto(默认)只返回工具选择规则与速查表,不从 intent 猜 firstTool;Agent 根据完整对话自行判断或澄清。若 Agent 已明确场景,可传显式 scenario 获取该场景的确定性 firstTool、phases 和参数提示。同时确保用户项目已存在 .agents/skills/mcp-probe-kit/SKILL.md 与 AGENTS.md 中的 Skill 引用(缺失则自动创建/更新)。
| Name | Required | Description | Default |
|---|---|---|---|
| intent | No | 可选上下文摘要。scenario=auto 时仅供指南展示,不参与自动分类;显式 scenario 时用于生成该场景的参数提示和阶段说明。 | |
| scenario | No | 可选:显式场景。默认 auto 只返回 Agent 工具选择指南,不从 intent 推断场景;Agent 已确定场景时传 feature/bugfix/ui/... 获取确定性流程说明 | |
| project_root | No | 可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool '确保用户项目已存在 .agents/skills/mcp-probe-kit/SKILL.md 与 AGENTS.md 中的 Skill 引用(缺失则自动创建/更新)' which implies file creation/update side-effects. This contradicts the annotation 'readOnlyHint: true' which indicates no state mutation. This is a serious contradiction, scoring 1 per the rubric.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences in Chinese, front-loaded with the tool's purpose. Each sentence adds essential information: usage condition, behavior distinction, alternative usage, and side-effect. No wasted words; compact yet complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large set of sibling tools (23), the description covers the core use case (routing guidance) and parameter behavior. It mentions return types (table, deterministic flow, parameter hints) but lacks explicit output format details. With no output schema, a bit more specificity on the response structure would improve completeness. Otherwise adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions. The description adds behavioral meaning beyond the schema: it explains that 'intent' is only for display when scenario=auto and not used for classification, and that 'scenario' controls whether to return a table or deterministic flow. This enhances usability beyond the raw enum values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool as a fallback guidance when unsure which MCP to use. It distinguishes itself from sibling tools (which are direct task tools) by stating it returns a tool selection table or deterministic flow, not performing intent recognition itself. The verb '兜底选择指南' (fallback selection guide) is specific and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: only after reading Skill and tool descriptions when still uncertain. Also provides when-not: '不做自然语言意图识别' (does not do NLU) and that the agent should judge or clarify. Describes alternative scenarios: use explicit scenario for deterministic flow. Clear boundary conditions.
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. Dates show when Glama detected each change.
26 tool updates
v4.0.0- Removed
add_feature - Added
architecture - Removed
ask_user - Changed
code_review6 fields changed- added
Input schema / properties / base_refAdded value: +{ + "description": "diff_mode=range 时的基线 Git ref", + "type": "string" +} - added
Input schema / properties / diff_modeAdded value: +{ + "description": "Git diff 范围。auto 默认审查相对 HEAD 的 staged+unstaged 变更;working 仅未暂存;staged 仅已暂存;range 使用 base_ref/head_ref", + "enum": [ + "auto", + "working", + "staged", + "range" + ], + "type": "string" +} - added
Input schema / properties / head_refAdded value: +{ + "description": "diff_mode=range 时的目标 Git ref", + "type": "string" +} - added
Input schema / properties / max_diff_charsAdded value: +{ + "description": "最大 diff 字符数,1000-500000,默认 120000。超出时明确标记 truncated", + "type": "number" +} - added
Input schema / properties / plan_idAdded value: +{ + "description": "可选托管 Plan ID。提供后读取 Plan 状态并比较 declaredScope、产物、测试、架构证据和 revision", + "type": "string" +} - changed
Input schema / properties / project_root / descriptionPrevious value: -"项目根目录绝对路径。配合 file_path 解析相对路径"New value: +"项目根目录绝对路径。未传 code/file_path 时,可从该 Git 仓库自动收集真实 diff"
- Added
converge - Removed
delete_memory_asset - Changed
estimate3 fields changed- added
Input schema / properties / experience_level / enumAdded value: +[ + "junior", + "mid", + "senior" +] - added
Input schema / properties / team_size / minimumAdded value: +1 - changed
Input schema / properties / team_size / typePrevious value: -"number"New value: +"integer"
- Removed
fix_bug - Changed
gencommit1 field changed- added
Input schema / properties / project_rootAdded value: +{ + "description": "可选,目标 Git 仓库根目录或其子目录。未提供 changes 时用于确认当前项目确实是 Git 仓库", + "type": "string" +}
- Changed
git_work_report1 field changed- added
Input schema / properties / project_rootAdded value: +{ + "description": "目标 Git 仓库根目录或其子目录;省略时按当前 MCP 工作区解析", + "type": "string" +}
- Changed
init_project1 field changed- changed
Input schema / properties / project_root / descriptionPrevious value: -"可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。"New value: +"可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。 init_project 是新项目初始化入口:显式传入尚不存在的绝对路径时,会创建该目录并仅写入 MCP 托管的 Skill、AGENTS.md 与 CLI fallback 文件;文件系统根目录、用户家目录和系统目录会被拒绝。"
- Removed
memorize_asset - Added
plan_heartbeat - Removed
read_memory_asset - Added
resume_plan - Removed
scan_and_extract_patterns - Removed
search_memory - Changed
start_feature3 fields changed- changed
Input schema / properties / description / descriptionPrevious value: -"功能详细描述。可以是简短的自然语言(如'开发用户认证功能')或详细的需求说明"New value: +"功能详细描述。应汇总当前对话已经确认的完整范围、模块、阶段和约束,不要只传最后一句简短确认;该字段也用于自动判断 flat / parent-child。" - changed
Input schema / properties / spec_layout / descriptionPrevious value: -"规格布局:flat(默认)或 parent-child(由 Agent 落盘母/子规格)"New value: +"规格布局:auto(默认,复杂多模块需求自动选择 parent-child)、flat 或 parent-child。显式值优先于自动判断。" - changed
Input schema / properties / spec_layout / enumPrevious value: -[ - "flat", - "parent-child" -]New value: +[ + "auto", + "flat", + "parent-child" +]
- Changed
start_product3 fields changed- added
Input schema / properties / constraintsAdded value: +{ + "description": "核心约束(可选)。多个约束建议用分号分隔。未提供时会尝试从 description 的“核心约束:”或“约束:”段落提取。", + "type": "string" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "目标项目根目录绝对路径。建议显式传入,避免文档和 Skill 写入 MCP 包安装目录。", + "type": "string" +} - added
Input schema / properties / target_usersAdded value: +{ + "description": "目标用户(可选)。例如:TypeScript 项目维护者、企业管理员、普通消费者。未提供时会尝试从 description 的“目标用户:”段落提取。", + "type": "string" +}
- Changed
start_ralph2 fields changed- added
Input schema / properties / max_roundsAdded value: +{ + "description": "max_iterations 的兼容别名;建议新调用统一使用 max_iterations", + "type": "number" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "目标项目根目录绝对路径。省略时从当前已确认工作区解析", + "type": "string" +}
- Changed
start_ui9 fields changed- added
Input schema / properties / avoidAdded value: +{ + "description": "项目特定禁用项,使用逗号分隔。", + "type": "string" +} - added
Input schema / properties / brand_personalityAdded value: +{ + "description": "品牌气质,使用逗号分隔,如 精准、可信、克制。", + "type": "string" +} - added
Input schema / properties / densityAdded value: +{ + "description": "内容密度。", + "enum": [ + "compact", + "comfortable", + "spacious" + ], + "type": "string" +} - added
Input schema / properties / referencesAdded value: +{ + "description": "参考产品或方法,使用逗号分隔,如 Linear、Apple。", + "type": "string" +} - added
Input schema / properties / review_max_roundsAdded value: +{ + "default": 3, + "description": "截图评审未达标时的最大迭代轮次。每轮必须重新生成真实截图并评分。", + "maximum": 5, + "minimum": 1, + "type": "number" +} - added
Input schema / properties / screen_typeAdded value: +{ + "description": "页面类型,如 professional-dashboard、workflow-console、marketing-page。未传时自动判断。", + "type": "string" +} - added
Input schema / properties / target_audienceAdded value: +{ + "description": "目标用户及其专业程度、使用频率和主要压力。", + "type": "string" +} - added
Input schema / properties / target_scoreAdded value: +{ + "default": 8.5, + "description": "截图视觉验收目标分数。", + "maximum": 10, + "minimum": 7.5, + "type": "number" +} - added
Input schema / properties / visual_directionAdded value: +{ + "description": "视觉方向名称。可使用内置方向或自定义方向。", + "type": "string" +}
- Removed
sync_ui_data - Changed
ui_design_system12 fields changed- added
Input schema / properties / avoidAdded value: +{ + "description": "项目特定禁用项,如 卡片瀑布、大标题、装饰性图标、大面积空白。", + "oneOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "type": "array" + } + ] +} - added
Input schema / properties / brand_personalityAdded value: +{ + "description": "品牌气质,如 精准、可信、克制。字符串可用逗号分隔。", + "oneOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "type": "array" + } + ] +} - added
Input schema / properties / densityAdded value: +{ + "description": "内容密度。专业后台通常 compact,通用产品 comfortable,营销页 spacious。", + "enum": [ + "compact", + "comfortable", + "spacious" + ], + "type": "string" +} - changed
Input schema / properties / description / descriptionPrevious value: -"系统说明(推荐):详细描述产品功能、特点、使用场景。例如:'政府类网站,需要权威、可信、易用的设计风格,面向公众提供政务服务'。这将帮助推理引擎生成更准确的设计方案。"New value: +"页面或产品的核心任务、关键内容和使用场景。不要只写视觉形容词。" - changed
Input schema / properties / keywords / descriptionPrevious value: -"关键词(可选):逗号分隔的关键词,如 'professional, modern, trustworthy, authoritative'(专业、现代、可信、权威)。用于辅助匹配设计风格。"New value: +"兼容旧调用方。等价于 brand_personality,后续应改用 brand_personality。" - changed
Input schema / properties / product_type / descriptionPrevious value: -"产品类型(必填):SaaS, E-commerce, Healthcare, Fintech, Government(政府), Education(教育), Portfolio, Agency 等。这是推理引擎的核心输入。"New value: +"产品类型,如 SaaS、交易系统、医疗应用、电商或品牌官网。" - added
Input schema / properties / referencesAdded value: +{ + "description": "参考产品或设计方法,如 Linear、Apple、Vercel。只提取结构方法,不照抄视觉。", + "oneOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "type": "array" + } + ] +} - added
Input schema / properties / screen_typeAdded value: +{ + "description": "页面类型,如 professional-dashboard、workflow-console、marketing-page、commerce-catalog、commerce-detail、content-workspace。未传时自动判断。", + "type": "string" +} - changed
Input schema / properties / stack / descriptionPrevious value: -"技术栈(推荐):react, vue, nextjs, nuxtjs, tailwind, html, svelte, astro 等。用于生成特定技术栈的实现建议和配置代码。"New value: +"技术栈,如 react、nextjs、vue、nuxt、html。仅影响实现建议,不决定审美。" - changed
Input schema / properties / target_audience / descriptionPrevious value: -"目标用户(可选):如 'B2B企业', 'C端消费者', '政府公务员', '普通市民', '开发者' 等。帮助推理引擎选择合适的设计风格。"New value: +"目标用户及其专业程度、使用频率和主要压力。" - added
Input schema / properties / target_scoreAdded value: +{ + "default": 8.5, + "description": "视觉验收目标分数。低于该分数不得交付。", + "maximum": 10, + "minimum": 7.5, + "type": "number" +} - added
Input schema / properties / visual_directionAdded value: +{ + "description": "指定视觉方向。内置方向包括 editorial-precision、operational-clarity、calm-trust、product-storytelling、commerce-focus,也支持自定义名称。", + "type": "string" +}
- Changed
ui_search9 fields changed- changed
Input schema / properties / category / descriptionPrevious value: -"数据类别(search 模式):colors、icons、charts、landing、products、typography、styles、ux-guidelines、shadcn-blocks、shadcn-components、ui-themes、ui-guidelines-vercel 等"New value: +"search 模式数据类别:colors、icons、charts、landing、products、typography、styles、ux-guidelines、shadcn-blocks、shadcn-components、ui-themes、ui-guidelines-vercel。" - added
Input schema / properties / densityAdded value: +{ + "description": "structure 模式的目标内容密度。", + "enum": [ + "compact", + "comfortable", + "spacious" + ], + "type": "string" +} - changed
Input schema / properties / limit / descriptionPrevious value: -"返回结果数量(默认 10,范围 1-50)"New value: +"返回结果数量。structure 模式默认 3、最多 5;其他模式默认 10、最多 50。" - changed
Input schema / properties / min_score / descriptionPrevious value: -"最小相关性得分(默认 0,范围 0-100)"New value: +"search 模式最小相关性得分。" - changed
Input schema / properties / mode / descriptionPrevious value: -"搜索模式:search(搜索 UI/UX 数据,默认)、catalog(查看组件目录)、template(搜索 UI 模板)"New value: +"structure(页面结构,推荐)、search(通用数据)、catalog(组件目录)、template(旧模板兼容)。" - added
Input schema / properties / mode / enumAdded value: +[ + "structure", + "search", + "catalog", + "template" +] - changed
Input schema / properties / query / descriptionPrevious value: -"搜索关键词(支持中英文,如 'button'、'按钮'、'primary color'、'主色调')。catalog 模式不需要此参数。"New value: +"核心任务或搜索关键词。structure 模式应描述用户要完成的任务。" - added
Input schema / properties / screen_typeAdded value: +{ + "description": "structure 模式的页面类型,如 professional-dashboard、workflow-console、marketing-page、commerce-catalog。", + "type": "string" +} - changed
Input schema / properties / stack / descriptionPrevious value: -"技术栈过滤(仅 search 模式):react、vue、nextjs、nuxtjs、svelte、astro、flutter、react-native、swiftui、jetpack-compose 等"New value: +"search 模式技术栈过滤。"
- Removed
update_memory_asset - Changed
workflow3 fields changed- changed
Input schema / properties / intent / descriptionPrevious value: -"用户目标或任务描述(自然语言)"New value: +"可选上下文摘要。scenario=auto 时仅供指南展示,不参与自动分类;显式 scenario 时用于生成该场景的参数提示和阶段说明。" - changed
Input schema / properties / scenario / descriptionPrevious value: -"可选:显式场景;默认 auto 从 intent 推断"New value: +"可选:显式场景。默认 auto 只返回 Agent 工具选择指南,不从 intent 推断场景;Agent 已确定场景时传 feature/bugfix/ui/... 获取确定性流程说明" - changed
Input schema / properties / scenario / enumPrevious value: -[ - "auto", - "feature", - "bugfix", - "ui", - "explore", - "commit", - "review", - "refactor", - "onboard", - "spec", - "memory" -]New value: +[ + "auto", + "feature", + "bugfix", + "ui", + "product", + "ralph", + "architecture", + "arch", + "explore", + "commit", + "work_report", + "report", + "test", + "review", + "refactor", + "onboard", + "spec", + "memory" +]
4 tool updates
v3.7.0- Changed
add_feature5 fields changed- added
Input schema / properties / docs_dir / maxLengthAdded value: +240 - added
Input schema / properties / feature_name / maxLengthAdded value: +120 - added
Input schema / properties / feature_name / patternAdded value: +"^[a-z0-9]+(?:-[a-z0-9]+)*$" - added
Input schema / properties / spec_layoutAdded value: +{ + "description": "规格布局:flat(默认)或 parent-child(由 Agent 落盘母/子规格)", + "enum": [ + "flat", + "parent-child" + ], + "type": "string" +} - added
Input schema / properties / subspecsAdded value: +{ + "description": "parent-child 的子规格定义;每项包含 id、title、fr 和可选 dependsOn", + "items": { + "additionalProperties": false, + "properties": { + "dependsOn": { + "description": "依赖的子规格 ID", + "items": { + "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$", + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "fr": { + "description": "负责的 FR-n 列表", + "items": { + "pattern": "^FR-\\d+$", + "type": "string" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + }, + "id": { + "description": "唯一的小写 kebab-case 子规格 ID", + "maxLength": 120, + "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$", + "type": "string" + }, + "title": { + "description": "子规格标题", + "maxLength": 120, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "id", + "title", + "fr" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" +}
- Changed
check_spec3 fields changed- added
Input schema / properties / docs_dir / maxLengthAdded value: +240 - added
Input schema / properties / feature_name / maxLengthAdded value: +120 - added
Input schema / properties / feature_name / patternAdded value: +"^[a-z0-9]+(?:-[a-z0-9]+)*$"
- Changed
start_feature5 fields changed- added
Input schema / properties / docs_dir / maxLengthAdded value: +240 - added
Input schema / properties / feature_name / maxLengthAdded value: +120 - added
Input schema / properties / feature_name / patternAdded value: +"^[a-z0-9]+(?:-[a-z0-9]+)*$" - added
Input schema / properties / spec_layoutAdded value: +{ + "description": "规格布局:flat(默认)或 parent-child(由 Agent 落盘母/子规格)", + "enum": [ + "flat", + "parent-child" + ], + "type": "string" +} - added
Input schema / properties / subspecsAdded value: +{ + "description": "parent-child 的子规格定义;每项包含 id、title、fr 和可选 dependsOn", + "items": { + "additionalProperties": false, + "properties": { + "dependsOn": { + "description": "依赖的子规格 ID", + "items": { + "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$", + "type": "string" + }, + "maxItems": 50, + "type": "array" + }, + "fr": { + "description": "负责的 FR-n 列表", + "items": { + "pattern": "^FR-\\d+$", + "type": "string" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + }, + "id": { + "description": "唯一的小写 kebab-case 子规格 ID", + "maxLength": 120, + "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$", + "type": "string" + }, + "title": { + "description": "子规格标题", + "maxLength": 120, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "id", + "title", + "fr" + ], + "type": "object" + }, + "maxItems": 50, + "type": "array" +}
- Changed
workflow1 field changed- added
Input schema / properties / project_rootAdded value: +{ + "description": "可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。", + "type": "string" +}
5 tool updates
v3.6.11- Changed
code_review2 fields changed- added
Input schema / properties / file_pathAdded value: +{ + "description": "要审查的文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取", + "type": "string" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "项目根目录绝对路径。配合 file_path 解析相对路径", + "type": "string" +}
- Changed
fix_bug9 fields changed- added
Input schema / properties / actual_behaviorAdded value: +{ + "description": "实际行为。可选,用于 TBP-1 现象定义", + "type": "string" +} - changed
Input schema / properties / analysis_mode / descriptionPrevious value: -"分析方法。默认 tbp8(丰田问题分析 8 步法)"New value: +"分析方法。默认 src8(Software Root-Cause 8-step,受丰田 TBP 启发);tbp8 为兼容别名" - changed
Input schema / properties / code_context / descriptionPrevious value: -"相关代码。可选"New value: +"相关代码或图谱摘要。可选" - added
Input schema / properties / expected_behaviorAdded value: +{ + "description": "期望行为。可选", + "type": "string" +} - added
Input schema / properties / file_pathAdded value: +{ + "description": "相关代码文件路径(相对 project_root 或绝对路径)。未传 code_context 时从磁盘读取", + "type": "string" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "项目根目录绝对路径。配合 file_path 解析相对路径", + "type": "string" +} - added
Input schema / properties / steps_to_reproduceAdded value: +{ + "description": "复现步骤。可选,用于 TBP-2 时间线", + "type": "string" +} - added
Input schema / properties / success_sampleAdded value: +{ + "description": "成功/正常样本描述(Step 4 对比用)。无则 Agent 须标注对比样本不足", + "type": "string" +} - added
Input schema / properties / verification_targetAdded value: +{ + "description": "验收目标(Step 3 SMART 目标),如:原复现步骤通过、特定测试绿", + "type": "string" +}
- Changed
gentest2 fields changed- added
Input schema / properties / file_pathAdded value: +{ + "description": "要生成测试的源文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取", + "type": "string" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "项目根目录绝对路径。配合 file_path 解析相对路径", + "type": "string" +}
- Changed
refactor2 fields changed- added
Input schema / properties / file_pathAdded value: +{ + "description": "要重构的文件路径(相对 project_root 或绝对路径)。未传 code 时从磁盘读取", + "type": "string" +} - added
Input schema / properties / project_rootAdded value: +{ + "description": "项目根目录绝对路径。配合 file_path 解析相对路径", + "type": "string" +}
- Changed
start_bugfix3 fields changed- changed
Input schema / properties / analysis_mode / descriptionPrevious value: -"分析方法。默认 tbp8(丰田问题分析 8 步法)"New value: +"分析方法。默认 src8;tbp8 为兼容别名" - added
Input schema / properties / descriptionAdded value: +{ + "description": "Bug 描述(与 error_message 同义;仅传 description 时自动作为错误信息)", + "type": "string" +} - changed
Input schema / properties / error_message / descriptionPrevious value: -"错误信息"New value: +"错误信息(可与 description 二选一)"
16 tool updates
v3.6.3- Added
check_spec - Changed
code_insight1 field changed- changed
Input schema / properties / project_root / descriptionPrevious value: -"项目根目录。当前客户端未把工作区作为进程 cwd 传进来时,建议显式指定"New value: +"项目根目录绝对路径。建议显式传入;当调用里还包含相对路径参数时,应统一相对该项目根目录解析,避免依赖客户端 cwd。"
- Added
delete_memory_asset - Changed
init_project1 field changed- added
Input schema / properties / project_rootAdded value: +{ + "description": "可选。项目根目录绝对路径;未传时自动从 MCP 客户端工作区解析(如 Cursor 注入 WORKSPACE_FOLDER_PATHS、OpenCode/客户端配置的 cwd 等)。仅边缘场景需手动传入。", + "type": "string" +}
- Changed
init_project_context6 fields changed- changed
Input schema / properties / docs_dir / descriptionPrevious value: -"文档目录。可选,默认 docs"New value: +"附属文档根目录(project-context、graph-insights)。默认 docs" - added
Input schema / properties / filenameAdded value: +{ + "description": "高级:与 output_dir 合用,默认 project-context.md", + "type": "string" +} - added
Input schema / properties / index_styleAdded value: +{ + "description": "索引风格:auto(默认 AGENTS.md)、agents、legacy(docs/project-context.md)", + "enum": [ + "auto", + "agents", + "legacy" + ], + "type": "string" +} - added
Input schema / properties / localeAdded value: +{ + "description": "AGENTS.md 语言;默认根据 README 探测", + "enum": [ + "en", + "zh-CN" + ], + "type": "string" +} - added
Input schema / properties / outputAdded value: +{ + "description": "高级:索引文件相对路径,如 AGENTS.md", + "type": "string" +} - added
Input schema / properties / output_dirAdded value: +{ + "description": "高级:索引所在目录,如 .claude/rules", + "type": "string" +}
- Added
memorize_asset - Added
read_memory_asset - Added
scan_and_extract_patterns - Added
search_memory - Changed
start_bugfix3 fields changed- added
Input schema / properties / docs_dirAdded value: +{ + "description": "文档目录。可选,默认 docs", + "type": "string" +} - added
Input schema / properties / feature_nameAdded value: +{ + "description": "关联功能规格名(对应 docs/specs/<feature_name>/)。提供后或能自动识别时,修复闭环会插入 check_spec 闸门", + "type": "string" +} - changed
Input schema / properties / project_root / descriptionPrevious value: -"项目根目录。当前客户端未把工作区作为进程 cwd 传进来时,建议显式指定"New value: +"项目根目录绝对路径。建议显式传入;docs_dir 等相对路径参数应统一相对该项目根目录解析,避免依赖客户端 cwd。"
- Changed
start_feature1 field changed- changed
Input schema / properties / project_root / descriptionPrevious value: -"项目根目录。当前客户端未把工作区作为进程 cwd 传进来时,建议显式指定"New value: +"项目根目录绝对路径。建议显式传入;docs_dir 等相对路径参数应统一相对该项目根目录解析,避免依赖客户端 cwd。"
- Changed
start_onboard1 field changed- changed
Input schema / properties / project_path / descriptionPrevious value: -"项目路径。可选,默认当前目录"New value: +"项目根目录绝对路径。建议显式传入;如果还传 docs_dir 等相对路径,应统一相对该项目根目录解析。"
- Changed
start_ui1 field changed- added
Input schema / properties / project_rootAdded value: +{ + "description": "项目根目录绝对路径。建议显式传入;如果存在 docs 或模板等相对路径解析,应统一相对该项目根目录处理,避免依赖客户端 cwd。", + "type": "string" +}
- Changed
ui_search1 field changed- changed
Input schema / properties / category / descriptionPrevious value: -"数据类别(仅 search 模式):colors(颜色)、icons(图标)、charts(图表)、landing(落地页)、products(产品)、typography(字体)、styles(样式)、ux-guidelines(UX 指南)、web-interface(Web 界面)等"New value: +"数据类别(search 模式):colors、icons、charts、landing、products、typography、styles、ux-guidelines、shadcn-blocks、shadcn-components、ui-themes、ui-guidelines-vercel 等"
- Added
update_memory_asset - Added
workflow
40 tool updates
v3.0.16- Added
add_feature - Removed
analyze_project - Added
ask_user - Removed
check_deps - Added
code_insight - Changed
code_review3 fields changed- added
Input schema / additionalPropertiesAdded value: +true - changed
Input schema / properties / code / descriptionPrevious value: -"需要审查的代码"New value: +"要审查的代码。可以是代码片段、完整文件或 git diff 输出" - changed
Input schema / properties / focus / descriptionPrevious value: -"审查重点:quality, security, performance, all(默认 all)"New value: +"审查重点:security(安全)、performance(性能)、quality(质量)、all(全部)。可选,默认 all"
- Removed
convert - Removed
debug - Removed
detect_shell - Added
estimate - Removed
explain - Removed
fix - Added
fix_bug - Removed
genapi - Removed
genchangelog - Changed
gencommit3 fields changed- added
Input schema / additionalPropertiesAdded value: +true - changed
Input schema / properties / changes / descriptionPrevious value: -"代码变更内容(可选,默认使用 git diff)"New value: +"代码变更内容。可以是 git diff 输出、变更描述或自然语言。如果不提供,工具会提示执行 git diff" - changed
Input schema / properties / type / descriptionPrevious value: -"提交类型:fixed, fix, feat, docs, style, chore, refactor, test"New value: +"Commit 类型:fixed(修复)、feat(新功能)、docs(文档)、style(样式)、chore(杂项)、refactor(重构)、test(测试)。可选,会自动识别"
- Removed
gendoc - Removed
genpr - Removed
genreadme - Removed
gensql - Changed
gentest3 fields changed- added
Input schema / additionalPropertiesAdded value: +true - changed
Input schema / properties / code / descriptionPrevious value: -"需要测试的代码"New value: +"要生成测试的代码。可以是函数、类或模块" - changed
Input schema / properties / framework / descriptionPrevious value: -"测试框架:jest, vitest, mocha(默认 jest)"New value: +"测试框架:jest、vitest、mocha。可选,会自动识别项目使用的框架"
- Removed
genui - Added
git_work_report - Changed
init_project3 fields changed- added
Input schema / additionalPropertiesAdded value: +true - changed
Input schema / properties / input / descriptionPrevious value: -"项目需求描述(可以是文字描述或文件内容)"New value: +"项目需求描述。可以是一句话需求(如'创建电商网站')或简短的功能描述,工具会自动分析并生成详细的规格文档" - changed
Input schema / properties / project_name / descriptionPrevious value: -"项目名称"New value: +"项目名称。可选,默认为'新项目'"
- Added
init_project_context - Removed
init_setting - Added
interview - Removed
perf - Changed
refactor3 fields changed- added
Input schema / additionalPropertiesAdded value: +true - changed
Input schema / properties / code / descriptionPrevious value: -"需要重构的代码"New value: +"要重构的代码" - changed
Input schema / properties / goal / descriptionPrevious value: -"重构目标:improve_readability, reduce_complexity, extract_function 等"New value: +"重构目标:improve_readability(可读性)、reduce_complexity(复杂度)、performance(性能)。可选"
- Removed
resolve_conflict - Removed
split - Added
start_bugfix - Added
start_feature - Added
start_onboard - Added
start_product - Added
start_ralph - Added
start_ui - Added
sync_ui_data - Added
ui_design_system - Added
ui_search
1 tool update
v1.0.0- Changed
gencommit1 field changed- changed
Input schema / properties / type / descriptionPrevious value: -"提交类型:feat, fix, docs, style, refactor, test, chore"New value: +"提交类型:fixed, fix, feat, docs, style, chore, refactor, test"
23 tool updates
- First observed
analyze_project - First observed
check_deps - First observed
code_review - First observed
convert - First observed
debug - First observed
detect_shell - First observed
explain - First observed
fix - First observed
genapi - First observed
genchangelog - First observed
gencommit - First observed
gendoc - First observed
genpr - First observed
genreadme - First observed
gensql - First observed
gentest - First observed
genui - First observed
init_project - First observed
init_setting - First observed
perf - First observed
refactor - First observed
resolve_conflict - First observed
split
TDQS
Each tool has a clearly defined and distinct purpose, with detailed descriptions that prevent ambiguity. Even closely related tools like start_feature, start_bugfix, and start_product are differentiated by their workflow focus and explicit instructions.
Most tools follow a verb_noun or noun_verb pattern (e.g., start_feature, code_review, plan_heartbeat), with consistent group prefixes. A few single-word names like 'converge' and 'architecture' break the pattern, but they are still clear and the overall scheme is predictable.
With 24 tools, the server is on the heavy side of the borderline range (16-25). The broad scope covering initialization, feature management, code review, design, and planning justifies the count, but it could be streamlined by merging some highly related tools.
The tool surface covers the core development lifecycle well: planning, specification, coding support, review, testing guidance, and reporting. However, there are gaps in execution phases (e.g., no tool for running tests, building, or deployment), which prevents a perfect score.
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 Connectors
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
Generate, search, and manage codebase documentation on DocuWriter.ai. 72 tools incl. Autopilot.
AI-powered codebase analysis — call graphs, security, dead code, complexity. 150+ tools.
Read-only AI coding tools for change verification, release readiness, capacity, and guidance.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceProvides unified development tools including code analysis, debugging, refactoring, documentation, testing, and project automation through multiple LLM providers (KIMI, GLM, OpenRouter). Features agentic audit capabilities with multi-model consensus for finding issues and generating direct fixes.-
- AlicenseNot gradedqualityDmaintenanceProvides AI-powered development tools including code generation, refactoring, debugging, performance optimization, and test generation, along with smart prompts for code analysis and documentation, and a built-in knowledge base of coding best practices.MIT
- AlicenseNot gradedqualityDmaintenanceA comprehensive toolkit of 23 developer utilities that enables AI assistants to perform tasks like encoding, cryptography, and data generation locally without requiring API keys. It streamlines workflows by providing tools for JWT decoding, UUID generation, regex testing, and JSON formatting directly within the chat interface.57MIT
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with 28 developer tools across file, git, code analysis, HTTP, and system domains, enabling tasks like file editing, repository management, code analysis, and shell command execution.232MIT
Appeared in Searches
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/mybolide/mcp-probe-kit'
If you have feedback or need assistance with the MCP directory API, please join our Discord server