agentdraft-mcp — MCP server for AgentDraft
An MCP server that exposes AgentDraft — the ops API for AI agents with inbox, conflict-free calendar, and audit tools — as a set of tools any MCP-aware AI client can call.
Use this if your agent runtime is Claude Desktop, Claude Code, Cursor,
Cline, an OpenAI Agents SDK app, or any other MCP host. The server is
a thin wrapper around the agentdraft
Python SDK — same auth, same errors, same semantics as the REST API
and the language SDKs.
Install
pip install agentdraft-mcp
Requires Python 3.10+ and a valid avs_live_… agent key from the
AgentDraft dashboard.
Upgrade
pip install -U agentdraft-mcp
Release notes: https://agentdraft.io/changelog
Configure your MCP client
agentdraft-mcp is on PyPI, so once it's installed the JSON config below
works on any MCP host right now — no extra downloads.
Claude Desktop / Claude Code — JSON config (recommended)
Edit ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) or the equivalent on Windows/Linux:
{
"mcpServers": {
"agentdraft": {
"command": "agentdraft-mcp",
"env": {
"AGENTDRAFT_API_KEY": "avs_live_..."
}
}
}
}
Cursor / Cline / generic stdio host
{
"mcpServers": {
"agentdraft": {
"command": "python",
"args": ["-m", "agentdraft_mcp"],
"env": {
"AGENTDRAFT_API_KEY": "avs_live_..."
}
}
}
}
For local development against a dev backend, also set
AGENTDRAFT_BASE_URL=http://localhost:8080.
Claude Desktop — .mcpb Desktop Extension (drag-drop)
Each release also ships a .mcpb Desktop Extension bundle on
GitHub Releases. Drag agentdraft-mcp.mcpb into Claude
Desktop → Settings → Extensions and paste your avs_live_… API key — no
JSON editing, no pip install.
Tools
| Tool | Purpose |
|---|---|
whoami |
Confirm the API key and return the agent's identity, priority, scopes, and the owner's timezone |
get_availability |
List slots open to the calling agent in [start, end) |
create_hold |
Reserve a slot tentatively (30 s TTL); optional title / invitee |
release_hold |
Release a hold so other agents can claim it |
commit_booking |
Finalize a booking — atomic compare-and-swap; optional title / invitee |
cancel_booking |
Cancel a committed booking the calling agent owns |
All times are ISO 8601 strings (2026-06-01T14:00:00Z). All write
tools accept an idempotency_key for safe retries. create_hold and
commit_booking also accept an optional title and invitee
({name, email, notes}) recording who the slot is for — surfaced to the
owner in the dashboard.
How conflicts surface
When two agents race for the same slot, exactly one wins. Losing agents receive a structured outranked payload — not a string error:
{
"error": "outranked",
"winning_booking_id": "bkg_…",
"winning_agent_id": "agt_…",
"winning_agent_priority": 1,
"your_priority": 3,
"message": "Your booking was outranked. Read winning_agent_id and propose an alternate slot rather than retrying."
}
Your agent should branch on this and propose an alternate, not retry the same slot.
How this differs from the AgentDraft SDKs
| Python/TS SDK | MCP server | |
|---|---|---|
| Caller | App code you wrote | An AI client (Claude Desktop, etc.) |
| Transport | HTTPS direct to api.agentdraft.io | stdio between the MCP host and this process |
| Auth | Client(api_key=…) |
AGENTDRAFT_API_KEY env var |
| Semantics | Same | Same |
| Errors | Typed Python exceptions | Structured JSON in the tool result |
Use the SDK when you are writing the agent. Use this MCP server when someone else's agent runtime (Claude Desktop, Cursor, Cline, generic MCP host) needs to call AgentDraft on a user's behalf without custom code.
Links
- Protocol spec: https://agentdraft.io/spec
- API docs: https://agentdraft.io/docs
- Changelog: https://agentdraft.io/changelog
- Python SDK:
agentdraft - TypeScript SDK:
agentdraft - Source: https://github.com/ryabinski-labs/agentdraft-mcp
- Issues: https://github.com/ryabinski-labs/agentdraft-mcp/issues
Security
Found a vulnerability? See SECURITY.md. Do not open a public issue for a security report.
Contributing
See CONTRIBUTING.md. ryabinski-labs/agentdraft-mcp
is a published mirror of a directory in AgentDraft's private application
repository — issues and pull requests are read there, and land back through
the next release sync.
License
MIT — see LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentdraft_mcp-0.1.1.tar.gz.
File metadata
- Download URL: agentdraft_mcp-0.1.1.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.12.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ac3eee22c866dd1d778af22b3a4eadebbd67b88af31d454a0c0122670525a78
|
|
| MD5 |
ddbed8a58aefa588279f8baf184caf94
|
|
| BLAKE2b-256 |
0aa313f463c2441836c1a4c41630c1d1f715c69ca1d16463f1b4a9f2a8f07f4f
|
File details
Details for the file agentdraft_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: agentdraft_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.12.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61a34df6488d8280885d01b8af71c2aa1d6ca14fd5f4ea1a90e94429d8e34d80
|
|
| MD5 |
fa40dee8ee48c36b1fb1344fe77e9607
|
|
| BLAKE2b-256 |
3f073dfe5bd829b04ff392b5f3f8390c0c53afa7e717d95ea62087e5a7aa5aa2
|