# Faf Crate

> Persistent Project Context for Rust — IANA-registered .faf format · cargo add faf meta-crate

- **Type:** MCP server
- **Install:** `agentstack add mcp-wolfe-jam-faf-crate`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Wolfe-Jam](https://agentstack.voostack.com/s/wolfe-jam)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [Wolfe-Jam](https://github.com/Wolfe-Jam)
- **Source:** https://github.com/Wolfe-Jam/faf-crate
- **Website:** https://faf.one

## Install

```sh
agentstack add mcp-wolfe-jam-faf-crate
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# faf

**Persistent Project Context for Rust. `cargo add faf` and you're in.**

**FAF defines. MD instructs. AI codes.**

One crate, full ecosystem. Parse, validate, compile, and broadcast `.faf` files in Rust.

FAF (Foundational AI-context Format) is the IANA-registered format for persistent AI project context (`application/vnd.faf+yaml`). This meta-crate re-exports everything you need.

## Install

```bash
cargo add faf
```

With Radio Protocol + Axum middleware:

```bash
cargo add faf --features radio,axum
```

## Quick Start

```rust
use faf::{parse, binary};

let yaml = std::fs::read_to_string("project.faf")?;

// Parse
let doc = parse(&yaml)?;
println!("{} — {}% AI-ready", doc.project_name(), doc.score().unwrap_or(0));

// Compile to FAFb binary
let fafb = binary::compile(&yaml)?;
println!("{} bytes YAML → {} bytes FAFb", yaml.len(), fafb.len());
```

## Feature Flags

| Feature | Default | Crate | What you get |
|---------|---------|-------|--------------|
| `sdk` | yes | [faf-rust-sdk](https://crates.io/crates/faf-rust-sdk) | Parse, validate, compile, FAFb binary format |
| `radio` | no | [faf-radio-rust](https://crates.io/crates/faf-radio-rust) | Radio Protocol — broadcast AI context via WebSocket |
| `axum` | no | faf-rust-sdk/axum | `FafContext` extractor + `FafLayer` middleware |

## Radio Protocol

Broadcast AI context once, every tool receives:

```rust
use faf::faf_radio_rust::{RadioClient, RadioConfig};

let mut client = RadioClient::new(RadioConfig::grok());
client.connect().await?;
client.tune(vec!["91.0".into()]).await?;

// Broadcast metadata on a frequency
client.broadcast("91.0", serde_json::json!({
    "type": "fafb",
    "project": "my-app",
    "size": 220,
})).await?;
```

## Axum Middleware

Inject `.faf` project context into every request:

```rust
use faf::{FafLayer, FafContext};

let app = Router::new()
    .route("/", get(handler))
    .layer(FafLayer::discover());

async fn handler(faf: FafContext) -> String {
    format!("Project: {}", faf.project_name())
}
```

## Ecosystem

| Crate | Version | What |
|-------|---------|------|
| [`faf`](https://crates.io/crates/faf) | 0.3.0 | This meta-crate |
| [`faf-rust-sdk`](https://crates.io/crates/faf-rust-sdk) | 1.3.0 | Core SDK — parse, validate, compile, FAFb |
| [`faf-radio-rust`](https://crates.io/crates/faf-radio-rust) | 0.2.0 | Radio Protocol client |
| [`rust-faf-mcp`](https://crates.io/crates/rust-faf-mcp) | 0.1.0 | MCP server for .faf |

Also available in [TypeScript](https://www.npmjs.com/package/faf-cli), [Python](https://pypi.org/project/faf-python-sdk/), and [Zig](https://github.com/Wolfe-Jam/xai-faf-zig).

If `faf` has been useful, consider starring the repo — it helps others find it.

## Links

- **Website:** [faf.one](https://faf.one)
- **IANA:** [application/vnd.faf+yaml](https://www.iana.org/assignments/media-types/application/vnd.faf+yaml)
- **Docs:** [docs.rs/faf](https://docs.rs/faf)
- **Platform:** [mcpaas.live](https://mcpaas.live)

## License

MIT

---

Built by [Wolfe James](https://github.com/Wolfe-Jam) | [faf.one](https://faf.one)

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Wolfe-Jam](https://github.com/Wolfe-Jam)
- **Source:** [Wolfe-Jam/faf-crate](https://github.com/Wolfe-Jam/faf-crate)
- **License:** MIT
- **Homepage:** https://faf.one

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** yes

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-wolfe-jam-faf-crate
- Seller: https://agentstack.voostack.com/s/wolfe-jam
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
