Intent's MCP servers run on FastMCP Cloud's free tier, Cloudflare Workers, or your local machine. Zero infrastructure cost, auto-deploy on push.
Push your servers to GitHub, point FastMCP Cloud at them, and you're live. Auto-redeploys on every push to main.
Copy servers/ to your intent repo root and push to GitHub.
Go to fastmcp.cloud and authenticate with your GitHub account.
One per server: intent-notice → servers/notice.py, intent-spec → servers/spec.py, intent-observe → servers/observe.py, intent-knowledge → servers/knowledge.py
Total cost: $0/month on FastMCP Cloud free tier or Cloudflare Workers (100K req/day). The intent-knowledge server can be deployed independently if you're using the Knowledge Engine as a separate product.
Add the servers to your project's Claude Code settings. Each server gets a URL endpoint that Claude Code calls through MCP.
{
"mcpServers": {
"intent-notice": {
"type": "url",
"url": "https://intent-notice.fastmcp.cloud/mcp"
},
"intent-spec": {
"type": "url",
"url": "https://intent-spec.fastmcp.cloud/mcp"
},
"intent-observe": {
"type": "url",
"url": "https://intent-observe.fastmcp.cloud/mcp"
},
"intent-knowledge": {
"type": "url",
"url": "https://intent-knowledge.fastmcp.cloud/mcp"
}
}
}
Run all four servers locally for development and testing. Each gets its own port. Point Claude Code at localhost.
pip install fastmcp # Four terminals: fastmcp run servers/notice.py --transport streamable-http --port 8001 fastmcp run servers/spec.py --transport streamable-http --port 8002 fastmcp run servers/observe.py --transport streamable-http --port 8003 fastmcp run servers/knowledge.py --transport streamable-http --port 8004
Point Claude Code at http://localhost:800X/mcp for each server.
FastMCP Cloud is the fastest path, but Intent's servers are standard Python — they run anywhere.
| Platform | Free Tier | Best For |
|---|---|---|
| FastMCP Cloud | Unlimited (beta) | Fastest, zero config |
| Cloudflare Workers | 100K req/day | Edge, stateless |
| Railway | $5 free credit | 24/7, persistent state |
| Render | 750 hrs/month | Containers |
Replace in-memory dicts with file I/O to the .intent/ directory. The servers already generate correct frontmatter format — the transition is swapping dict operations for file read/write + git commit.
# Signals: read/write frontmatter + body .intent/signals/*.md # Specs: read/write frontmatter + sections spec/SPEC-*.md # Contracts: one file per contract spec/contracts/CON-*.md # Events: append-only JSONL .intent/events/events.jsonl # For cloud-hosted servers: # Use GitHub API for remote read/write
The servers already generate correct frontmatter. The transition is: swap dict operations for file read/write + git commit. Full audit trail lives in git history.