Habr MCP server for reading and publishing
Habr MCP server
A multi-tenant HTTP MCP server for Habr: anonymous article reading and publishing drafts from Google Docs or Docmost
High risk
We rate an entry high when the tool writes to external systems, handles money, production databases or secrets, or runs arbitrary commands. The CLI installs it only with your consent.
Why this level
- Stores the user's browser session cookie on the server, even if encrypted
- Can create, edit and delete article drafts on the author's behalf
Install
Manual install
make install && make runLocal install and run of the HTTP server from source.
This is third-party code. Review the repository files before installing.
What it does
The server works through Habr's internal, undocumented JSON API and runs as a single shared HTTP service for multiple users: each has their own arbitrary bearer token and their own saved Habr session, encrypted on the server's disk. Reading an article by ID works anonymously with no login. The author tools require logging in via habr_login with the full browser session cookie, and let you create and update drafts from a Google Docs document or a Docmost page with images, tables and lists, look up hubs and publication flows, and view or delete your own drafts. The server deliberately does not auto-publish a draft to public status, a known gap in Habr's protocol.
Who it is for. For authors who write articles for Habr in Google Docs or Docmost and want to create and update drafts through an agent.
Good fit when
- You want to read a Habr article by ID without logging in
- You want to create a draft from a finished Google Docs or Docmost document with images and tables
- You need to find the right hub or publication flow by name before publishing
Not a fit when
- You need to publish a draft live with one command: the server only prepares drafts, not publishing
- You want to self-host it easily: the deploy instructions in the README are tailored to the author's own Gitea and Traefik infrastructure
Example request
Build a Habr draft from my Google Docs document, tagged under the AI hubLimitations
The project has a single author with no license stated in the README, and it relies on Habr's internal, undocumented API, which can change without notice. Author tools need the user's full browser session cookie. Promoting a draft to a published article is not implemented.
How to disable. Remove the habr server from your MCP client config and, if applicable, stop the deployed service container.
MCP
- Transport
- http
- Authentication
- API key
| Environment variables | |
|---|---|
| HABR_MCP_STATE_DIR | Directory for the encrypted per-user credential store. |
| HABR_LANG | Habr content and interface language, defaults to ru. |
Security check
- Stores the user's browser session cookie on the server, even if encrypted
- Can create, edit and delete article drafts on the author's behalf
README in short
The English and Russian README describes the multi-tenant auth model with a per-user bearer token and encrypted session storage, tables of read and author-layer tools, converting Google Docs and Docmost documents into Habr's format through an intermediate ProseMirror tree, and passing content either inline or as a resource link. It separately covers deployment via a prebuilt Docker image with Traefik and watchtower.
FAQ
Do I need to log in just to read an article?
No, get_article works anonymously by article ID; login is only needed for author and draft tools.
Can the server publish a draft for me?
No, promoting a draft to a published article is not implemented, a gap the project documents explicitly.
Related
A skill that strips AI writing tells from text using Wikipedia's list, without adding invented facts
Marketing Skills for AI agents
Marketing Skills for AI Agents
About fifty skills for CRO, copywriting, SEO, analytics, ads and launches, built for coding agents
SendPulse MCP server
SendPulse MCP
SendPulse's official remote MCP server: statistics, campaigns and user data through an agent chat
Yandex Direct MCP generated from a machine-readable schema
yandex-direct-mcp
An MCP server and CLI covering all 113 Yandex Direct API v5 methods generated from WSDL, exposing 9 read tools by default and writes only on demand