FAI Orchard Harvest MCP for Python
A Python, zero-runtime-dependency MCP surface for the governed Harvest pipeline.
PyPI · FAI Orchard · MCP guide
Catalog or Harvest?
| Need | Package |
|---|---|
| Read published accelerator catalog records | Orchard catalog source package frootai-mcp-orchard |
| Run repository discovery, extraction, retrieval, import, customization, or approval | frootai-orchard-mcp — this package |
Current version 0.1.1 is an early Harvest MCP surface. Confirm which handlers your installed release registers before relying on a specific pipeline operation.
Current registry truth: the tool registry declares nine handlers, including
list_pending_reviews. The0.1.1CLI help banner still says eight; treattools/listas authoritative until that banner is corrected in a future code release.
Five steps
1. Install or run in isolation
uvx frootai-orchard-mcp
Or install into a managed Python 3.10+ environment:
python -m pip install --upgrade "frootai-orchard-mcp[sdk]"
2. Connect an MCP client
{
"servers": {
"frootai-orchard-harvest": {
"type": "stdio",
"command": "uvx",
"args": ["frootai-orchard-mcp"]
}
}
}
3. Discover, extract, and retrieve
discover_repo → extract_facts → retrieve_exemplars → list_plays
These free operations establish source identity and structured evidence before any import or customization.
4. Import and customize with entitlement
import_accelerator → customize_play → re_harvest
Import and drift operations require eligible entitlements. Policy overlays and three-way diffs must remain reviewable; no entitlement implies blanket approval to overwrite a target.
5. Separate generation from approval
list_pending_reviews is reviewer-gated. approve_play is founder-gated. Keep candidate generation, review, and final promotion as separate identities and operations.
Nine-tool surface
Expand the Harvest pipeline tools and access boundaries
| Tool | Access | Purpose |
|---|---|---|
discover_repo |
Free | Resolve and classify a source repository |
extract_facts |
Free | Extract structured architecture and IaC facts |
retrieve_exemplars |
Free | Find canonical reference Plays |
list_plays |
Free | Browse the slim Play catalog |
import_accelerator |
Pro / import |
Run import and return signed artifact evidence |
customize_play |
Pro / upgrade-to-play |
Apply organization policy and return a reviewable diff |
re_harvest |
Pro / import |
Re-run at an updated source revision and report drift |
list_pending_reviews |
Reviewer | List candidates awaiting governance review |
approve_play |
Founder | Promote an authorized candidate |
Embed with injected services
from frootai_orchard_mcp import TOOL_NAMES, create_server, run_stdio
server = create_server(
services={
# Inject repository, extraction, retrieval, artifact,
# identity, telemetry, and governance adapters.
}
)
print(TOOL_NAMES)
run_stdio(server)
The core is standard-library based and designed for hermetic testing. Missing service capabilities must return explicit errors rather than synthetic success.
Protocol resources and prompts
The Harvest surface exposes frootai://plays, frootai://policy-schema, frootai://auth/device, and frootai://exemplars/{id}. Guided prompts are import-rag, import-agent, customize-for-my-company, and audit-existing-infra. Prompts prefill instructions and never invoke tools on their own.
Transport options
# Stdio — default
uvx frootai-orchard-mcp
# Streamable HTTP + SSE
uvx frootai-orchard-mcp --http --port 8080
# Inspect without starting
uvx frootai-orchard-mcp --version
uvx frootai-orchard-mcp --help
The Python 0.1.1 CLI does not advertise the npm server's --ws option. Do not assume WebSocket parity; query the selected runtime's help and MCP capabilities.
Safety boundaries
- Stdio is the smallest default process boundary.
FROOTAI_TOKENand local identity state are resolved without returning raw credentials.- Treat source repositories and generated instructions as untrusted inputs.
- Bind evidence to source revision, artifact identity, policy overlay, and approval receipt.
- Validate generated infrastructure independently before deployment.
- Keep reviewer/founder operations separate from automated import identities.
Verify and develop
Build the package and run repository-level Orchard/Harvest protocol and service-adapter tests. Every injected adapter should cover denial, timeout, malformed data, partial failure, retry, and rollback behavior.
Links
License
MIT © 2026 FrootAI.
Metadata
Release files for frootai-orchard-mcp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| frootai_orchard_mcp-0.1.1.tar.gz | 66.3 kB | Without provenance | Details for frootai_orchard_mcp-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| frootai_orchard_mcp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for frootai_orchard_mcp-0.1.1-py3-none-any.whl |
Total release size: 121.3 kB
Release files / frootai_orchard_mcp-0.1.1.tar.gz
| Download URL | frootai_orchard_mcp-0.1.1.tar.gz |
|---|---|
| Size | 66.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6a174b2b8d34d91dd2e6aa72d14be22f9fb62525071209e88f5eda7427b54572
|
|
BLAKE2b-256 checksum How to use checksums |
34cb71498e7ded5001fa96029c008515a07bc96c66c0b5751a0e509dd9d354e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / frootai_orchard_mcp-0.1.1-py3-none-any.whl
| Download URL | frootai_orchard_mcp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 55.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97ad9d9ec3be486e98e68503a83375f18c7b722ac1b4f38441a61ca9ec4f5465
|
|
BLAKE2b-256 checksum How to use checksums |
f61bb7e58a27b702101a15e5ec73fcff50853c6c6d96831ad3f9a333e515b131
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Security for frootai-orchard-mcp 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.