AT Protocol
FreeNot checkedBrowses public AT Protocol network data including repository metadata, records, blobs, and search without requiring authentication.
About
Browses public AT Protocol network data including repository metadata, records, blobs, and search without requiring authentication.
README
An MCP server for reading public data from the AT Protocol network without authentication.
Operates at the abstract repo/collection/record level rather than exposing Bluesky-specific APIs, so it works with any data stored on any AT Protocol PDS. Also includes Bluesky search as a convenience.
Tools
| Tool | Description |
|---|---|
resolve_handle |
Resolve an AT Protocol handle to its DID |
describe_repo |
Get repository metadata: handle, DID, DID document, and available collections |
list_records |
List records in a collection with pagination and reverse ordering |
get_record |
Fetch a single record by repo, collection NSID, and record key |
get_blob |
Fetch a blob by repo and CID — returns images as inline MCP image content |
search_posts |
Full-text search for posts (via Bluesky AppView) |
search_actors |
Search for users by name or handle (via Bluesky AppView) |
How it works
The server resolves each identity's PDS dynamically through the AT Protocol identity layer, then sends XRPC requests directly to that PDS. This means it correctly handles users on any PDS, not just those hosted by Bluesky.
Client ──MCP──▶ atproto-mcp
│
├── resolve identity ──▶ slingshot.microcosm.blue
│ (handle/DID → PDS URL)
│
├── repo operations ──▶ user's actual PDS
│ (describeRepo, listRecords, getRecord, getBlob)
│
└── search ──▶ public.api.bsky.app
(searchPosts, searchActors)
Building
Requires Rust 1.85+ (edition 2024).
cargo build --release
The binary is at target/release/atproto-mcp.
Usage
The server communicates over stdio using the Model Context Protocol. Add it to your MCP client configuration:
{
"mcpServers": {
"atproto": {
"command": "/path/to/atproto-mcp"
}
}
}
Examples
Browse a user's collections:
Call describe_repo with {"repo": "karashiiro.moe"} to see all collections in their repository.
Read posts:
Call list_records with {"repo": "alice.bsky.social", "collection": "app.bsky.feed.post", "limit": 10} to list their recent posts.
Fetch a specific record:
Call get_record with {"repo": "alice.bsky.social", "collection": "app.bsky.actor.profile", "rkey": "self"} to read their profile record.
Fetch an image:
Find an image CID from a post record's embed, then call get_blob with {"repo": "alice.bsky.social", "cid": "bafkrei..."}.
Dependencies
Installing AT Protocol
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/karashiiro/atproto-mcpFAQ
Is AT Protocol MCP free?
Yes, AT Protocol MCP is free — one-click install via Unyly at no cost.
Does AT Protocol need an API key?
No, AT Protocol runs without API keys or environment variables.
Is AT Protocol hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install AT Protocol in Claude Desktop, Claude Code or Cursor?
Open AT Protocol on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare AT Protocol with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
