Let an AI agent inspect, quote, run, and return a verified Blender result.
FARPY accepts Blender jobs over MCP the same way the browser does: inspect, exact quote, explicit start, result, receipt. Discord bot is also available. IRC, Matrix, Slack, and Telegram come later.
Endpoint
HTTP MCP: https://api.farpy.com/mcp
Docs: API · Quickstart · Agent rendering · farpy_client.py
Auth model
- Use a Job API agent key:
Authorization: Bearer farpy_agent_… - Set
FARPY_AGENT_KEYin the agent environment. Do not pass the secret as a tool argument. - Account Settings
farpy_keys are a different store. They are not the MCP credential. - Do not paste an API key into Discord. Discord uses a one-time link code, not a key.
Canonical tool flow
Live tools: farpy_inspect, farpy_quote, farpy_start, farpy_status, farpy_download, farpy_receipt. Do not default to farpy_render.
farpy_inspect— No spend. Upload a .blend. FARPY inspects the scene and returns an exact locked quote for the detected frame range.farpy_quote— No spend. Lock an exact quote for a chosen frame range. Client-supplied cents are never the price.farpy_start— Spend boundary. Explicit start after the quote. Requires quote_id and legal_acceptance FARPY_LEGAL_V1. This is the only spend tool.farpy_status— No spend. Read job state until the render is complete, failed, or cancelled.farpy_download— No spend. Fetch the completed ZIP after the job finishes.farpy_receipt— No spend. Fetch the receipt and SHA-256 of the ZIP bytes. Hash is byte identity, not art review.
Spend safety
- Inspect and quote never reserve wallet funds.
- The quote is exact and locked before start. Price is server-calculated.
- Start is explicit. The agent must send the quote_id and FARPY_LEGAL_V1.
max_job_centson the agent key caps locked-quote start. Over-cap start is refused. Nothing is reserved. Missing or null cap means no per-job ceiling. Zero denies paid start.- Completed work returns a ZIP plus a receipt. SHA-256 is byte identity of that ZIP.
Limits
Blender 4.1.1, Cycles GPU, .blend, up to 100 MiB, 1–10,000 frames, from 1¢ per completed frame. Read live capabilities, pricing, and limits at runtime.