io.github.Wolfe-Jam/claude-faf-mcp
NPM · CLAUDE-FAF-MCP · 3 COMPONENTS · SCANNED AUG 3
Persistent project context for Claude. IANA-registered .faf format.
Available components
Deprecated
This server is marked deprecated in the MCP registry.
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security78
- No malware found by supply-chain analysis.Pass
- CVE check failed: a known low-severity CVE affects esbuild 0.27.7, a direct dependency. A fixed version is available. View diagnostics → Fail
- Runs a script at install time (postinstall) that we could not recognise. It may be perfectly ordinary, but we do not read the published tarball, so we cannot say what it does. View diagnostics → Partial
- Only part of the dependency tree could be resolved (143 of 147), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 33 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability64
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (poor).Fail
- Tool/resource definitions use about 2730 tokens (~71/item across 38 items; 35 tools + 3 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (34% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · claude-faf-mcp
claude mcp add wolfe-jam-claude-faf-mcp -- npx -y claude-faf-mcp
codex mcp add wolfe-jam-claude-faf-mcp -- npx -y claude-faf-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"wolfe-jam-claude-faf-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"claude-faf-mcp"
],
"enabled": true
}
}
} openclaw mcp add wolfe-jam-claude-faf-mcp --command npx --arg -y --arg claude-faf-mcp
mcp_servers:
wolfe-jam-claude-faf-mcp:
command: "npx"
args: ["-y", "claude-faf-mcp"] {
"mcpServers": {
"wolfe-jam-claude-faf-mcp": {
"command": "npx",
"args": [
"-y",
"claude-faf-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +4
- Stability: unverified → 0.27 ▲ functional
- 2 Aug 26 +27
- Provenance: unverified → fail ▼ security
- Known CVEs: unverified → fail ▼ security
- Install scripts: unverified → partial ▲ security
- Malware scan: unverified → pass ▲ security
- The scripts that run when this package is installed changed: postinstall security
- Dependency health: unverified → partial ▲ functional
- Maintenance: unverified → pass ▲ functional
- License: unverified → pass ▲ functional
- Licence: MIT functional
- 31 Jul 26 −4
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 −37
- Provenance: fail → unverified ▼ security
- Malware scan: pass → unverified ▼ security
- Known CVEs: fail → unverified ▼ security
- Install scripts: partial → unverified ▼ security
- GHSA-g7r4-m6w7-qqqr no longer affects this package ▲ security
- The scripts that run when this package is installed changed: postinstall security
- License: pass → unverified ▼ functional
- Maintenance: pass → unverified ▼ functional
- Dependency health: partial → unverified ▼ functional
- Licence: MIT functional
- 28 Jul 26 +31
- Schema quality: unverified → 100 ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- First check of Schema quality: pass functional
- First check of Tool coverage: 34 functional
- First check of Schema quality: fail functional
- First check of Tool coverage: 100 functional
- First check of Schema quality: poor functional
- 27 Jul 26 +18
- GHSA-g7r4-m6w7-qqqr affects this package: low ▼ security
- Provenance: unverified → fail ▼ security
- Known CVEs: unverified → fail ▼ security
- Install scripts: unverified → partial ▲ security
- The scripts that run when this package is installed changed: postinstall security
- License: unverified → pass ▲ functional
- Maintenance: unverified → pass ▲ functional
- Licence: MIT functional
- 26 Jul 26 25
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| postinstall | unreviewed | node scripts/postinstall.js |
Vulnerabilities 1 finding
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-g7r4-m6w7-qqqr | low | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N | yes |
Dependencies 143 packages
143 packages in the resolved dependency tree · 141 deprecated · 34 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
faf ~54
Type "faf" to start. Scores your project, drives it to 100%, syncs everything. The one command that does it all.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path (optional — uses current directory if not provided) |
No output schema declared.
No examples provided.
faf_about ~20
Learn what .faf format is - project DNA for AI
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
faf_agents ~107
Import/Export/Sync between AGENTS.md (OpenAI/Codex) and project.faf - AI interop!
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action: import (AGENTS.md -> .faf), export (.faf -> AGENTS.md), sync (bidirectional) |
| force | boolean | — | Force overwrite existing files |
| merge | boolean | — | Merge imported data with existing .faf instead of replacing |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_auto ~55
Run the full FAF pipeline in one step: init + sync + formats + bi-sync + score.
| Name | Type | Req | Description |
|---|---|---|---|
| force | boolean | — | Force overwrite existing files |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_bi_sync ~186
Bi-directional sync between project.faf and CLAUDE.md. v4.5.0: Also sync to AGENTS.md, .cursorrules, GEMINI.md!
| Name | Type | Req | Description |
|---|---|---|---|
| agents | boolean | — | Also sync to AGENTS.md (OpenAI/Codex format) |
| all | boolean | — | Sync to ALL formats: CLAUDE.md + AGENTS.md + .cursorrules + GEMINI.md |
| auto | boolean | — | Enable automatic synchronization |
| cursor | boolean | — | Also sync to .cursorrules (Cursor IDE format) |
| force | boolean | — | Force overwrite conflicting changes |
| gemini | boolean | — | Also sync to GEMINI.md (Google Gemini format) |
| path | string | — | Project path. Sets session context for subsequent calls. |
| watch | boolean | — | Start real-time file watching for changes |
No output schema declared.
No examples provided.
faf_check ~70
Quality inspection for human_context fields + field protection - Shows empty/generic/good/excellent ratings
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
| protect | boolean | — | Lock good/excellent fields from being overwritten |
| unlock | boolean | — | Remove all field protections |
| Name | Type | Req | Description |
|---|---|---|---|
| emptyCount | number | — | Fields that are empty |
| fields | object | — | Per-field quality + protection (report mode) |
| goodCount | number | — | Fields rated good or excellent |
| mode | string | yes | report | protect | unlock |
| protected | array | — | Field names currently protected |
| protectedNow | array | — | Fields newly protected by this call (protect mode) |
| qualityPercent | number | — | Share of fields rated good/excellent (report mode) |
No examples provided.
faf_clear ~67
Clear caches, temporary files, and reset FAF state for a fresh start
| Name | Type | Req | Description |
|---|---|---|---|
| all | boolean | — | Clear everything (default) |
| backups | boolean | — | Clear backup files only |
| cache | boolean | — | Clear trust cache only |
| todos | boolean | — | Clear todo lists only |
No output schema declared.
No examples provided.
faf_conductor ~97
Import/Export between conductor/ directory (Google Conductor) and project.faf - AI interop!
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action: import (conductor/ -> .faf), export (.faf -> conductor/) |
| force | boolean | — | Force overwrite existing files |
| merge | boolean | — | Merge imported data with existing .faf instead of replacing |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_context ~42
Set or view active project context - Path is remembered for subsequent faf_ calls
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Set active project path. If omitted, shows current context. |
| Name | Type | Req | Description |
|---|---|---|---|
| active | string | yes | Absolute path of the active project |
| changed | boolean | yes | True if this call set a new context, false if it only reported |
| filename | string|null | — | The .faf filename, if found |
| hasFaf | boolean | yes | Whether a project.faf (or .faf) was found there |
No examples provided.
faf_cursor ~109
Import/Export/Sync between .cursorrules (Cursor IDE) and project.faf - AI interop!
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action: import (.cursorrules -> .faf), export (.faf -> .cursorrules), sync (bidirectional) |
| force | boolean | — | Force overwrite existing files |
| merge | boolean | — | Merge imported data with existing .faf instead of replacing |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_debug ~25
Debug Claude FAF MCP environment - show working directory, permissions, and FAF CLI status
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
faf_dna ~38
Show the project FAF DNA — score history and progression over time.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| authenticated | boolean | — | Whether the birth certificate is authenticated |
| birthScore | number | — | Score at birth |
| certificate | string|null | — | Birth certificate ID |
| currentScore | number | — | Current score |
| daysActive | number | — | Days since birth |
| hasDna | boolean | yes | Whether a .faf-dna history exists (or was just created) |
| hasFaf | boolean | yes | Whether a project.faf was found |
| justBorn | boolean | — | True if this call created the birth certificate |
| milestones | array | — | Recorded milestones |
| totalGrowth | number | — | currentScore - birthScore |
No examples provided.
faf_doctor ~39
Health check for your .faf setup - Diagnose and fix common issues
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| checks | number | yes | Number of checks run |
| diagnostics | array | yes | Per-check results |
| errors | number | — | Count of error-level findings |
| health | string | yes | Overall verdict: ok | warning | error |
| warnings | number | — | Count of warning-level findings |
No examples provided.
faf_enhance ~125
Enhance project.faf (project DNA for AI) with AI optimization — persistent context, zero drift
| Name | Type | Req | Description |
|---|---|---|---|
| consensus | boolean | — | Build consensus from multiple AI models |
| dryRun | boolean | — | Preview enhancement without applying changes |
| focus | string | — | Enhancement focus: claude-optimal|human-context|ai-instructions|completeness |
| model | string | — | Target AI model: claude|chatgpt|gemini|universal (default: claude) |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_etch ~145
Etch a memory — remember this across sessions (a decision, gotcha, or win). Writes to the project soul (.fafm).
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | — | Stable id — re-etching the same id updates in place (dedup) |
| path | string | — | Project path. Sets session context for subsequent calls. |
| priority | string | — | Recall ranks by priority then recency |
| tags | array | — | Tags (e.g. decision, gotcha, win) for filtering + recall coupling |
| text | string | yes | The memory to remember — capture the why (decision/gotcha/win) |
| type | string | — | Memory category |
| Name | Type | Req | Description |
|---|---|---|---|
| etched | object | yes | — |
| namepoint | string | — | — |
| soul | string | yes | Path to soul.fafm |
| total | number | — | Total memories in the soul |
No examples provided.
faf_formats ~52
Discover all formats in the project (154+ validated types) and fill stack slots.
| Name | Type | Req | Description |
|---|---|---|---|
| json | boolean | — | Return results as JSON |
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | yes | Number of known formats discovered |
| directory | string | yes | Directory that was scanned |
| elapsedMs | number | — | Discovery time in milliseconds |
| formats | array | yes | Discovered formats |
| intelligenceScore | number | — | Total intelligence score across discovered formats |
| slotFillRecommendations | object | — | Recommended .faf slot fills derived from discovered formats |
| stackSignature | string | — | Derived stack signature |
No examples provided.
faf_friday ~43
Detect the FAF Chrome extension and run fuzzy-matching helpers.
| Name | Type | Req | Description |
|---|---|---|---|
| test | string | — | Test fuzzy matching with typos like "raect" or "chr ext" |
No output schema declared.
No examples provided.
faf_gemini ~108
Import/Export/Sync between GEMINI.md (Google Gemini CLI) and project.faf - AI interop!
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action: import (GEMINI.md -> .faf), export (.faf -> GEMINI.md), sync (bidirectional) |
| force | boolean | — | Force overwrite existing files |
| merge | boolean | — | Merge imported data with existing .faf instead of replacing |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_git ~74
Generate project.faf from any GitHub repo URL - 1-click context extraction!
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Output directory for generated project.faf. If omitted, returns content without writing. |
| url | string | yes | GitHub repository URL (e.g., https://github.com/owner/repo or owner/repo) |
No output schema declared.
No examples provided.
faf_go ~87
Guided interview to Gold Code (100%): returns questions for missing fields, then applies your answers.
| Name | Type | Req | Description |
|---|---|---|---|
| answers | object | — | Answers to apply. Keys are field paths (e.g., "project.goal", "human_context.why"), values are the answers. If provided, applies answers and returns new score. |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_guide ~27
FAF MCP usage guide for Claude Desktop - Projects convention, path resolution, and UX patterns
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
faf_human_add ~78
Add a human_context field (who/what/why/where/when/how) - Non-interactive for MCP
| Name | Type | Req | Description |
|---|---|---|---|
| field | string | yes | The 6 W field to set |
| path | string | — | Project path. Sets session context for subsequent calls. |
| value | string | yes | The value to set for the field |
No output schema declared.
No examples provided.
faf_init ~116
Create project.faf (project DNA for AI) - Makes your project instantly AI-readable . Just enter path or project name. Examples: ~/Projects/my-app, my-app, /full/path/to/project
| Name | Type | Req | Description |
|---|---|---|---|
| force | boolean | — | Overwrite existing project.faf if it exists |
| path | string | — | Project path or name. Smart resolution: "my-app" finds ~/Projects/my-app OR ~/Code/my-app. Full paths like ~/Projects/app or /Users/me/code/app work too. Omit to use current directory. |
No output schema declared.
No examples provided.
faf_list ~140
List directories and discover projects with project.faf files - Essential for FAF discovery workflow
| Name | Type | Req | Description |
|---|---|---|---|
| depth | number | — | Directory depth to scan: 1 (immediate children) or 2 (one level deeper). Default: 1 |
| filter | string | — | Filter: "faf" (only dirs with project.faf), "dirs" (all directories), "all" (dirs and files). Default: "dirs" |
| path | string | yes | Directory path to list (e.g., ~/Projects, /Users/username/Projects) |
| showHidden | boolean | — | Show hidden files/directories (starting with .). Default: false |
| Name | Type | Req | Description |
|---|---|---|---|
| directory | string | yes | Absolute path that was scanned |
| entries | array | yes | The listed entries |
| fafProjects | number | — | How many entries contain a project.faf |
| filter | string | — | Filter applied: faf | dirs | all |
| total | number | yes | Number of entries returned |
No examples provided.
faf_quick ~88
Lightning-fast .faf creation - One-liner format: "name, description, language, framework, hosting"
| Name | Type | Req | Description |
|---|---|---|---|
| force | boolean | — | Force overwrite existing .faf file |
| input | string | yes | Quick input: "project-name, description, language, framework, hosting" (minimum: name, description) |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_read ~45
Read a file within the project root (cwd / FAF_ALLOWED_ROOTS). Paths that escape the project are refused.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | Absolute or relative file path to read |
No output schema declared.
No examples provided.
faf_readme ~92
Extract 6 Ws (Who/What/Why/Where/When/How) from README.md into human_context - Smart pattern matching
| Name | Type | Req | Description |
|---|---|---|---|
| apply | boolean | — | Apply extracted content to project.faf (default: preview only) |
| force | boolean | — | Overwrite existing human_context values (default: only fill empty slots) |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_recall ~105
Recall memories from the project soul (.fafm), ranked by priority then recency.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | — | Max memories to return |
| minPriority | string | — | Priority floor (default ephemeral) |
| path | string | — | Project path. Sets session context for subsequent calls. |
| query | string | — | Case-insensitive substring match on memory text (optional) |
| tags | array | — | Filter by tag intersection |
| type | string | — | Filter by memory type |
| Name | Type | Req | Description |
|---|---|---|---|
| memories | array | yes | — |
| soul | string | — | — |
| soulTotal | number | — | Total memories in the soul |
| total | number | yes | Number returned |
No examples provided.
faf_score ~59
Calculate your project's AI-readability from project.faf (project DNA for AI) - F1-inspired metrics!
| Name | Type | Req | Description |
|---|---|---|---|
| details | boolean | — | Include detailed breakdown and improvement suggestions |
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| active | number | — | Slots active for this app_type |
| empty | number | — | Active slots still empty |
| hasFaf | boolean | yes | Whether a readable, valid project.faf was scored |
| ignored | number | — | Slots marked slotignored (inactive for this app_type) |
| inherited | boolean | — | True if the score is attested from a source repo (app_type: about) |
| nextTier | object|null | — | Next tier above the current score, or null at top tier |
| parity | object | — | Determinism parity receipt — an engine-agnostic hash any conformant scorer reproduces for this exact file. Third-party verifiable: sha256(projection) === parityHash. |
| path | string | — | Path that was scored |
| populated | number | — | Active slots that are filled |
| score | number | yes | AI-readiness score, 0-100 |
| tier | string | yes | Tier name for this score (e.g. Bronze, Trophy) |
| total | number | — | Total slots |
No examples provided.
faf_setup ~132
Install the native SessionStart hook — every Claude Code session in this project starts with fresh .faf context. Shows the exact settings JSON first (preview); writes only with confirm: true. Non-destructive: existing settings and hooks are preserved. remove: true uninstalls exactly the faf hook.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | — | Actually write the hook into .claude/settings.json. Without it, faf_setup only previews. |
| path | string | — | Project path. Defaults to the current project context. |
| remove | boolean | — | Remove the faf SessionStart hook (and only it) from .claude/settings.json. |
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | What faf_setup did |
| hookCommand | string | — | The command the SessionStart hook runs |
| message | string | yes | Human-readable summary |
| settings | object | — | The full settings object as written (or as it would be written in preview) |
| settingsPath | string | yes | The settings file involved |
No examples provided.
faf_status ~45
Check if your project has project.faf (project DNA for AI) - Shows AI-readability status
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| directory | string | yes | Directory that was checked |
| filename | string|null | — | The .faf filename, if found |
| hasFaf | boolean | yes | Whether a project.faf (or .faf) was found |
| path | string|null | — | Absolute path to the .faf file, if found |
No examples provided.
faf_sync ~45
Sync project.faf (project DNA for AI) with CLAUDE.md - Bi-directional context
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_tri_sync ~70
Tri-directionally sync project.faf ↔ CLAUDE.md ↔ MEMORY.md so context persists across sessions.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | — | export = sync .faf to MEMORY.md, status = show MEMORY.md state |
| path | string | — | Project path. Sets session context for subsequent calls. |
No output schema declared.
No examples provided.
faf_trust ~48
Attest project.faf integrity — validity, score, and a deterministic parity hash any conformant engine reproduces.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | — | Project path. Sets session context for subsequent calls. |
| Name | Type | Req | Description |
|---|---|---|---|
| hasFaf | boolean | yes | Whether a project.faf was found |
| parity | object | — | Determinism parity receipt (same shape as faf_score.parity). |
| path | string | — | Path that was attested |
| reason | string | — | Why validation failed, when valid is false |
| receipt | object | — | The ✪ trust receipt — render-identical, self-verifying score+parity artifact. |
| score | number | — | AI-readiness score, 0-100 |
| sourceSha256 | string | — | SHA-256 of the raw .faf bytes |
| tier | string | — | Tier name for this score |
| valid | boolean | yes | Whether the project.faf is readable and valid |
No examples provided.
faf_write ~58
Write a file within the project root (cwd / FAF_ALLOWED_ROOTS). Paths that escape the project are refused.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | Content to write to the file |
| path | string | yes | Absolute or relative file path to write |
No output schema declared.
No examples provided.