Claude Faf Mcp

io.github.Wolfe-Jam由 GitHub 账号 Wolfe-Jam 发布v5.9.0更新于 Nov 2, 2026

Persistent project context for Claude. IANA-registered .faf format.

发布方自己的服务:Claude Platform Docs

已验证Streamable HTTP可网页运行知识与记忆开发者工具AI 与机器学习

概览

AI 生成的概览

管理项目的 .faf 上下文文件:评估 AI 就绪度、从仓库填充槽位,并把上下文同步到 CLAUDE.md 与 MEMORY.md。

可以做什么
  • 创建、填充并评分 project.faf 上下文文件,也可直接从公开 GitHub 仓库生成而无需克隆
  • 检索上下文 soul 及其标签,并判断某主题需要完整 soul 还是增量 soul
  • 校验 .faf 内容、解析等级、估算 token,并执行晋级前的质量门禁
  • 按点号路径读取 .faf 的完整片段,并查询持久化的 .fafm 记忆模型
  • 把上下文同步到 CLAUDE.md、MEMORY.md、AGENTS.md、.cursorrules、GEMINI.md 等文件,并安装会话启动钩子
  • 跨会话记录与回忆决策,并生成智能体名片
适用场景
适合希望助手每次会话一开始就了解项目技术栈、目标与 6W,而不必重复解释的场景;也适合把上下文提交进仓库、让同事和其他工具共享的团队,以及需要可重复、确定性上下文评分的项目。
运行要求
以本地 npm 包(npx claude-faf-mcp)或内置的 .mcpb 扩展运行,需要 Node 22 或更高版本。未声明账号、API 密钥或请求头。文档说明 faf_collections_search 工具需要 XAI_API_KEY 密钥。仅在你要求克隆仓库时使用网络。
安装前请注意
多个工具会写入项目文件(project.faf、CLAUDE.md、MEMORY.md、AGENTS.md、.cursorrules、GEMINI.md),faf_setup 还会修改项目设置,运行前请先确认。faf_git 与 GitHub 生成工具会读取你指定的仓库,会使用网络。集合检索工具需要 XAI_API_KEY 密钥。README 指出未锁定版本的 npx 安装会随新主版本升级,评分可能因此变化。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Claude Faf Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.Wolfe-Jam%2Fclaude-faf-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "claude-faf": {
      "type": "http",
      "url": "https://mcpaas.live/claude/mcp/v1"
    }
  }
}

README

claude-faf-mcp

[npm version] [Smithery] [FAF ✪ 100%] [IANA: vnd.faf+yaml][IANA: vnd.fafm+yaml] [DOI: Context paper][DOI: Memory paper]

Home: faf.one/mcp Site: claude.faf.one

Persistent Project Context with Memory, looped for you. One-click setup. 30 seconds. 🐘 Nelly Never Forgets.

[MCP Registry: one.faf/claude-faf-mcp] [CI] [NPM Downloads] [License: MIT] [Chat to FAFA live] [Business card · Get yours →]

FAF defines. MD instructs. AI codes.

⭐ Star it on GitHub: bookmarks it for you, helps other devs find it too.

v0.2-conformant reader of the FAF Context Ingestion Contract.

🐘 tri-sync | .faf → MEMORY.md (faf_tri_sync), alongside .faf → CLAUDE.md (faf_sync).

⚡ The faf prompt — pick it from your host's prompt list (Claude Code shows it as /mcp__<server name>__faf). It scores your project, fills what the repo can, asks you only what only you can answer, verifies, and syncs.

7.0.0 is a major release — scores can move. claude-faf-mcp now scores with faf-cli 8's always-33 engine. A .faf without the 12 enterprise slotignored markers counts them as empty (21 filled = 64%): run faf_auto and it writes the markers. The npx config and the SessionStart hook are not pinned to a version, so an install that runs npx -y claude-faf-mcp moves to 7.x on its next start. Every change is in the CHANGELOG.

Context for Claude: faf-cli writes this repo's CLAUDE.md from its scored project.faf — faf_sync here, faf sync in faf-cli. See FAF-CLI for Claude Code 👀.

