Wiki-MCP-Server обзор: граф знаний с MCP, AlloyDB и авторизацией | AiManual
AiManual Logo Ai / Manual.
05 Июн 2026 Инструмент

Wiki-MCP-Server: распределённый граф знаний с авторизацией и MCP-протоколом — доработка идеи Карпати

Разбираем Wiki-MCP-Server — эволюцию идеи Карпати: распределённый граф знаний на AlloyDB, pgvector, типизированные рёбра и MCP-протокол. Примеры использования,

Реклама
vec_recv1

Когда вики превращается в нейросетевой орган памяти

Андрей Карпати как-то обронил идею: «Сделайте вики-подобную базу знаний, где LLM сможет читать и писать свои заметки». Прозвучало красиво, но на практике такая штука быстро превращается в кашу — без структуры, без контроля доступа, без возможности нормально искать по смыслу. Проект Wiki-MCP-Server — это не просто «ещё одна вики», а полноценный распределённый граф знаний, завёрнутый в MCP-протокол. Да ещё с авторизацией, типизированными рёбрами и векторным поиском на pgvector. Давайте заглянем под капот.

Чем Wiki-MCP-Server отличается от «той самой» идеи Карпати

Оригинальная концепция Карпати — это скорее персональная записная книжка для AI. Она не предполагала одновременной работы нескольких агентов, не умела разграничивать права, а узлы хранились плоским списком. Wiki-MCP-Server идёт дальше:

  • AlloyDB + pgvector — вместо SQLite или JSON-файлов. AlloyDB (управляемая PostgreSQL от Google) даёт автоматическое масштабирование, а расширение pgvector позволяет выполнять семантический поиск по эмбеддингам узлов.
  • Типизированные рёбра — связи между узлами имеют тип (например, is_related_to, depends_on, contradicts). Это превращает базу знаний в настоящий граф, а не в мешок ссылок.
  • Авторизация — каждый узел и ребро могут быть доступны только определённым ролям или пользователям. Критично для enterprise-среды, где AI-агенты не должны болтать лишнего.
  • MCP-протокол — сервер можно подключить к любому MCP-совместимому клиенту (Claude Desktop, Cline, собственные агенты). О том, как работает этот USB-порт для ИИ, мы уже писали.

Важное уточнение: AlloyDB используется как движок базы, но сам проект полностью open-source и может быть развёрнут на любой PostgreSQL 15+ с pgvector. Никакой vendor-lock.

Сравнение с альтернативами: почему не просто RAG

Типичная RAG-система хранит документы чанками в векторной БД, но не умеет выстраивать связи между ними. Wiki-MCP-Server, напротив, хранит граф, где каждый узел — это факт или сущность, а рёбра — логические отношения. Попробуем на пальцах:

ХарактеристикаКлассический RAGWiki-MCP-Server
Структура данныхЧанки + векторУзлы + типизированные рёбра
ПоискТолько семантическийСемантический + графовые запросы (BFS, shortest path)
АвторизацияОбычно нетRBAC на уровне узлов
Протокол подключенияREST / gRPCMCP (стандартный)

Если нужна база знаний, с которой будет работать не один LLM-агент, а целая команда — с разными правами и ролями — Wiki-MCP-Server выигрывает с разгромным счётом. Кстати, проблема безопасности MCP-серверов не надумана: мы разбирали реальные кейсы утечек, так что встроенная авторизация здесь не роскошь, а необходимость.

Как это выглядит на практике: поднимаем свой граф знаний

В репозитории есть готовый docker-compose. Клонируем, редактируем .env, запускаем — и сервер начинает слушать MCP-запросы на stdin/stdout или WebSocket. Рассмотрим простой сценарий: добавить новый факт и связать его с существующим.

1 Добавление узла

Через MCP клиент (например, Claude Desktop с настроенным MCP-сервером) отправляем инструмент add_node:

{
  "name": "PostgreSQL vs AlloyDB",
  "type": "comparison",
  "content": "AlloyDB базируется на PostgreSQL 15, но добавляет автоскейлинг и ускоренные аналитические запросы",
  "embeddings": true,
  "permissions": {"roles": ["editor"]}
}

2 Создание ребра между узлами

Допустим, у нас уже есть узел AlloyDB и узел PostgreSQL. Связываем их:

{
  "source_id": "uuid1",
  "target_id": "uuid2",
  "relation_type": "based_on",
  "metadata": {"strength": 0.9},
  "permissions": {"roles": ["admin", "editor"]}
}

Запрос к графу через инструмент query_graph: «Какие СУБД используются в AlloyDB?» — и сервер возвращает путь по ребру based_on к PostgreSQL, а также семантически близкий узел про Spanner (если включена векторная эвристика).

Warning: Не советую выставлять MCP-сервер в открытый интернет без reverse proxy и строгой аутентификации. OAuth 2.0 пока не встроен — используйте API-ключи и сетевые политики. Подробнее о рисках — в статье про prompt injection.

Кому это реально нужно (и кто лишь потратит время)

  • Команды, строящие корпоративные базы знаний с AI-агентами — если у вас 50 ботов и 1000 документов, без графа развалится. Авторизация спасёт от утечки коммерческой тайны.
  • Разработчики MCP-экосистемы — проект отлично сочетается с PlexMCP для объединения нескольких серверов и с MCP Tool Registry для автоматизации RAG-пайплайнов.
  • Энтузиасты, которые хотят создать «вечный мозг» для своих LLM — можно прикрутить к личному помощнику, и он будет помнить всё, что вы обсуждали.

Когда не подойдёт: если вам нужна просто поисковая система по документам — проще взять стандартный RAG на Pinecone. Граф избыточен. Также если у вас один пользователь и пара десятков заметок — оверхед с авторизацией и Docker не оправдан. Но для продакшена — best practices.

Кстати, по данным нашего недавнего исследования, 52% публичных MCP-серверов мертвы, а 37% не имеют аутентификации. Wiki-MCP-Server решает обе проблемы: он живой и с авторизацией из коробки.

А что с производительностью?

AlloyDB в паре с pgvector даёт поиск по 10 млн векторов за <100 мс (тесты на стандартных инстансах). Графовые запросы (например, кратчайший путь) работают за O(log N) за счёт индексов на рёбра. Единственное узкое место — генерация эмбеддингов при добавлении узла. Если часто писать, рекомендую вынести этот шаг в отдельный worker. Проект поддерживает асинхронные хуки, так что доработка тривиальна.

Резюме: стоит ли тащить в свой стек?

Wiki-MCP-Server — редкий случай, когда open-source проект не просто копирует чужую идею, а реально дорабатывает её до production-ready состояния. Граф, MCP, авторизация, векторный поиск — всё в одном флаконе. Если вы строите AI-инфраструктуру, где знания должны быть структурированными и защищёнными, присмотритесь. А если вам лень поднимать свой сервер — MCP Chat Studio v2 умеет эмулировать такие серверы для тестов. Но для постоянной работы лучше иметь выделенный экземпляр.

💡
Совет: начните с импорта существующей вики (MediaWiki, Notion) через скрипты конвертации в граф. В репозитории есть примеры для JSON. Так вы получите осмысленную базу знаний за час.

Подписаться на канал