frootai-orchard-mcp
v0.1.0
Published
Model Context Protocol (MCP) server for the FAI Harvest pipeline. Exposes 9 tools (discover_repo / extract_facts / retrieve_exemplars / list_plays / import_accelerator / customize_play / re_harvest / approve_play / list_pending_reviews) over stdio. Run an
Maintainers
Readme
frootai-orchard-mcp
MCP server for the FAI Harvest pipeline. Run any AI accelerator repo through harvest — discover → extract → retrieve → scaffold → compose-infra → import as a signed Solution Play — from inside your MCP client (GitHub Copilot in VS Code, Cursor, Claude Desktop, Continue.dev, Zed, custom Foundry agents).
Distinct from
@frootai/mcp-orchard, the read-only v1.0 catalog server (search / show / install). This server runs the pipeline.
Install
npx -y frootai-orchard-mcpWire into your MCP client (.vscode/mcp.json, Cursor / Claude config, …):
{
"mcpServers": {
"frootai-orchard": {
"command": "npx",
"args": ["-y", "frootai-orchard-mcp"]
}
}
}Tools (9)
| Tool | Auth | Purpose |
|---|---|---|
| discover_repo | free | Resolve + classify a repo (wraps Harvest [H1]) |
| extract_facts | free | Architecture + facts extraction (wraps [H3]) |
| retrieve_exemplars | free | Top-N reference plays by similarity (wraps [H4]) |
| list_plays | free | Browse the catalog (slim CDN index) |
| import_accelerator | Pro | Run the full pipeline → signed ZIP |
| customize_play | Pro | Apply a policy overlay → 3-way diff + commit token |
| re_harvest | Pro | Re-run at upstream HEAD → diff |
| approve_play | founder | Commit a play to the marketplace catalog |
| list_pending_reviews | reviewer | List committed plays awaiting founder approval |
The no-auth tools work immediately. Paid tools require a Pro+ entitlement, resolved via the OAuth device flow (lands in [H10.11]).
Status
H10.1 — scaffold. The protocol dispatcher (MCP 2025-03-26, JSON-RPC 2.0),
the tool registry, and the stdio transport are in place; the 9 tool handlers
land one per sub-phase ([H10.3]–[H10.11]). tools/list shows only the tools
registered so far.
Embed as a library
const { createServer, runStdio, TOOL_NAMES } = require("frootai-orchard-mcp");
const server = createServer({ services: { /* harvest deps */ } });
await runStdio(server);Doctrine
- Zero runtime dependencies. The MCP wire protocol is hand-rolled — same supply-chain-safety reason the harvest backend hand-rolls its JWT signer and Stripe signature verifier.
- Pure, injectable, hermetically testable.
createServeris side-effect free; side-effecting deps are injected viaservices, so the whole dispatcher is unit-tested without a network, fs, or a live MCP client.
License
MIT