Composes faf-cli (the version is pinned in package.json). Detection, scoring, the renders and every writer are faf-cli's own functions, loaded as a dependency; claude-faf-mcp does not fork them and never runs a faf found on your PATH.

Core 14 MCP tools (30 with FAF_TOOLS=all). IANA-registered formats (application/vnd.faf+yaml · application/vnd.fafm+yaml).


What's New in v7.1.0 — The Instructions Edition

claude-faf-mcp now tells Claude how its tools fit together: server instructions in initialize (637 characters), plus faf-cli 8.5.0, which knows a skills repo when it sees one.

  • Server instructions. When Claude connects, the server says how its tools fit together, in five short lines: one project at a time, read project.faf first, ask the user for the human answers, project.faf is the source, remember only when asked.
  • faf-cli 8.5.0 inside. faf_init and faf_auto detect a skills repo: SKILL.md folders make it skills (10 slots), and a Claude Code plugin manifest makes it skills-plugin (14).
  • --version and --help print and exit, instead of starting the server.
  • Three advisories cleared: the MCP SDK, zod and hono.

The Always33 Edition (7.0)

One engine, one number: claude-faf-mcp 7 scores with faf-cli 8's always-33 kernel — the same score faf-cli and faf-kernel give.

  • The always-33 engine. Every tool scores with faf-cli 8.0.0 — all 33 Mk4 slots, one Rust kernel. Checked live: faf-python-sdk 56, mcp-context-card 56, faf-cli ✪ 100, the same numbers faf-cli and the reference scorer give.
  • Your 21 slots, and the 12 enterprise slots in view. The enterprise slots (infra, app, ops) are marked slotignored unless your app-type uses them. faf_score scores against all 33; slotignored slots drop out of the denominator.
  • Upgrading: a .faf without the 12 markers now scores against 33. Run faf_auto — it writes them and your score returns (56% → ✪ 100% on a real v7-era file).

v6.0.0 — The Earned Badge Edition

Every badge earned, none claimed: claude-faf-mcp 6.0 composes faf-cli, touches only what it wrote, and every tool tells the truth — one score, facts from repo, nothing from your PATH.

  • Composes faf-cli 7.13. Detection, scoring, the renders and every writer are faf-cli's own functions. claude-faf-mcp never runs a faf it finds on your PATH.
  • Touches only what it wrote.
    • Every write is atomic and goes through faf-cli's safe path, and a file that links out of the project is refused.
    • project.faf edits keep your comments and exact values.
    • Your soul.fafm and Claude's own MEMORY.md notes stay as you left them.
  • One score. Every tool shows faf-cli's score, and ✪ appears only at 100%.
  • Facts from repo. Every empty slot says what fills it:
    • a fact from repo, which faf_auto writes;
    • no fact in repo, which you answer with faf_go;
    • or yours, for the 6Ws.
  • Tools that tell the truth.
    • Every title, hint and schema matches what the tool does, and bad arguments are refused before anything runs.
    • Core 14: faf_setup and faf_tri_sync join the default list.
  • Safe with any repo.
    • A cloned repo's symlinks never reach your AI's context.
    • faf_go answers can't pollute objects.
    • The file tools stay inside the active project.
  • Ships what it runs. The .mcpb runs the server bundled inside it, and it's started and checked before its sha is recorded. Node 22+, with CI on Node 22 and 24 across Ubuntu, macOS and Windows.
  • Retired: faf_clear, faf_friday, faf_guide, faf_write, the interop imports into project.faf, and faf_check protect/unlock. The archive tag archive/cfm-v5-surface keeps them.

The 3Ws — 3 Answers. That's It.

Every great product started with 3 answers to the 3Ws — Who, What, Why:

WHO is it for?WHAT does it do?WHY build it?
UberPeople who need a rideTap a button, car arrivesTaxis were broken
AirbnbTravelers who can't afford hotelsStay in someone's spare roomMillions of empty rooms exist
SlackTeams drowning in emailOrganized group messagingDecisions buried in threads
VenmoFriends splitting billsSend money instantlySomeone always forgets to pay back

