Complete AT Protocol Integration
51 tools built on the official @atproto/api, covering posts, replies, likes, reposts, follows, profiles, timelines, search, direct messages, bookmarks, starter packs, and moderation.
Enable LLMs to interact directly with the AT Protocol ecosystem through a powerful Model Context Protocol server
The latest release grows the roster from 43 to 51 tools and broadens the MCP surface:
New Tool Areas
Bluesky direct messages (list_conversations, get_conversation_messages, send_direct_message), private bookmarks (add_bookmark, remove_bookmark, get_bookmarks), and starter packs (search_starter_packs, get_starter_pack).
Reply & Quote Controls
create_post and create_thread can gate who may reply (a threadgate record via replyControls) and whether a post may be quoted (a postgate record via quoteControls).
Richer MCP Surface
Parameterized resource templates (atproto://profile/{actor}, atproto://feed/{actor}) serve any actor's public data — no authentication required — and the server advertises the completions capability for prompt arguments and template variables.
Streamable HTTP Transport
--transport http serves MCP over Streamable HTTP at /mcp (loopback by default). stdio remains the default transport for MCP clients.
v0.4.0 reshaped the tool API for clarity and reliability, consolidating the 62-tool roster down to 43 tools that are all functional, single-purpose, and fully documented:
Consolidated Toolset
Redundant tools were merged behind parameters — for example get_followers + get_follows became get_user_connections (direction: 'followers' | 'follows'), and the batch tools became one batch_action (action: 'follow' | 'like' | 'repost'). Tools that never worked (OAuth flows, real-time streaming, generate_alt_text) were removed.
Machine-Readable Schemas
Every tool now advertises a JSON Schema outputSchema in tools/list, and every tool parameter carries a description. A test enforces 100% coverage so this cannot regress.
New Tools in 0.4.0
search_actors finds accounts by handle or display name, and get_author_feed lists a specific user's posts.
Removed Experimental Tools
The non-functional OAuth and real-time streaming tools were removed in 0.4.0; they are no longer registered. See Experimental & Roadmap for current status.
Get up and running with the AT Protocol MCP Server in minutes:
# Install globally
npm install -g atproto-mcp
# Start the server
atproto-mcp
# Or use with npx
npx atproto-mcpOAuth login is not yet implemented and is not exposed as a tool. Real-time firehose streaming is not planned as tools — see Experimental & Roadmap.
--log-level flagThe AT Protocol MCP Server bridges the gap between LLMs and the AT Protocol ecosystem:
This MCP server enables LLMs to provide powerful AT Protocol capabilities through natural language interaction:
How it works: Users interact with their LLM client (like Claude Desktop) in natural language, and the LLM uses this MCP server to access AT Protocol functionality. For example, a user might say "Search for trending posts about AI and summarize them," and the LLM would use the search_posts tool to fulfill that request.
Join our growing community of developers building with the AT Protocol:
Released under the MIT License.
Made with ❤️ by Cameron Rye