TL;DR: .FAF Context is the FAF context server for your editor. Drop one .faf in your repo and every MCP-compatible IDE — Cursor, VS Code, Windsurf, Cline — reads the same scored project DNA. It's on the GitHub MCP Registry, and v2.3.1 makes sure it grounds on the project you actually have open.

bunx faf-mcp

One .faf. Every editor's AI, grounded.

Every AI coding session starts from zero — re-reading your stack, re-guessing your conventions, re-learning what the project even is. .FAF Context ends that. Your project's context lives in a single IANA-registered .faf file, scored for completeness, and served to whatever editor you're in.

Claude has Claude FAF. Grok has Grok FAF. .FAF Context is the one for your IDE — the editor surface, not tied to any single assistant.

On the GitHub MCP Registry

.FAF Context is listed on the GitHub MCP Registry — the source that powers editor MCP discovery. Search faf and it's right there, so any developer can add it without hunting down a config snippet.

Works where you work

One server, every MCP-compatible editor. Point your IDE at it and the AI reads your .faf:

  • Cursor — the AI-native editor
  • VS Code — via the MCP marketplace
  • Windsurf · Cline — and any MCP host

On Claude Desktop, reach for Claude FAF instead — same context, tuned for that surface.

v2.3.1 — it scores YOUR project

The one behaviour that matters in an editor: when you ask for a score, it must score the project you have open. v2.3.1 fixes a working-directory bug where a no-path call could resolve to a default folder instead of your workspace. Now the caller's actual directory wins — your open project, every time.

The scorer, the WASM kernel, the number itself were never in question — this was pure path resolution. Deterministic, IANA-spec'd scoring: same .faf, same score, on every surface.

Curated by default

.FAF Context leads with a curated core toolset — the tools you actually reach for, up front — instead of a wall of options. Need everything? FAF_TOOLS=all exposes the full set; every tool stays callable by name either way.

Try It

bunx faf-mcp

Or add it to your editor's MCP config:

{"mcpServers": {"faf": {"command": "bunx", "args": ["faf-mcp"]}}}

The Numbers

  • faf-mcp v2.3.1 — released July 1, 2026
  • .FAF Context — on the GitHub MCP Registry (one.faf/faf-mcp)
  • Cursor · VS Code · Windsurf · Cline — every MCP-compatible IDE
  • 🏆 100% — Trophy-scored context
  • IANA-registered.faf is application/vnd.faf+yaml
  • 100,000+ — downloads across the FAF ecosystem

If you like our work, consider a star on the repo — it helps others find us too.

Star faf-mcp