Skip to main content
Glama

rust-faf-mcp

모든 AI 세션마다 프로젝트를 다시 설명하는 일을 멈추세요. 하나의 .faf 파일이 프로젝트의 DNA를 담습니다. 모든 AI가 이 파일을 한 번 읽는 것만으로 무엇을 만드는지 즉시 파악합니다.

Crates.io Tests IANA License

FAF를 위한 Rust 네이티브 MCP(Model Context Protocol) 서버 — YAML 형식의 구조화된 AI 프로젝트 컨텍스트(application/vnd.faf+yaml)를 제공합니다. 단일 바이너리, stdio 전송, 4.3MB(스트립됨). rmcpfaf-rust-sdk 기반으로 구축되었습니다.

빠른 시작

cargo install rust-faf-mcp

그런 다음 MCP 클라이언트를 이 서버에 연결하세요:

# Claude Code
claude mcp add faf rust-faf-mcp
// WARP / Cursor / Zed / Claude Desktop — any stdio MCP client
{
  "mcpServers": {
    "faf": {
      "command": "rust-faf-mcp"
    }
  }
}

플래그나 설정 파일, 네트워크 리스너가 필요 없습니다. 순수 stdio JSON-RPC 방식입니다.

또는 Homebrew(macOS, 사전 빌드됨)를 통해 설치하세요:

brew install Wolfe-Jam/faf/rust-faf-mcp

한 번의 명령으로 영원히 해결

faf_auto는 프로젝트를 감지하고, .faf 파일을 생성하며, 최대 점수로 향상시키고, CLAUDE.md를 동기화합니다. 이 모든 것이 한 번에 이루어집니다:

faf_auto complete
━━━━━━━━━━━━━━━━━
Score: 0% → 85% (+85) 🥈 Silver
Steps:
  1. Created project.faf
  2. Second enhancement pass
  3. Created CLAUDE.md

Path: /home/user/my-project

생성 결과:

# project.faf — your project, machine-readable
faf_version: "3.3"
project:
  name: my-api
  goal: REST API for user management
  main_language: Rust
  version: "0.1.0"
  license: MIT
instant_context:
  what_building: REST API for user management
  tech_stack: Rust 2021
  key_files:
    - Cargo.toml
    - src/main.rs
    - README.md
  commands:
    build: cargo build
    test: cargo test
stack:
  backend: Rust
  build_tool: cargo

모든 AI 에이전트가 이 파일을 한 번 읽으면 무엇을 만드는지 정확히 이해합니다. 20분씩 걸리는 온보딩이나 잘못된 가정은 이제 없습니다.

도구

생성 및 감지

도구

기능

faf_auto

한 번의 명령으로 AI 컨텍스트 구축 — 초기화, 향상, 동기화, 점수 산정 완료

faf_init

Cargo.toml, package.json, pyproject.toml 또는 go.mod에서 project.faf 생성 또는 향상

faf_git

GitHub 저장소 URL에서 project.faf 생성 — 클론 불필요

faf_discover

디렉토리 트리를 탐색하여 가장 가까운 project.faf 찾기

점수 산정 및 검증

도구

기능

faf_score

필드별 분석을 포함한 AI 준비도 0-100% 점수 산정

faf_sync

project.fafCLAUDE.md 동기화 (기존 콘텐츠 유지)

최적화

도구

기능

faf_read

project.faf 내용 파싱 및 표시

faf_compress

토큰 제한 컨텍스트를 위한 .faf 압축 (minimal / standard / full)

faf_tokens

각 압축 수준에서의 토큰 수 추정

faf_init은 반복 가능합니다. 다시 실행하면 누락된 부분을 채워주며, 실행할 때마다 점수가 올라갑니다.

아키텍처

src/
├── main.rs      # ~20 lines — tokio entry, rmcp stdio transport
├── server.rs    # FafServer: #[tool_router], ServerHandler, resources
└── tools.rs     # Business logic — all 9 tools, pure functions returning Value
  • 런타임: tokio 싱글 스레드 (current_thread)

  • HTTP: reqwest 비동기 (GitHub API용 faf_git에서만 사용)

  • SDK: 파싱, 검증, 압축, 탐색을 위한 faf-rust-sdk 1.3

  • 서버: #[tool_router] 매크로를 사용하는 rmcp 1.1 — JSON-RPC, 스키마 생성, 전송 처리

도구는 serde_json::Value를 반환합니다. 서버는 이를 rmcp의 IntoCallToolResult를 위해 Result<String, String>으로 변환합니다.

테스트

6개 파일에 걸친 112개의 테스트:

cargo test    # runs all 112

파일

테스트

커버리지

mcp_protocol.rs

9

초기 핸드셰이크, 도구/목록, 리소스, 스키마 검증, ID 보존

tools_functional.rs

25

9개 도구 전체 — 정상 경로, 오류 경로, 언어 감지

tier1_security.rs

12

경로 탐색, 널 바이트, 셸 인젝션, 과도한 입력, 잘못된 JSON

tier2_engine.rs

35

손상된 YAML, 동기화 교체, 파이프라인, 이중 매니페스트, 레거시 파일명, 직접 경로

tier3_edge_cases.rs

10

유니코드, CJK, 점수 경계, 알 수 없는 필드, GitHub URL 파싱

tier4_aero.rs

21

매니페스트 구조, 버전 동기화, server.json, 매니페스트-서버 교차 검증

테스트는 컴파일된 바이너리를 하위 프로세스로 생성하고 stdin/stdout JSON-RPC를 통해 통신합니다. 실제 서버에 대한 진정한 통합 테스트입니다.

FAF 생태계

하나의 형식으로 모든 AI 플랫폼 지원.

패키지

플랫폼

레지스트리

rust-faf-mcp

Rust

crates.io

claude-faf-mcp

Anthropic

npm + MCP #2759

gemini-faf-mcp

Google

PyPI

grok-faf-mcp

xAI

npm

faf-cli

Universal

npm

소스에서 빌드

git clone https://github.com/Wolfe-Jam/rust-faf-mcp
cd rust-faf-mcp
cargo build --release
# Binary at target/release/rust-faf-mcp (4.3 MB)

에디션: 2021 | LTO: 활성화 | Strip: 심볼

rust-faf-mcp가 유용했다면 저장소에 별표를 눌러주세요. 다른 사람들이 찾는 데 큰 도움이 됩니다.

링크

라이선스

MIT


제작자: @wolfe_jam | wolfejam.dev

-
security - not tested
A
license - permissive license
-
quality - not tested

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/rust-faf-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server