atproto-mcp

atproto-mcp

MCP server providing a searchable knowledge base for the AT Protocol ecosystem, including protocol docs, lexicons, Bluesky API docs, and cookbook examples.

Category
Visit Server

README

atproto-mcp

Tests

MCP server providing a searchable knowledge base for the AT Protocol ecosystem — protocol documentation, lexicon schemas, Bluesky developer API docs, and cookbook examples — powered by txtai semantic search.

Data Sources

Source Repository Description
AT Protocol Website bluesky-social/atproto-website Protocol specs, guides, and blog posts from atproto.com
Bluesky API Docs bluesky-social/bsky-docs Developer docs from docs.bsky.app — tutorials, guides, advanced topics
AT Protocol Lexicons bluesky-social/atproto JSON schemas defining all AT Protocol endpoints and record types
Cookbook bluesky-social/cookbook Example projects in Python, Go, TypeScript, and JavaScript

Tools

Tool Description
search_atproto_docs Semantic search across all documentation sources
get_lexicon Retrieve a specific lexicon by NSID (e.g. app.bsky.feed.post)
list_lexicons List all lexicons, optionally filtered by namespace
search_lexicons Semantic search within lexicon schemas
get_cookbook_example Get a specific cookbook example by project name
list_cookbook_examples List all cookbook examples, optionally by language
search_bsky_api Semantic search within Bluesky API docs
refresh_sources Force re-fetch repos and rebuild the index

Prompts

Prompt Description
explain_lexicon Get a comprehensive explanation of a lexicon
implement_feature Get implementation guidance with code examples
debug_atproto Help debug AT Protocol / Bluesky API issues
explore_namespace Explore all lexicons in a namespace

Installation

Prerequisites

  • Python 3.10+
  • uv (recommended) or pip
  • Git (for cloning source repositories)

Install from source

git clone https://github.com/ashex/atproto-mcp.git
cd atproto-mcp
uv sync

Run with uvx

uvx atproto-mcp

Configuration

VS Code / Copilot

Install in VS Code

Add to .vscode/mcp.json in your workspace:

{
  "mcpServers": {
    "atproto": {
      "command": "uvx",
      "args": [
        "atproto-mcp"
        ]
    }
  }
}

Kiro Power

  1. Open Kiro → Powers
  2. Select Import power from GitHub
  3. Enter https://github.com/ashex/atproto-mcp

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "atproto": {
      "command": "uvx",
      "args": [
         "atproto-mcp"
      ]
    }
  }
}

MCPHub

Add to ~/.config/mcphub/servers.json:

{
  "mcpServers": {
    "atproto": {
      "command": "uvx",
      "args": ["atproto-mcp"]
    }
  }
}

OpenCode

Add to your opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "atproto": {
      "type": "local",
      "command": ["uvx", "atproto-mcp"]
    }
  }
}

Environment Variables

Variable Default Description
ATPROTO_MCP_CACHE_DIR ~/.cache/atproto-mcp Where repos and the search index are stored
ATPROTO_MCP_REFRESH_HOURS 24 Hours before re-fetching repositories
ATPROTO_MCP_EMBEDDING_MODEL sentence-transformers/all-MiniLM-L6-v2 Sentence-transformers model for embeddings

How It Works

On first launch, the server:

  1. Shallow clones the repos into ~/.cache/atproto-mcp/repos/
  2. Parses MDX docs, lexicon schemas, and cookbook examples into text chunks
  3. Indexes the chunks using txtai with the all-MiniLM-L6-v2 sentence-transformer model (~80MB, runs locally)
  4. Index is persisted in ~/.cache/atproto-mcp/index/ for subsequent starts

On subsequent launches, the cached index loads in seconds. Repos older than 24 hours are automatically refreshed with git pull.

Development

# Install in development mode
uv sync

# Run the server locally (stdio)
uv run atproto-mcp

# Test with the MCP Inspector
uv run mcp dev src/atproto_mcp/server.py

# Run with debug logging
ATPROTO_MCP_CACHE_DIR=/tmp/atproto-mcp uv run atproto-mcp

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured