VOOZH about

URL: https://glama.ai/mcp/servers/Wolfe-Jam/gemini-faf-mcp?locale=es-ES

⇱ gemini-faf-mcp by Wolfe-Jam | Glama


gemini-faf-mcp

Contexto de proyecto persistente para Google Gemini. Define una vez. Sincroniza en todas partes.

FAF define. MD instruye. IA programa.

Deja de explicar tu proyecto en cada nueva sesión de Gemini. Cada conversación con Gemini comienza desde cero: vuelves a exponer tu stack, tus objetivos y tus convenciones cada vez. .faf es un archivo estructurado que captura todo eso. Este paquete es el servidor MCP que permite a Gemini leerlo.

👁 PyPI
👁 Descargas
👁 Pruebas
👁 IANA

Antes y después

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 se lee una vez al inicio de la sesión. Cada llamada a la herramienta llega a un Gemini que ya conoce tu proyecto.

Novedades en v2.2.0

Motor de puntuación del campeonato Mk4 — las 12 herramientas ahora utilizan el mismo algoritmo de puntuación que el compilador de Rust y la CLI de TypeScript. faf_score y faf_validate devuelven detalles a nivel de ranura (populated, active, total). Las puntuaciones coinciden en todas las herramientas FAF en todos los lenguajes. 221 pruebas, 41 nuevas pruebas del campeonato WJTTC. Código muerto eliminado (sync_faf.py).

v2.2.1 es una versión de parche: la descripción del paquete se alineó con la redacción canónica "Contexto de proyecto persistente para Google Gemini" en PyPI, la Galería de extensiones de Gemini y el Registro MCP. Sin cambios en el código.


Configuración en un minuto

1. Instalar

pip install gemini-faf-mcp

2. Añadir a la CLI de Gemini

gemini extensions install https://github.com/Wolfe-Jam/gemini-faf-mcp

3. Generar el contexto de tu proyecto

En tu CLI de Gemini:

> /gemini-faf-mcp:setup

Deberías ver: Created project.faf — Score: 85% (BRONZE). A partir de este momento, cada sesión de Gemini en este proyecto lo lee automáticamente.

Consejo: Una puntuación del 85% (BRONZE) es el mínimo para que Gemini deje de adivinar. Ejecuta /gemini-faf-mcp:score para ver qué falta y cómo llegar al 100% (TROPHY).


Related MCP server: rust-faf-mcp RMCP

La ventaja del "archivo único"

Un archivo .faf es un YAML estructurado que captura el ADN de tu proyecto. Cada agente de IA lo lee una vez y sabe exactamente qué estás construyendo.

# 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

Resultado: Gemini lo lee una vez y conoce tu proyecto. Sin 20 minutos de incorporación. Sin suposiciones erróneas. Cada sesión comienza alineada.

FAF define. MD instruye. IA programa.

¿Qué pasa con mi GEMINI.md?

No lo reemplazas. .faf lo genera. Ejecuta faf_gemini y obtendrás un GEMINI.md nuevo con los datos estructurados del proyecto integrados como YAML frontmatter: el mismo GEMINI.md que la CLI de Gemini ya lee, pero generado a partir de una única fuente de verdad en lugar de mantenerse manualmente.

> /gemini-faf-mcp:export
# Generates GEMINI.md from project.faf

.faf es la fuente. GEMINI.md es uno de sus resultados. La misma lógica para AGENTS.md (OpenAI Codex), .cursorrules, CLAUDE.md y otros: escribe una vez, renderiza en todas partes.


Detección automática de tu stack

faf_auto escanea los archivos de manifiesto de tu proyecto y genera un .faf con valores de ranura precisos. No se necesita entrada manual.

> 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"
}

Lo que escanea:

Archivo

Detecta

pyproject.toml

Python + sistema de compilación + frameworks (FastAPI, Django, Flask, FastMCP) + bases de datos

package.json

JavaScript/TypeScript + frameworks (React, Vue, Next.js, Express)

Cargo.toml

Rust + cargo + frameworks (Axum, Actix)

go.mod

Go + módulos go + frameworks (Gin, Echo)

requirements.txt

Python (alternativa)

Gemfile

Ruby

composer.json

PHP

