content-knowledge-mcp
content-knowledge-mcp
MCP-сервер, который даёт контентному агенту доступ к редакционным знаниям компании: бренд-правила, каталог визуальных шаблонов и прошлые посты с их результатами. Знания живут в обычных markdown-файлах, которыми владеет компания; сервер только их открывает.
Разработан как техническое ядро моей бакалаврской работы об ИИ-агентах и автоматизации рабочих процессов. Версия здесь — это универсальный движок, а знания — вымышленной компании.
Почему нет векторной базы данных
Очевидный ход — превратить знания в эмбеддинги и искать по векторной близости. Этот сервер сознательно так не делает, по двум причинам.
В этом масштабе побеждает структурный поиск по выверенным файлам. Редакционных правил компании — десятки блоков, а не десятки тысяч. Разрезать их на чанки и искать по косинусной близости — значит добавить шаг индексации, хранилище, которое нужно синхронизировать, и класс сбоев, которые трудно увидеть, в обмен на то, что уже было.
Каждое правило имеет ID — и в этом суть. Правила — это R1, R17, R905; шаблоны — T901, T905; записи о запусках — L2. Агенту предписано цитировать использованные им ID. Это превращает каждое предложение в объект, который человек может проверить за секунды: рецензент читает rules_used: ["R920", "R903"] и точно знает, какие правила породили этот пост. Векторный поиск возвращает абзац, а не аргументацию. Когда цель — работающий человеческий контроль, проверяемость бьёт хитрость.
Издержка реальна и о ней стоит сказать прямо: поиск лексический, поэтому запрос, в котором нет пересечений со словами правила, его не найдёт. Сервер вместо симуляции вернёт NO_MATCH — и именно это проверяют оценочные сценарии.
Related MCP server: mcp-guide
Архитектура
Claude Desktop / Claude Code ──stdio──┐
├──▶ content-knowledge-mcp ──▶ KNOWLEDGE_PATH/
n8n MCP Client Tool ──────────HTTP────┘ (3 tools) guidelines/*.md R# rules, L# launch records
(host.docker.internal:8765) templates/catalog.md T# catalog
past-posts/*.md past posts and outcomesТри инструмента, один переключатель транспорта, ноль состояния:
Инструмент | Возвращает |
| правила и блоки, входящие в запрос, с их ID |
| фильтрованный каталог шаблонов с ID |
| до трёх прошлых постов с их результатами, для оценки тона |
Сервер не владеет контентом. Укажите KNOWLEDGE_PATH на другую папку — и он обслуживает другую компанию: именно это позволило публиковать его как универсальный движок без вмешательства в код.
Quickstart
git clone https://github.com/alessandro-martelli/content-knowledge-mcp
cd content-knowledge-mcp
python3 -m venv .venv && .venv/bin/pip install fastmcp
# run the twelve checks against the example knowledge
KNOWLEDGE_PATH=examples/knowledge .venv/bin/python smoke_test.py
# stdio, for Claude Desktop or Claude Code
KNOWLEDGE_PATH=examples/knowledge .venv/bin/python server.py
# HTTP on :8765, for the n8n MCP Client Tool
KNOWLEDGE_PATH=examples/knowledge .venv/bin/python server.py --httpПример знаний в examples/knowledge/ — полностью вымышлен: это воображаемая школа дизайна с правилами, записями запусков, каталогом шаблонов и тремя прошлыми постами. Он существует, чтобы репозиторий запускался у любого, а у тестов был материал для работы.
Оценка
Smoke-тесты: 12 из 12. Каждый прогон идёт через реальный fastmcp.Client по протоколу, а не через вспомогательные функции, поэтому разрыв в регистрации инструментов или транспорте сразу проявится именно здесь.
Протокол на уровне агента: 8 сценариев, 5 из них — с подвохом (противоречивые правила, запрос вне области действия, недоступный инструмент, нет подходящего шаблона, недозаполненный вход). Все они перечислены в eval/test-log.md с исправлением для каждого. Неотработанное в равенстве — это доказательство: список, который только и делает, что сообщает об успехах, ничего не измеряет.
Честные ограничения
Поиск лексический и ранжирует по частоте слов. Он не знает синонимов; правило, сформулированное другими словами, чем в запросе, вы найдёте не выйдет.
Структура папки знаний фиксирована (
guidelines/,templates/catalog.md,past-posts/), а имя файла каталога зашито прямо в код.У сервера нет пути записи в кэш: каждый вызов читает файлы. При этом объем это нормально, а при десяти тысячах блоков — уже нет.
Два открытых дефекта из оценки пока не исправлены в коде:
rules_usedне может мотировать IDL#, и система не содержит разрешения для неопределённого канала.
Лицензия
MIT, полный текст — в LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI agents with queryable, version-controlled project rules and coding standards. Enables validation, rule-based guidance, and task summaries to keep AI work aligned with your project's conventions without repeating context.2MIT
- AlicenseBqualityAmaintenanceEnables AI agents to access and manage project guidelines, documentation, and context through a structured content system with template support and workflow management.37MIT
- FlicenseAqualityCmaintenanceEnables AI agents to query component governance rules, validate component props, and generate development prompts for questionnaire editors.4
- FlicenseNot gradedqualityCmaintenanceExposes publisher journalism to LLMs and agent frameworks via search, retrieval, source grounding, and consistent citation, enabling accurate content retrieval with attribution and policy enforcement.
Related MCP Connectors
Shared, permission-aware company context for AI agents, with provenance, approvals and audit.
Search harness engineering, agentic AI patterns, architectures, governance and agent taxonomy.
Ground GTM agents in governed, cited company truth.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/alessandro-martelli/content-knowledge-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server