Same pattern. Every product that works starts here. .faf captures it:

yaml
human_context:  who: "people who need a ride across town"  what: "tap a button, car arrives in minutes"  why: "taxis are slow, expensive, and hard to find"

30 seconds. Claude builds your project.faf from this. Every session after, AI starts smart.

The 6Ws — For Optimized AI

3Ws gets you started. For fully optimized AI, complete the set — Where, When, How:

yaml
  where: "mobile app, iOS and Android"    # where does it live?  when: "launch in 3 months"              # when is it shipping?  how: "GPS matching, real-time pricing"  # how does it work?

3Ws initiates the project with AI. 6Ws optimizes AI to 100%. Same YAML, same file. More examples → faf.one/ideas


Quick Start

Needs Node 22 or later.

Claude Desktop — one click

⬇ Download claude-faf-mcp-7.1.0.mcpb

Open it in Claude Desktop. The extension runs the server bundled inside it (no npx, no network at start) and lists the Core 14 tools.

Claude Desktop — config

Add to claude_desktop_config.json, then restart Claude Desktop:

json
{  "mcpServers": {    "faf": { "command": "npx", "args": ["-y", "claude-faf-mcp"] }  }}

After npm install -g claude-faf-mcp you can use the installed bin instead: { "command": "claude-faf-mcp" }. With Bun on Claude Desktop's PATH, { "command": "bunx", "args": ["claude-faf-mcp"] } works too.

Claude Code

bash
claude mcp add faf -- npx -y claude-faf-mcp

Pinning

The npx config and the SessionStart hook faf_setup installs (npx -y claude-faf-mcp --session-refresh) are not pinned: they run the latest release, so fixes arrive without a reinstall, and a new major arrives the same way. To stay on a major, write it in your config yourself: "args": ["-y", "claude-faf-mcp@6"]. The .mcpb runs the version it was built from.

Then

Run the faf prompt — Claude scores your project, fills what the repo can, asks you what only you can answer, verifies and syncs.

Or tell Claude your 3Ws: "I'm building [what] for [who] because [why]"

faf-cli — any terminal

bash
npx faf-cli auto

Same .faf, every surface — Claude, Gemini, Grok, Cursor. faf-cli on npm →


How It Works

You → 3 answers → project.faf → AI reads it → every session → forever
project.faf  ──→  CLAUDE.md     (faf_sync)project.faf  ──→  MEMORY.md     (faf_tri_sync 🐘)

Language, framework, package manager, build tools — faf-cli detects them from your existing files. The human context is the part only you can give.


For Claude Code teams

.faf lives in the repo. Your context travels with the code — committed, versioned, done.

Every session starts grounded. Install the native SessionStart hook once (faf_setup — preview first, your settings preserved). After that, every Claude Code session opens with a one-line heartbeat instead of a blank slate:

faf: context ✪ 100% — fresh · +7 intent the code can't carry

That line is the relay: Claude already knows your stack and your score — and the +N is the intent the code can't carry: the goal and 6Ws only you can give or confirm. No re-explaining "what this project is" at the top of every session.

It scales to the team by construction:

commit project.faf  →  every teammate's Claude starts with the same contextgit clone           →  a new dev's Claude is grounded before they write a line
  • One source of truth. faf_sync writes CLAUDE.md from .faf — only its faf-managed block, so your own notes stay put. Add MEMORY.md for cross-session memory (tri-sync 🐘).
  • No drift. The score is deterministic — same .faf, same number, on every machine and in CI. A teammate can't be accidentally less grounded than you.
  • Local. No accounts, no telemetry, nothing sent to FAF. The one network use is cloning a repo you name, only when you ask (privacy). The context is yours; it rides in the repo.

Onboarding becomes git clone → grounded. The context a new teammate would normally pick up by asking around is already in the repo, machine-readable, from the first clone.


Scoring: From Blind to Optimized