Regla de prioridad: pyproject.toml / Cargo.toml / go.mod tienen prioridad sobre package.json. Solo establece valores que realmente se detectan; no hay valores predeterminados codificados.


Las 12 herramientas

Crear y detectar

Herramienta

Qué hace

faf_init

Crea un archivo .faf inicial con el nombre del proyecto, objetivo y lenguaje

faf_auto

Detecta automáticamente el stack de los archivos de manifiesto y genera/actualiza .faf

faf_discover

Encuentra archivos .faf en el árbol del proyecto

Validar y puntuar

Herramienta

Qué hace

faf_validate

Validación completa Mk4: puntuación, nivel, recuento de ranuras, errores, advertencias

faf_score

Puntuación rápida Mk4: puntuación, nivel, recuento de ranuras pobladas/activas/totales

Leer y transformar

Herramienta

Qué hace

faf_read

Analiza un archivo .faf en datos estructurados

faf_stringify

Convierte los datos FAF analizados de nuevo a YAML limpio

faf_context

Obtiene contexto optimizado para Gemini (proyecto + stack + puntuación)

Exportar e interoperabilidad

Herramienta

Qué hace

faf_gemini

Exporta GEMINI.md con YAML frontmatter para la CLI de Gemini

faf_agents

Exporta AGENTS.md para OpenAI Codex, Cursor y otras herramientas de IA

Referencia

Herramienta

Qué hace

faf_about

Información del formato FAF: registro IANA, versión, ecosistema

faf_model

Obtiene un ejemplo .faf con puntuación 100% Trophy para cualquiera de los 15 tipos de proyectos


Sistema de puntuación y niveles

Tu archivo .faf se puntúa según su integridad: cuántas ranuras están llenas con valores reales.

Puntuación

Nivel

Significado

100%

TROPHY

La IA tiene contexto completo de tu proyecto

99%

GOLD

Excepcional

95%

SILVER

Nivel superior

85%

BRONZE

Mínimo recomendado: la IA puede construir desde aquí

70%

GREEN

Base sólida

55%

YELLOW

Necesita mejorar

<55%

RED

Brechas importantes: la IA adivinará

0%

WHITE

Vacío

Apunta al Bronce (85%+). Ahí es donde la IA deja de adivinar y empieza a saber.


Uso con la CLI de Gemini

> 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

Arquitectura

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)

El servidor MCP delega en faf-python-sdk para el análisis, la validación y la puntuación Mk4. La detección de stack en faf_auto es nativa de Python: sin dependencias externas de CLI.


Pruebas

pip install -e ".[dev]"
python -m pytest tests/ -v

221 pruebas superadas en 9 niveles WJTTC (125 servidor MCP + 55 Cloud Function + 41 campeonato Mk4 WJTTC). Cobertura de pruebas de nivel de campeonato: certificado por WJTTC.


Ecosistema FAF

Un formato, todas las plataformas de IA.

Paquete

Plataforma

Registro

claude-faf-mcp

Anthropic

npm + MCP #2759

gemini-faf-mcp

Google

PyPI

grok-faf-mcp

xAI

npm

rust-faf-mcp

Rust

crates.io

faf-cli

Universal

npm


SDK de Python

Usa FAF directamente en Python sin MCP:

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()

API REST de Cloud Run

Endpoint en vivo para insignias, intermediación de contexto multi-agente y mutaciones de voz a FAF.

https://faf-source-of-truth-631316210911.us-east1.run.app

Admite respuestas optimizadas para agentes (Gemini, Claude, Grok, Jules, Codex/Copilot/Cursor) a través del encabezado X-FAF-Agent. Mutaciones de voz a través de Gemini Live mediante el endpoint PUT. Despliegue automático a través de Cloud Build al hacer push a main.


Si gemini-faf-mcp te ha sido útil, considera marcar el repositorio con una estrella: ayuda a otros a encontrarlo.


Enlaces

Licencia

MIT


Creado por @wolfe_jam | wolfejam.dev


Obtén la CLI

faf-cli — La CLI de contexto de IA original. Imprescindible para todo constructor.

npx faf-cli auto

Anthropic MCP #2759 · Registrado en IANA: application/vnd.faf+yaml · faf.one · npm

A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
2dResponse time
1wRelease cycle
15Releases (12mo)
Commit activity

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