Anahita MCP
OfficialAnahita MCP lets an AI agent search and read Anahita's documentation and API reference through six read-only tools.
Search docs by words, optionally restricted to Anahita Services or Anahita Web docs.
List all documentation pages in groups, with each page's name and sections.
Read a full docs page as Markdown, or a specific section with its subsections.
List API services and groups, routes for a service, or routes matching search words.
Read one API route in full: who may call it, parameters/body, and responses.
Read one API shape/schema and its fields.
Use it locally over stdio or via the hosted HTTP endpoint; it only reads and can work offline from cached files.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Anahita MCP Which API route lets a person follow a group?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Anahita MCP
Anahita's docs and API reference for AI agents: an MCP server that runs on your computer.
Anahita is open-source social software that an organisation runs for its own community: people, groups, events, articles, photos, videos and custom feeds, in a chronological feed with no tracking. It speaks ActivityPub (the fediverse) and the AT Protocol (Bluesky).
Add this server to Claude, Cursor, VS Code or any other MCP client, and your agent can answer from the docs as they are today, not from what it remembers: how to set up a site, how federation works, which route follows a profile and what it answers.
Runs on your computer. Your client starts it, and there is no account to make. Or add the hosted copy at
https://mcp.anahita.io/mcp, with nothing to install.Reads, and only reads. Six tools, none of which changes anything.
Sends nothing. It fetches two files from www.anahita.io, keeps them on your computer, and searches them there. Your questions never leave your machine through it. The hosted copy keeps nothing of them either.
Works offline with what it fetched last.
Setting it up
With nothing to install
Anahita runs a copy at https://mcp.anahita.io/mcp (MCP's Streamable
HTTP), in Montreal. It keeps no record of the questions or of who asked.
Client | How |
Claude Code |
|
Claude Desktop and claude.ai | Settings › Connectors › Add custom connector, with the address |
Cursor |
|
VS Code |
|
On your computer
You need Node.js 20 or later. Your client runs the
server with npx, which fetches it from
npm the first time.
Claude Code
claude mcp add anahita -- npx -y anahita-mcpClaude Desktop
In Settings › Developer › Edit Config, add it to
claude_desktop_config.json, then restart Claude:
{
"mcpServers": {
"anahita": {
"command": "npx",
"args": ["-y", "anahita-mcp"]
}
}
}Cursor
In ~/.cursor/mcp.json, or .cursor/mcp.json in a project:
{
"mcpServers": {
"anahita": {
"command": "npx",
"args": ["-y", "anahita-mcp"]
}
}
}VS Code
In .vscode/mcp.json in a project, or with MCP: Add Server from the
command palette:
{
"servers": {
"anahita": {
"type": "stdio",
"command": "npx",
"args": ["-y", "anahita-mcp"]
}
}
}Any other client
The server speaks MCP over standard input and output. The command is
npx -y anahita-mcp. To run what is on main before it is published,
npx -y github:anahitasocial/anahita-mcp.
Then ask your agent something like "How does Anahita decide what an old post is worth?" or "Which API route lets a person follow a group, and what does it send back?"
Related MCP server: Hermes Docs MCP Server
The tools
Tool | Answers |
| The sections of the docs that match, best first, each with the page and section to read and a few lines of it |
| Every page, in its groups, with its sections |
| A page as Markdown, or one section with those under it |
| The API's services in their groups; one service's routes, or one kind of profile's ( |
| One route in full: who may call it, its parameters and body, and every answer. The path as the reference has it ( |
| One shape the API takes or answers with, and its fields |
source is services for Anahita Services,
the Go services and their API, or web for
Anahita Web, the web app.
A page is named by both, services/the-graph; services alone is its
overview. Every answer gives the www.anahita.io address of what it read.
What it reads
File | What it holds |
Every page of the docs, cut into sections, written when the website is built | |
The API reference, OpenAPI 3.1, made from the services' code |
The website writes them on every change to it and every night, from the
docs of both repositories as they are on main, so they are a day behind
at most. The server fetches them when a tool first needs them, and again an
hour later only if they have changed. The copies are kept in the cache folder of your
system: ~/Library/Caches/anahita-mcp on macOS, ~/.cache/anahita-mcp on
Linux, %LOCALAPPDATA%\anahita-mcp\Cache on Windows. Search is by words,
in the server, with no embeddings and no outside service.
Settings
Variable | What it changes | Default |
| The website the two files are read from: a local build of anahita.io, say |
|
| The folder the copies are kept in | your system's cache folder, as above |
Hosting your own
npx -y anahita-mcp --http answers over HTTP at /mcp instead, for a copy
people add by its address with nothing to install. Hosting it
says how, on any server or on AWS Lambda with deploy/.
Working on it
Changing the code, as a person or with an agent: begin with AGENTS.md, the project's working rules.
npm install
npm test # builds, then runs the tests in test/
npm run build # dist/TypeScript, on the official MCP TypeScript SDK.
File | What it does |
| Starts the server on standard input and output |
| The six tools, and what the agent is told about them |
| Fetches the two files and keeps them |
| The docs tools' answers |
| The API tools' answers |
| Search by words (BM25) |
| The server over HTTP, for a hosted copy, and |
| The hosted copy on AWS Lambda |
| The AWS templates and the script that deploys them |
To try it against the docs as you write them, build
anahita.io (yarn build),
serve its out/ folder, and set ANAHITA_SITE to where it is served. The
tests use a few real pages and routes, in test/fixtures/.
Security
To report a vulnerability, see SECURITY.md. Please don't open a public issue.
Licence
MIT. Anahita Services is under the GNU AGPL-3.0 and Anahita Web under MIT: see Licensing.
Copyright © 2026 Rastin Mehr Design Studio Inc. (rmd studio). Anahita is a registered trademark of Rastin Mehr Design Studio Inc. in Canada.
Credits
Anahita is developed and maintained by rmd studio, a software development company in Vancouver, Canada. Founder and core architect: Rastin Mehr.
Available Tools
6 toolslist_docsList the docsARead-onlyIdempotent
Lists every page of Anahita's docs, in its groups, with each page's name for read_doc and its sections.
Inputs: source.
list_endpointsList the API routesARead-onlyIdempotent
Lists the API's services in their groups; with a service, its routes; with words, the routes that match them.
Inputs: query, service.
read_docRead a pageARead-onlyIdempotent
Reads one page of the docs as Markdown, or one section of it with the sections under it.
Inputs: page (required), section.
read_endpointRead a routeARead-onlyIdempotent
Reads one API route in full: who may call it, its parameters and body, and every answer it gives.
Inputs: path (required), method (required).
read_shapeRead a shapeBRead-onlyIdempotent
Reads one shape of the API (a schema a route takes or answers with) and its fields.
Inputs: name (required).
search_docsSearch the docsARead-onlyIdempotent
Searches Anahita's docs by words and gives the best sections first, each with the page and section to read and a line of it.
Inputs: query (required), limit, source.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool has a clearly distinct action/resource pairing: browse docs (list_docs), read a page (read_doc), search docs (search_docs), browse API services/routes (list_endpoints), read a route (read_endpoint), read a schema (read_shape). List vs. read vs. search are visibly different operations with no realistic misselection risk.
All names follow a strict verb_noun snake_case pattern (list_*, read_*, search_*), with singular nouns for single-item reads and plural for collections. The convention is predictable and readable throughout.
Six tools is well-scoped for a read-only documentation/API reference server — one tool per content type (docs, endpoints, shapes) each with browse/read/search coverage. Nothing feels padded or missing at the structural level.
The docs surface is complete (list, read, search), but the API surface lacks a dedicated search over routes or shapes and no standalone list_shapes, so shapes are only reachable via read_endpoint. Agents can work around this by browsing list_endpoints, so the gap is minor.
Maintenance
Related MCP Connectors
Read-only MCP server over the developer docs for the portfolio's JSON API, MCP, A2A and NLWeb.
Read-only MCP server for the OrchestKit docs: full-text search + Markdown fetch. No auth.
Search and read the Metabind documentation: MCP Apps, BindJS, the SDKs, the CLI, and the APIs.
Make your knowledge agent-ready. One MCP endpoint, 5 connectors, 3 search modes.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables MCP clients to access and read mdbook documentation, including structure, content, and search.10 npm3MIT
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients to search, navigate, and read the complete Hermes Agent documentation through a local SQLite FTS5 index, with tools for full-text search, page reading, and browsing documentation structure.MIT
- AlicenseAqualityBmaintenanceEnables agents to perform full-text search and read Hermes Agent documentation offline from a local cache, without scraping the site.2MIT
- AlicenseAqualityCmaintenanceEnables MCP-capable clients to search team knowledge, browse an integration catalog, and get sourced product answers through deterministic, offline tools.37 npmMIT