Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Anthropic Claude Fable 5 MCP server — top-tier planning and code critique for handoff
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
作者はレジストリにインストール情報を載せていません。下にある作者のREADMEをご覧ください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント codeChap で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.0)がレジストリに届いたのは4 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, sync. labs
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
An MCP (Model Context Protocol) server for Anthropic Claude Fable 5.1 — Anthropic's most capable, most expensive model ($10 / $50 per 1M input / output tokens, ~2× Opus). Built in Rust, it exposes Fable as specialized MCP tools (plan, critique, ask) so any MCP client can use them.
Fable is not a day-to-day chat model here. This server is built for the one thing that justifies the price: using Fable to plan and critique, then handing the result to a cheaper model (Sonnet / Haiku / Opus) to execute. It works in Claude Code, Claude Desktop, Cursor, custom agents, and any other environment that supports MCP servers over stdio.
Communicates via stdio using JSON-RPC 2.0. Structurally it mirrors mcp-server-claude-chat, but is deliberately adapted to Fable's API surface and purpose-built for the plan-then-execute pattern.
Claude Code has a powerful native advisor feature (/advisor fable or the advisor tool). It lets a fast executor model (typically Sonnet or Haiku) dynamically ask Fable for guidance on hard decisions inside a single session.
This MCP server takes a complementary approach that is useful in more situations:
plan and critique use fixed, carefully written system prompts designed so the output can be passed *verbatim* to a cheaper model. Plans are numbered, unambiguous, include exact paths/signatures, edge cases, acceptance criteria, and out-of-scope notes. Critiques are deliberately coverage-first (report everything; filter downstream).effort levels, refusal handling (no silent fallback), long timeouts, and accurate per-call cost reporting at Fable rates.Many teams are converging on the same pattern the community discovered: use Fable narrowly for architecture, planning, and review, then execute with cheaper models. This server gives you first-class, portable tools for the "Fable parts" of that pattern.
See the "Technical details" section below for the specific Fable API differences that also required a dedicated implementation.
This server uses the Anthropic API with an API key (API credits) — the only supported, terms-compliant way to drive Claude from a third-party tool. A Claude Pro/Max subscription is not usable here. Point base_url at an Anthropic-compatible gateway if you run one.
Fable's Messages API differs from the Opus-era shape (this is why a dedicated server was needed rather than reusing a general Claude chat wrapper):
temperature / top_p / top_k are rejected with a 400. There is no temperature tool argument.low / medium / high / xhigh / max), not a token budget. The raw chain of thought is never returned; ask can request a readable *summary* via show_reasoning.stop_reason: "refusal", surfaced with its category and explanation rather than as an answer. It is never silently retried on a different model.Every response also prints an estimated USD cost (at Fable's sticker rates), since cost-consciousness is the whole point.
| Tool | Description |
|---|---|
plan | Flagship. Turn a goal (+ optional context) into an executor-ready implementation plan: numbered steps, exact paths/signatures, edge cases, acceptance criteria, out-of-scope notes — written to be handed to a cheaper model and executed verbatim. |
critique | Coverage-first review of code, a diff, or a design. Reports every finding with severity + confidence for downstream filtering. Optional focus. |
ask | Raw one-shot query to Fable. Multi-turn history, system prompt, effort, optional reasoning summary. |
| Name | Type | Required | Description |
|---|---|---|---|
goal | string | yes | What to build or fix |
context | string | no | Relevant code, file tree, constraints, error output, prior attempts |
effort | string | no | low/medium/high/xhigh/max (default high) |
max_tokens | integer | no | Max tokens to generate (server default otherwise) |
| Name | Type | Required | Description |
|---|---|---|---|
content | string | yes | Code, diff, or design to review |
focus | string | no | Area to weight, e.g. security, concurrency |
effort | string | no | low/medium/high/xhigh/max (default high) |
max_tokens | integer | no | Max tokens to generate |
| Name | Type | Required | Description |
|---|---|---|---|
prompt | string | yes | The user message |
system_prompt | string | no | System prompt |
messages | string | no | History as a JSON array of {role, content} (roles user/assistant only) |
effort | string | no | low/medium/high/xhigh/max (default medium) |
max_tokens | integer | no | Max tokens to generate |
show_reasoning | boolean | no | Return a summary of Fable's reasoning in a [thinking] block |
The server expects a config file at ~/.config/mcp-server-fable/config.toml containing at minimum your api_key. See config.toml.example.
api_key = "sk-ant-..."
The server fails fast at startup if the config is missing, api_key is empty, or default_effort (if set) is invalid.
cargo build --release # produces target/release/fable
cargo build # debug build cargo run # run in dev mode RUST_LOG=debug cargo run cargo test # unit tests (response formatting, cost, refusal, effort, message building)
cargo build --release
Use the full absolute path to target/release/fable in all configuration below.
Copy the block below and paste it directly to your AI coding assistant (Claude Code, Cursor, Grok, etc.). The AI will handle cloning (if needed), building, path resolution, and registration for you.
Add the mcp-server-fable MCP server for me.
Repository: https://github.com/ /mcp-server-fable (update this URL if you have a fork)
Steps to perform:
For Claude Code, run: claude mcp add fable -- /target/release/fable
For Claude Desktop or other MCP clients, add this under the "mcpServers" key (use the real absolute path): { "fable": { "command": " /target/release/fable" } }
After setup, test that the plan tool is available and working.
Claude Desktop or any MCP client (~/.config/Claude/claude_desktop_config.json or equivalent):
{
"mcpServers": { "fable": { "command": "/absolute/path/to/mcp-server-fable/target/release/fable" } } }
Claude Code (one-liner):
claude mcp add fable -- /absolute/path/to/mcp-server-fable/target/release/fable
Replace the path with your actual absolute path to the release binary.
Once it's registered, an MCP client calls the tools by name — the flagship is plan.
Ask the model to use it, handing over the goal plus whatever context the executor will need:
Use the fable plan tool. goal: "Add a
--jsonflag to the CLI that prints results as JSON". context: "Rustclapapp; output currently goes throughprintln!insrc/main.rs". effort: high
Claude Code issues a tools/call for plan; Fable returns a numbered, executor-ready plan — exact paths, signatures, edge cases, acceptance criteria — which you then hand to a cheaper model (Sonnet / Haiku) to implement verbatim.
The same call without a client — a tools/call request the server reads on stdin:
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{
"name":"plan", "arguments":{ "goal":"Add a --json flag to the CLI that prints results as JSON", "context":"Rust clap app; output currently via println! in src/main.rs", "effort":"high" }}}
plan and critique return their content followed by a token + estimated-cost footer. Here is an actual response (from a tiny ask probe) showing that footer:
BINARY-OK
[stop_reason: end_turn] [tokens: 21 input + 9 output = 30 total] [cost: ≈ $0.0007 (fable rates)]
Because the server only ever calls Fable, that cost line is always at Fable's $10 / $50 per-1M rates — accurate by construction, not by convention.
src/
main.rs - entry point, config loading, stdio transport setup server.rs - MCP tool definitions (plan, critique, ask) + fixed prompts api.rs - Anthropic HTTP client, Effort enum, Messages types, refusal/cost formatter params.rs - tool parameter types with serde + JSON Schema derives config.rs - TOML config loading + effort validation
MIT