gemini-faf-mcp
Google Gemini向けの永続的なプロジェクトコンテキスト。一度定義すれば、どこでも同期。
FAFが定義し、MDが指示し、AIがコーディングする。
Geminiの新しいセッションのたびにプロジェクトを説明し直すのはやめましょう。Geminiの会話は毎回ゼロから始まります。スタック、目標、規約を毎回言い直す必要はありません。.faf は、そのすべてをキャプチャする1つの構造化ファイルです。このパッケージは、Geminiがそれを読み取れるようにするMCPサーバーです。
👁 PyPI
👁 Downloads
👁 Tests
👁 IANA
ビフォー・アフター
Without FAF With FAF (.faf at 85%+ Bronze)
───────────────────────── ─────────────────────────
You: "I'm using FastAPI with... You: "Add a /users/me endpoint"
PostgreSQL, pytest, and..." Gemini: [generates correct code,
Gemini: "Got it. What's the uses your auth pattern,
codebase like?" matches your test style]
You: "It's a REST API for..."
[5 minutes of re-explaining]
Gemini: [now ready to help].faf はセッション開始時に一度だけ読み込まれます。ツールが呼び出されるたびに、プロジェクトをすでに理解しているGeminiが対応します。
v2.2.0の新機能
Mk4チャンピオンシップ・スコアリングエンジン — 12個のツールすべてが、RustコンパイラやTypeScript CLIと同じスコアリングアルゴリズムを使用するようになりました。faf_score と faf_validate は、スロットレベルの詳細(populated、active、total)を返します。スコアは、あらゆる言語のすべてのFAFツール間で一致します。221のテスト、41の新しいWJTTCチャンピオンシップテスト。不要なコード(sync_faf.py)を削除しました。
v2.2.1 はパッチリリースです。パッケージの説明を、PyPI、Gemini Extensions Gallery、MCP Registry全体で「Google Gemini向けの永続的なプロジェクトコンテキスト」という標準的な表現に合わせました。コードの変更はありません。
1分でセットアップ
1. インストール
pip install gemini-faf-mcp2. Gemini CLIに追加
gemini extensions install https://github.com/Wolfe-Jam/gemini-faf-mcp3. プロジェクトコンテキストを生成
Gemini CLIで以下を実行します:
> /gemini-faf-mcp:setupCreated project.faf — Score: 85% (BRONZE) と表示されるはずです。これ以降、このプロジェクトでのすべてのGeminiセッションが自動的に読み込みます。
ヒント: スコア85% (BRONZE) は、Geminiが推測をやめるための最低ラインです。
/gemini-faf-mcp:scoreを実行して、何が不足しているか、どうすれば100% (TROPHY) に到達できるかを確認してください。
Related MCP server: rust-faf-mcp RMCP
「ワンファイル」の利点
.faf ファイルは、プロジェクトのDNAをキャプチャする構造化されたYAMLです。すべてのAIエージェントが一度読み込むだけで、あなたが何を構築しているのかを正確に把握します。
# project.faf — your project, machine-readable
faf_version: '2.5.0'
project:
name: my-api
goal: REST API for user management
main_language: Python
stack:
backend: FastAPI
database: PostgreSQL
testing: pytest
human_context:
who: Backend developers
what: User CRUD with auth
why: Replace legacy PHP service結果: Geminiはこれを一度読み込むだけでプロジェクトを理解します。20分間のオンボーディングも、誤った前提もありません。すべてのセッションが整合性の取れた状態で始まります。
FAFが定義し、MDが指示し、AIがコーディングする。
GEMINI.md はどうなりますか?
置き換える必要はありません。.faf が 生成 します。faf_gemini を実行すると、構造化されたプロジェクトデータがYAMLフロントマターとして埋め込まれた新しい GEMINI.md が作成されます。これはGemini CLIがすでに読み込んでいるものと同じですが、手動管理ではなく単一の信頼できるソースから生成されます。
> /gemini-faf-mcp:export
# Generates GEMINI.md from project.faf.faf がソースです。GEMINI.md はその出力の一つです。AGENTS.md (OpenAI Codex)、.cursorrules、CLAUDE.md なども同様のロジックです。一度書けば、どこでもレンダリングされます。
スタックの自動検出
faf_auto はプロジェクトのマニフェストファイルをスキャンし、正確なスロット値を持つ .faf を生成します。手動入力は不要です。
> Auto-detect my project stack{
"detected": {
"main_language": "Python",
"package_manager": "pip",
"build_tool": "setuptools",
"framework": "FastMCP",
"api_type": "MCP",
"database": "BigQuery"
},
"score": 100,
"tier": "TROPHY"
}スキャン対象:
ファイル | 検出内容 |
| Python + ビルドシステム + フレームワーク (FastAPI, Django, Flask, FastMCP) + データベース |
| JavaScript/TypeScript + フレームワーク (React, Vue, Next.js, Express) |
| Rust + cargo + フレームワーク (Axum, Actix) |
| Go + go modules + フレームワーク (Gin, Echo) |
| Python (フォールバック) |
| Ruby |
| PHP |
優先ルール: pyproject.toml / Cargo.toml / go.mod は package.json よりも優先されます。実際に検出された値のみを設定し、ハードコードされたデフォルト値は使用しません。
12個のツール
作成と検出
ツール | 機能 |
| プロジェクト名、目標、言語を含むスターター |
| マニフェストファイルからスタックを自動検出し、 |
| プロジェクトツリー内の |
検証とスコアリング
ツール | 機能 |
| 完全なMk4検証 — スコア、ティア、スロット数、エラー、警告 |
| クイックMk4スコア — スコア、ティア、populated/active/totalスロット数 |
読み取りと変換
ツール | 機能 |
|
|
| 解析されたFAFデータをクリーンなYAMLに変換 |
| Gemini最適化コンテキスト (プロジェクト + スタック + スコア) を取得 |
エクスポートと相互運用
ツール | 機能 |
| Gemini CLI用のYAMLフロントマター付き |
| OpenAI Codex、Cursor、その他のAIツール用の |
リファレンス
ツール | 機能 |
| FAFフォーマット情報 — IANA登録、バージョン、エコシステム |
| 15種類のプロジェクトタイプに対応した100% Trophyスコアの |
スコアとティアシステム
.faf ファイルは、どれだけの実数値がスロットに埋められているかという完全性に基づいてスコアリングされます。
スコア | ティア | 意味 |
100% | TROPHY | AIがプロジェクトの完全なコンテキストを保持 |
99% | GOLD | 例外的 |
95% | SILVER | トップティア |
85% | BRONZE | 推奨最低ライン — AIがここから構築可能 |
70% | GREEN | 強固な基盤 |
55% | YELLOW | 改善が必要 |
<55% | RED | 大きな欠落 — AIが推測を行う |
0% | WHITE | 空 |
Bronze (85%以上) を目指しましょう。 そこが、AIが推測をやめて理解し始めるポイントです。
Gemini CLIでの使用
> Create a .faf file for my Python FastAPI project
> Auto-detect my project and fill in the stack
> Score my .faf and show what's missing
> Export GEMINI.md for this project
> Show me a 100% example for an MCP server
> What is FAF and how does it work?
> Read my project.faf and summarize the stack
> Validate my .faf and fix the warningsアーキテクチャ
gemini-faf-mcp v2.2.1
├── server.py → FastMCP MCP server (12 tools, Mk4 scoring)
├── main.py → Cloud Run REST API (GET/POST/PUT)
├── models.py → 15 project type examples
└── src/gemini_faf_mcp/ → Python SDK (FAFClient, parser)MCPサーバーは、解析、検証、Mk4スコアリングを faf-python-sdk に委譲します。faf_auto でのスタック検出はPythonネイティブであり、外部CLI依存関係はありません。
テスト
pip install -e ".[dev]"
python -m pytest tests/ -v9つのWJTTCティアにわたって221のテストが通過しています (125のMCPサーバー + 55のCloud Function + 41のMk4 WJTTCチャンピオンシップ)。チャンピオンシップグレードのテストカバレッジ — WJTTC認定済み。
FAFエコシステム
1つのフォーマットで、あらゆるAIプラットフォームに対応。
パッケージ | プラットフォーム | レジストリ |
Anthropic | npm + MCP #2759 | |
gemini-faf-mcp | PyPI | |
xAI | npm | |
Rust | crates.io | |
ユニバーサル | npm |
Python SDK
MCPなしでPythonから直接FAFを使用します:
from gemini_faf_mcp import FAFClient, parse_faf, validate_faf, find_faf_file
# Parse and validate locally
data = parse_faf("project.faf")
result = validate_faf(data)
print(f"Score: {result['score']}%, Tier: {result['tier']}")
# Find .faf files automatically
faf_path = find_faf_file(".")
# Or use the Cloud Run endpoint
client = FAFClient()
dna = client.get_project_dna()Cloud Run REST API
バッジ、マルチエージェントコンテキストブローカー、音声からFAFへの変換のためのライブエンドポイント。
https://faf-source-of-truth-631316210911.us-east1.run.appX-FAF-Agent ヘッダーを介して、エージェント最適化されたレスポンス (Gemini, Claude, Grok, Jules, Codex/Copilot/Cursor) をサポートします。PUTエンドポイントを介したGemini Liveによる音声変換も可能です。main へのプッシュ時にCloud Build経由で自動デプロイされます。
gemini-faf-mcp が役に立った場合は、リポジトリにスターを付けることを検討してください。他の人が見つける助けになります。
リンク
ライセンス
MIT
Built by @wolfe_jam | wolfejam.dev
CLIを入手する
faf-cli — オリジナルのAIコンテキストCLI。すべてのビルダーにとって必須のツールです。
npx faf-cli autoAnthropic MCP #2759 · IANA登録済み: application/vnd.faf+yaml · faf.one · npm
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Wolfe-Jam/gemini-faf-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