TierScoreWhat it means
✪ TROPHY100%Gold Code — AI is optimized
★ GOLD99%+Near-perfect context
◆ SILVER95%+Excellent
◇ BRONZE85%+Production ready
● GREEN70%+Solid foundation
● YELLOW55%+AI flipping coins
○ RED<55%AI working blind
♡ WHITE0%No context at all

At 55%, AI guesses half the time. At 100%, AI knows your project. The score is faf-cli's scoreFafYaml — the always-33 number faf score prints for the same file.


MCP Tools — Core 14, 30 with FAF_TOOLS=all

By default claude-faf-mcp lists the Core 14 — the lifecycle tools you reach for. Set FAF_TOOLS=all to list the Extended tools too; every tool is callable by name either way. Retired in 6.0.0: faf_clear, faf_friday, faf_guide and faf_write (a call by name returns one line naming what to use instead), the AGENTS.md / .cursorrules / GEMINI.md / conductor imports into project.faf, and faf_check protect/unlock.

Every tool runs on the faf-cli this package depends on. Nothing is run from your PATH.

Core

ToolPurpose
faf_initCreate project.faf for a folder (faf-cli detects the stack)
faf_autoFill project.faf from the repo's own files, then CLAUDE.md
faf_goThe goal and the 6Ws, by question and answer
faf_scoreAI-readiness score (0-100%), from faf-cli
faf_benchBenchmark AI grounding — cold vs with the .faf, graded mechanically, with a receipt
faf_doctorDiagnose project.faf: each finding with the tool that fixes it
faf_trustValidate project.faf and return a trust receipt for its score
faf_syncWrite CLAUDE.md from project.faf — agents/cursor/gemini/copilot/all also write AGENTS.md / .cursorrules / GEMINI.md / copilot-instructions.md
faf_tri_syncWrite faf's block into the MEMORY.md Claude Code loads for this project 🐘
faf_setupInstall the SessionStart hook in the project settings (preview first)
faf_contextShow or set the active project; detail returns the .faf text
faf_etchRemember a decision across sessions (the project soul, soul.fafm)
faf_recallRecall memories from the project soul
faf_aboutWhat the .faf format is

Extended (FAF_TOOLS=all)

ToolPurpose
fafStart here: the project, its score and the steps to 100% (reads only)
faf_quickCreate project.faf from one line: name, goal, language, framework, hosting
faf_readmeRead the 6Ws from README.md; apply fills only empty slots
faf_human_addSet one 6W slot in project.faf
faf_formatsThe formats faf-cli finds in the folder, and what faf_auto would write (dry run)
faf_gitAuthor a project.faf from a repo URL (clones it with git — uses the network)
faf_checkfaf-cli's validateFaf and the state of every slot
faf_dnaThe project's .faf-dna lineage (reads only)
faf_statusWhether the project has a .faf, with its first lines
faf_agentsWrite AGENTS.md (OpenAI Codex and other agents)
faf_cursorWrite .cursorrules (Cursor IDE)
faf_geminiWrite GEMINI.md (Google Gemini CLI)
faf_conductorWrite Google Conductor's conductor/ files
faf_readRead a file inside the active project
faf_listList a folder inside the active project
faf_debugThe active project, write access and the bundled faf-cli version

🐘 Nelly Never Forgets

faf_sync writes CLAUDE.md from .faf, so the two stay aligned.

tri-sync adds MEMORY.md — your AI remembers your project across every session.

faf_sync = .faf → CLAUDE.md              ← written from .faftri-sync = .faf → MEMORY.md   (faf_sync writes CLAUDE.md)  ← Nelly never forgets 🐘

Pro feature, free for developers. Teams & Enterprise: faf.one/pro (plans)


The .FAF Position

Model        Context          Protocol─────        ───────          ────────Claude    →   .faf        →    MCPGemini    →   .faf        →    MCPCodex     →   .faf        →    MCPAny LLM   →   .faf        →    MCP

IANA-registered (application/vnd.faf+yaml). One file, one format. Define once, use everywhere.


Ecosystem

