Persistent Project Context for xAI Grok
Server Details
Persistent project context for xAI Grok. IANA-registered .faf format.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- Wolfe-Jam/grok-faf-mcp
- GitHub Stars
- 19
- Server Listing
- grok-faf-mcp
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 20 tools
A large cluster of tools overlaps heavily around scoring/validating .faf content: faf_score, faf_validate, faf_analyze (a 'one-call composite' returning score+valid+tier), faf_get_tier, faf_gate, refresh_faf, and even faf_orchestrate_recommendation all touch the same scoring substrate. faf_analyze effectively subsumes faf_score/faf_validate/faf_get_tier, creating real misselection risk. The retrieval tools (faf_section, search_context, faf_collections_search, faf_memory) are better delineated, but the scoring cluster drags the score down.
All names are snake_case, which is consistent, but the convention is split between a 'faf_' namespace (faf_score, faf_gate, faf_analyze) and unprefixed verb_noun tools (get_soul, list_souls, search_by_tag, generate_faf_from_github) plus vague noun-style names (delta_check, tag_intel). The mix of prefixed and unprefixed families within one server is readable but not uniform.
20 tools sits in the heavy band (16-25) for what is essentially a context/scoring server. Several scoring variants and search variants exist that could be consolidated, so not every tool clearly earns its place. It is still navigable, but borders on over-scoped.
The surface covers scoring, validation, gating, generation (from GitHub), soul retrieval, tag/search, and token estimation well. However, souls appear read-only — there is no create_soul, update_soul, or delete_soul, so an agent cannot persist or edit context souls despite the 'persistent project context' purpose. Notable write-side gaps remain.
Available Tools
20 toolsdelta_checkDelta Doctrine CheckBRead-onlyIdempotentInspect
Determine if a topic needs FULL, DELTA, or X-DELTA soul.
Inputs: topic (required).
faf_analyzeFull analysis (score + tier + validate)ARead-onlyIdempotentInspect
One-call composite — returns score, tier-ready, valid, and engine identifier. Two WASM calls, sub-millisecond total.
Inputs: content (required).
faf_business_cardPrint a business card for an agentARead-onlyIdempotentInspect
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.
Inputs: name (required), icon, accent, description.
faf_collections_searchSearch a Grok Collection (edge, KV-cached)ARead-onlyIdempotentInspect
Phase III (FRC §7b) — semantic search over a Grok Collection at the edge, KV-cached (1h TTL). Returns matched chunks (content, score, file). Requires the XAI_API_KEY secret; composes with faf_section (structural) for hybrid retrieval. Handled env-aware in the MCP handler (needs the key + KV).
Inputs: query (required), collection_id (required), limit.
faf_estimate_tokensEstimate tokensARead-onlyIdempotentInspect
Estimate token count for arbitrary content via the Zig WASM engine. Sub-millisecond, zero allocations. Useful for context-budget planning.
Inputs: content (required).
faf_gateFRC quality gate (promote/hold)ARead-onlyIdempotentInspect
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.
Inputs: content (required), min_score, max_tokens.
faf_get_tierGet tier for a scoreARead-onlyIdempotentInspect
Resolve the FAF tier for a given numeric score. Returns the tier symbol (Trophy/Gold/Silver/Bronze/etc.) per the canonical tier-table.
Inputs: score (required).
faf_memoryPortable structured memory (.fafm)ARead-onlyIdempotentInspect
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.
Inputs: content (required), tag, type, query, +1 more.
faf_orchestrate_recommendationOrchestrate Context Recommendation (FAF)ARead-onlyIdempotentInspect
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.
Inputs: faf, fafm, readme, changelog, +1 more.
faf_scoreScore .faf contentARead-onlyIdempotentInspect
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.
Inputs: content (required).
faf_sectionStructure-aware retrievalARead-onlyIdempotentInspect
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.
Inputs: content (required), section.
faf_validateValidate .faf contentBRead-onlyIdempotentInspect
Validate .faf YAML content: true if mission-ready (always-33 score of 100).
Inputs: content (required).
generate_faf_from_githubGenerate FAF from GitHubARead-onlyIdempotentInspect
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.
Inputs: repo (required).
get_soulGet Context SoulBRead-onlyIdempotentInspect
Fetch a context soul by name. Returns structured AI context.
Inputs: soul (required).
list_soulsList Available SoulsBRead-onlyIdempotentInspect
List context souls: showcase souls first, then claimed souls. Paged: pass the returned cursor for more.
Inputs: limit, cursor.
list_tagsList TagsARead-onlyIdempotentInspect
List all unique tags used in a soul, with counts.
Inputs: soul (required).
refresh_fafRe-ground on .faf content (drift → refresh → re-grounded)ARead-onlyIdempotentInspect
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.
Inputs: content (required), baseline, verbatim.
search_by_tagSearch by TagARead-onlyIdempotentInspect
Find all entries in a soul with a specific tag.
Inputs: tag (required), soul (required).
search_contextSearch ContextARead-onlyIdempotentInspect
Full-text search across souls (showcase first, then claimed souls; [private] sections are never searched). Returns matching lines only. Searches a page of souls per call: pass the returned cursor for more.
Inputs: query (required), soul, limit, cursor.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Persistent project context for Claude. IANA-registered .faf format.
Persistent project context — Rust-native MCP server. IANA-registered .faf format.
Your portable context layer — load it into any AI.
Project memory, documentation and controlled secret access for AI coding agents.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenancePersistent project context in Rust. 8 MCP tools via rmcp SDK — parse, validate, score, compress, discover, and token analysis. Single binary, zero config. IANA-registered format (application/vnd.faf+yaml). One file, every AI platform.407 npm4MIT
- AlicenseAqualityBmaintenancePersistent project context for Google Gemini. 12 MCP tools for .faf Project DNA — auto-detect your stack, validate, score, and sync across CLAUDE.md, GEMINI.md, and AGENTS.md. Python/FastMCP. IANA-registered format (application/vnd.faf+yaml). 183 tests. One file, every AI platform.13489 PyPI2MIT
- AlicenseAqualityBmaintenance.FAF (Foundational AI-context Format) with 50+ tools - Only Persistent project context that integrates seamlessly with Claude Desktop workflows. Officially merged (#2759) Anthropic MCP server.14777 npm23MIT
- AlicenseAqualityBmaintenancePersistent project context MCP server that syncs a single .faf file to all AI tool formats (Cursor, Windsurf, Cline, etc.), enabling eternal bi-sync and optimized context for AI assistants.15642 npm7MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.