Model Context Protocol · Anthropic Managed Agents
A dock for your Managed Agents.
Wharf is a tiny MCP server that puts the Anthropic Managed Agents API behind a conversation. Deploy agents, send them messages, update their tools, and retire them — all from Claude.ai, Claude Desktop, or any MCP-compatible client.
Get started → View on GitHubWhat it is
A Managed Agent is an autonomous, persistent agent running on Anthropic's infrastructure — with its own model, tools, system prompt, and session history. Wharf exposes that API as seven MCP tools, so a client can spin up an agent, talk to it, and clean it up without ever leaving the chat.
It's a single-file Cloudflare Worker. Stateless. Seconds to deploy. Sessions live on Anthropic's side; Wharf just relays.
Seven tools
deploy_agentCreate an agent and its cloud environment.agent_querySend a message. Returns a session_id immediately.poll_responseFetch the agent's output, or running.agent_statusInspect config and session state.list_agentsList agents on the account.update_agentChange model, tools, system prompt.delete_agentArchive an agent.
The agent_query / poll_response split is
deliberate. Managed Agents can run for minutes; edge Workers time
out in seconds. Fire, forget, poll.
Quick start
Clone it, set your key, deploy.
# 1. Clone and install git clone https://github.com/abduljaleel/artifact-to-agent-mcp.git wharf cd wharf pnpm install # 2. Deploy to Cloudflare pnpm run deploy npx wrangler secret put ANTHROPIC_API_KEY # 3. Add as a custom connector in Claude.ai: # https://your-worker.workers.dev/wharf
What it feels like
deploy_agent with web_fetch and web_search, then rewires the Artifact to call agent_query and poll_response.update_agent to add the bash tool. Version bumps. Nothing else changes.Design notes
Stateless by design
No database, no queue. Every session lives on Anthropic's side, addressable by id. Wharf is a relay.
Edge-friendly
Runs as a single Cloudflare Worker. Cold starts in milliseconds. One connector URL.
Fire, forget, poll
Long agent runs don't fit inside a Worker request. The split-tool shape makes that a non-issue.
Optional auth
Set MCP_AUTH_KEY and Wharf requires a shared secret on every request. Leave it off for local play.