PackagePlatformRegistry
claude-faf-mcp (this)Claudenpm
faf-cliCLInpm + Homebrew
gemini-faf-mcpGoogle GeminiPyPI
grok-faf-mcpxAI Groknpm
rust-faf-mcpRustcrates.io
faf-wasmBrowser/Edgenpm
Chrome ExtensionBrowserChrome Web Store

Same project.faf. Same scoring. Same result. Different execution layer.


Quality

Tests run with bun on ubuntu, macOS and Windows; the built package is packed, installed and started on Node 22 and 24 on all three. CI →


Privacy

claude-faf-mcp runs on your machine. No analytics, no telemetry, no accounts. Its one network use is faf_git, and only when you ask it to read a repo: git clones it from the URL you give. The files it writes are listed in the privacy policy →


If claude-faf-mcp has been useful, consider starring the repo — it helps others find it.


Citation

If you use claude-faf-mcp or the .faf / .fafm / .fafa formats in research or production, please cite the format papers:

Wolfe, J. (2025). Format-Driven AI Context Architecture: The .faf Standard for Persistent Project Understanding. Zenodo. https://doi.org/10.5281/zenodo.18251362

Wolfe, J. (2026). Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory. Zenodo. https://doi.org/10.5281/zenodo.20348942

Wolfe, J. (2026). Why Agents Need a Passport: .fafa — Portable Identity for the Agentic Era. Zenodo. https://doi.org/10.5281/zenodo.21951641

BibTeX

