Other Yandex Wiki MCP servers can open a page — if you already know its slug. An agent never does. So this one starts with full-text search (50 results/query) across the wiki, then adds pages, comments, attachments and dynamic tables: 27 tools, all with typed input and output schemas. WIKI_READ_ONLY=true doesn't register write tools at all — nothing to bypass. stdio for Claude/Cursor, streamable-HTTP, Docker, multi-user OAuth. Apache-2.0, on PyPI. Unofficial, not affiliated with Yandex.
Fin Startups get Fin free for a year + 93% off Intercom
Promoted
Maker
📌
Hi Product Hunt 👋
I lead the DS team at an adtech company. Our research lives in Yandex Wiki — every experiment we ran, including the ones that failed. I can find any of it in seconds. My agent couldn't find any of it at all.
Here's the shape of the problem. Somewhere in our code a solver tolerance is set to 1e-8 instead of the library default. On its own it looks like debris — odd number, no comment, no reason to be there. The reason is a 5,000-word write-up: 1,617 training runs, a negative control, and a table showing that at the default value some of those models weren't converging at all. None of that is in the repo. Ask an agent to review that line and it will confidently tell you to drop it.
So I pasted things. Every other day, in both directions: the write-up into the agent's context, to explain three years of decisions made by people who left before I joined — and then the doc we'd just written together back into the Wiki, where I'd redo the YFM formatting by hand.
I got tired of being the copy-paste layer — and of watching my team be one too.
There were already a few Yandex Wiki MCP servers, but they all had the same gap: you can fetch a page *if you already know its slug*. Which supports exactly one workflow, "read this URL I'm pasting", and that's still me doing the finding. So the first thing I built was search — 50 results a query, off the same backend as the Wiki's own search bar — and everything else grew from there: 27 tools covering pages, comments, attachments and dynamic tables (grids). Writing back included, YFM cheat sheet and all.
🔒 Read-only is server-side. I'm the one who'd have to answer for an agent quietly rewriting three years of the team's research, so WIKI_READ_ONLY=true doesn't *ask* the agent to behave — the write tools are never registered, there's nothing to call. Start there, flip it once you trust it.
Apache-2.0, on PyPI and ghcr.io. It started as a fork of ya-yandex-wiki-mcp (also Apache-2.0) — credit where it's due.
If you use Yandex Wiki: I'd like to know which tool is missing for your workflow. And if you're building an MCP server of your own, docs/api-notes.md has the API behaviour I had to map by hand (403 semantics, limits, error envelopes) — take it.
Happy to answer anything here today.