TL;DR: mcp-better is live on crates.io and the MCP Registry — io.github.Wolfe-Jam/mcp-better @ 0.2.0. A BETTER-tier textbook
for the 7/28 model: Rust · rmcp 3 · Discover · stamped tools/list. Default stdio; v0.2 adds opt-in Streamable HTTP in the same era.
cargo install mcp-better --version 0.2.0 mcp-better --helpFirst cargo install compiles the ecosystem once (not 100+ of our tools — just Rust deps). One-time wait; then you’re done.
What is 7/28?
7/28 is the speakable era name for the modern MCP release. Humans say 7/28.
Machines negotiate the protocol version string 2026-07-28 on the wire.
| Name | What it is |
|---|---|
| 7/28 | Era name — brandable, short, human |
| 2026-07-28 | Protocol version — the date string SDKs and clients negotiate |
That release is the largest update to MCP since launch: stateless remote servers, Discover
lifecycle, list-cache stamps, and a path that doesn’t force every host through last year’s
initialize cargo-cult. Building for 7/28 means your claims match what Discover and tools/list actually return — not a banner that says “modern” while the wire is
still 2024-shaped.
Why this was built
When 7/28 landed, three paths showed up fast:
- A — Wrap legacy. Slap a date on an old server. Ship vibes.
- B — Wait. Let the ecosystem sort it out.
- C — Build real. Greenfield to the modern model, small enough to verify.
We took C. Lessons from AAIF work (Agentic AI Foundation — discipline, honest claims, evidence over slogans) kept the surface tiny: two tools, stamped list, Discover-first smoke, CI that fails if purity or smokes break.
Not a platform. Not a FAF product install. A textbook you can run so teams can learn 7/28 without inventing their own “good enough” server first.
What makes it BETTER?
The ladder is intentional:
NONE → GOOD → [BETTER] → BEST
▲
this repo | Tier | Meaning |
|---|---|
| NONE | No MCP / no agent-context discipline |
| GOOD | MCP works — often legacy initialize, unstamped lists, mixed protocol claims |
| BETTER | Modern MCP honestly built for 7/28 — Discover, stamped lists, claimed = tested |
| BEST | Persistent project DNA for agents — faf.one/agents (one hop up) |
BETTER means, concretely:
- Protocol honesty — claim 7/28 /
2026-07-28only for surfaces you implement and test. - Discover-compatible — prefer Discover (or Auto → 7/28), not only legacy initialize.
- List cache stamps —
tools/listreturns positivettlMsandcacheScope(static catalog →public). SDK defaults are often unstamped; we stamp on purpose. - Stable tool order — same process, same order across N list calls.
- Transports in one era — stdio (default) and Streamable HTTP
(
--http) share the same 7/28 claim surface; HTTP is more road, not a new protocol era. - BETTER purity — no
project.faftax on this repo’s main. It’s a protocol textbook, not a FAF install funnel.
Who is it for?
- MCP builders learning 7/28 without forking a mega-server — copy the patterns (Discover, stamps, dual smoke).
- Host authors (Cursor, Claude Desktop, custom) who need a green stdio binary that negotiates modern protocol and returns an honest list.
- AAIF / ecosystem peers who want a small, Registry-listed cargo package with evidence bars (CI, smokes, SECURITY.md for HTTP).
- Teams teaching MCP — two tools (
health,echo) is enough to demo lifecycle without drowning students in product scope.
If you need persistent project context, multi-format DNA, and agent memory — that’s BEST, not this crate. Start at faf.one/agents.
What’s in the box (0.1 → 0.2)
- v0.1 — 7/28 over stdio: Discover,
ttlMs=60000/cacheScope=public, toolshealth+echo, CI + stdio smoke. - v0.2 — same era + Streamable HTTP (
--http),Mcp-Method/Mcp-Namesmoke, loopback Host guards, SECURITY.md threat posture (no auth/TLS — local demo only). - Registry — package transport is stdio only by design (
cargo install/ host spawn). HTTP is opt-in local demo in the same binary.
What’s next
- Keep the era honest — more road inside 7/28, not rebranding every transport as a new “protocol.”
- Harder smokes where they earn their keep — host matrix notes stay docs-grade; CI stays the ship bar.
- BEST remains one hop up — persistent context is not smuggled into the textbook.
- Feedback welcome — issues and stars if the textbook earns them.
Try it
# install (crates.io) cargo install mcp-better --version 0.2.0 mcp-better --helpFirst cargo install compiles the ecosystem once (not 100+ of our tools — just Rust deps). One-time wait; then you’re done.
# optional local HTTP demo — no auth; loopback only mcp-better --http # http://127.0.0.1:8787/mcp# from source — full ship bar git clone https://github.com/Wolfe-Jam/mcp-better.git cd mcp-better && bash scripts/ci.shRelease: v0.2.0 · crates: mcp-better · Registry: io.github.Wolfe-Jam/mcp-better
The numbers
- v0.2.0 — crates.io + MCP Registry + GitHub Release
- 2 tools —
health,echo(stable order) - 2 smokes — stdio Discover · Streamable HTTP (list + health + echo)
- Identity —
io.github.Wolfe-Jam/mcp-better(cargo) - Purity — no
project.fafon main
Small honest surface. Star it if the textbook earns it.
Star mcp-better