bibtex
@article{wolfe2025faf,  title     = {Format-Driven AI Context Architecture: The .faf Standard for Persistent Project Understanding},  author    = {Wolfe, James},  year      = {2025},  month     = {nov},  publisher = {Zenodo},  doi       = {10.5281/zenodo.18251362},  url       = {https://doi.org/10.5281/zenodo.18251362}}
@article{wolfe2026fafm,  title     = {Permanent Memory and Instant Recall: The .fafm Standard for Multi-Profile AI Agent Memory},  author    = {Wolfe, James},  year      = {2026},  month     = {may},  publisher = {Zenodo},  doi       = {10.5281/zenodo.20348942},  url       = {https://doi.org/10.5281/zenodo.20348942}}
@article{wolfe2026fafa,  title     = {Why Agents Need a Passport: .fafa — Portable Identity for the Agentic Era},  author    = {Wolfe, James},  year      = {2026},  month     = {aug},  publisher = {Zenodo},  doi       = {10.5281/zenodo.21951641},  url       = {https://doi.org/10.5281/zenodo.21951641}}

License

MIT — Free and open source


FAF Family

faf-clinpx faf-cli init — create .faf for any project
claude-faf-mcpMCP server for Claude Desktop
gemini-faf-mcpMCP server for Gemini CLI
grok-faf-mcpMCP server for Grok
faf-mcpMCP server for Cursor, Windsurf, Cline, VS Code
rust-faf-mcpMCP server in Rust
faf-skillsClaude Code skills for .faf
faf.oneBlog, downloads, docs
IANA: vnd.faf+yamlContext format (2025-10-30)
IANA: vnd.fafm+yamlMemory format (2026-05-13)

format | driven 🏎️⚡️ wolfejam.dev


Get the CLI

faf-cli — The original AI-Context CLI. A must-have for every builder.

bash
npx faf-cli auto

MCP Registry: one.faf/claude-faf-mcp · 2 IANA registrations: vnd.faf+yaml (Context) · vnd.fafm+yaml (Memory) · faf.one · npm


Zero-Config. Context that's just there — every session.

来源:README.md,提交 d1948e0

工具

20

get_soul

Get Context Soul

Fetch a context soul by name. Returns structured AI context.

输入参数soul必填

list_souls

List Available Souls

List all available context souls.

无需输入参数。

delta_check

Delta Doctrine Check

Determine if a topic needs FULL, DELTA, or X-DELTA soul.

输入参数topic必填

list_tags

List Tags

List all unique tags used in a soul, with counts.

输入参数soul必填

search_by_tag

Search by Tag

Find all entries in a soul with a specific tag.

输入参数tag必填soul必填

search_context

Search Context

Full-text search across souls. Returns matching lines only (token-efficient).

输入参数soulquery必填

tag_intel

Tag Intel

Discover tag patterns, co-occurrence, candidates, and merge suggestions across all namepoints. Optionally suggest tags for a specific handle.

输入参数handle

generate_faf_from_github

Generate FAF from GitHub

Generate a .faf file from any public GitHub repository WITHOUT cloning. Extracts 6 Ws from README, analyzes stack from languages and package.json, and generates Championship-grade AI context. Returns .faf content, quality score, and metadata.

输入参数repo必填

faf_score

Score .faf content

Score .faf YAML content with the always-33 faf-kernel (WASM). Returns 0-100 (capped). The same score faf-cli and every FAF MCP give. Runs at the edge.

输入参数content必填

faf_validate

Validate .faf content

Validate .faf YAML content: true if mission-ready (always-33 score of 100).

输入参数content必填

faf_get_tier

Get tier for a score

Resolve the FAF tier for a given numeric score. Returns the tier symbol (Trophy/Gold/Silver/Bronze/etc.) per the canonical tier-table.

输入参数score必填

faf_estimate_tokens

Estimate tokens

Estimate token count for arbitrary content via the Zig WASM engine. Sub-millisecond, zero allocations. Useful for context-budget planning.

输入参数content必填

faf_analyze

Full analysis (score + tier + validate)

One-call composite — returns score, tier-ready, valid, and engine identifier. Two WASM calls, sub-millisecond total.

输入参数content必填

refresh_faf

Re-ground on .faf content (drift → refresh → re-grounded)

Re-ground on .faf content — re-score with the always-33 faf-kernel (33 slots; slotignored slots drop out), report drift vs an optional baseline score, and return a stamped re-ground. The explicit re-grounding primitive for long sessions: drift → refresh → re-grounded. Built for Grok, by request.

输入参数content必填baselineverbatim

faf_orchestrate_recommendation

Orchestrate Context Recommendation (FAF)

Takes raw content strings (`.faf`, `.fafm`, and optionally `package.json`/`CHANGELOG.md`/`README.md`) and runs deterministic drift + contradiction signals across the FAF substrate. Returns a structured `Recommendation` (recommend, severity, reason, summary) with `hints` containing the current `effective_policy` and `partial[]` for any stateful signals unavailable on the current surface. Light-lane execution (hosted) is WASM-pure with no filesystem access. Heavy-lane execution (local via bunx/rust-faf-mcp) has full FS + persisted state. Advisory only — never auto-fires.

输入参数faffafmreadmechangelogpackageJson

faf_gate

FRC quality gate (promote/hold)

Phase III (FRC) — pre-promotion quality gate. Scores .faf content (edge Mk4) + estimates tokens and returns a deterministic promote/hold verdict BEFORE it goes to a Grok Collection. Promote IFF score >= min_score AND tokens <= max_tokens (defaults 85/8000). Edge parity with the local gate; the hold-hint can't list empty slots at the edge.

输入参数content必填min_scoremax_tokens

faf_section

Structure-aware retrieval

Phase III (FRC) — returns an EXACT, WHOLE .faf section by dotted path (e.g. "stack", "human_context"), structure preserved — the deterministic complement to blind chunking. Omit "section" to list every path.

输入参数content必填section

faf_memory

Portable structured memory (.fafm)

Phase III (FRC) — query the durable .fafm model by type/tag/priority/text. Omit filters for a structured summary. .fafm is NOT scored: this SELECTS facts (provenance preserved), never grades them.

输入参数tagtypequerycontent必填priority

faf_business_card

Print a business card for an agent

Print a business card for an agent from its own name, description, colour and picture. Returns the agent's .fafa (FAF Agent file) and a link that opens its card. Nothing is stored: the .fafa travels in the link. The card says "self-declared" because nothing is checked against a repo.

输入参数iconname必填accentdescription

版本历史

1
  1. v5.9.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Claude 集成