Matomo-MCP
matomo-mcp
Общайтесь со своей аналитикой Matomo. Из Claude, Cursor, VS Code или любого MCP-клиента.
15 курируемых инструментов аналитики только для чтения + запасной выход через полный API. Один бинарный файл, мгновенный запуск, удобно для контекста.
Быстрый старт · Клиенты · Инструменты · Конфигурация · FAQ
You ▸ How was traffic yesterday, and where did it come from?
Claude ▸ Yesterday you had 14,472 visits (11,416 unique visitors, 66% bounce rate).
Top acquisition channels:
1. Organic search — 6,120 visits (Google 92%)
2. Direct — 4,890 visits
3. AI assistants — 1,204 visits (↑ 31% vs. last week)
Want me to break down which landing pages converted best?Любой вопрос, на который может ответить ваша панель Matomo, теперь может ответить и ваш ИИ-ассистент — включая уточнения, сравнения и «почему?».
✨ Почему matomo-mcp?
🎯 Курируемые, не сгенерированные | 15 инструментов ручной работы, основанных на реальных вопросах аналитики — а не 70+ автоматически сгенерированных зеркал API, которые засоряют контекст модели и ухудшают выбор инструментов. |
⚡ Мгновенный запуск | Никаких циклов интроспекции. Один статический бинарный файл, без Node, без Python, без рантайма. Запускается за миллисекунды. |
🔒 Безопасно по умолчанию | Инструменты отчетности только для чтения. Токен отправляется только через POST (никогда в URL/логах), удаляется из каждой ошибки. Проверка TLS включена по умолчанию. |
🧠 Удобно для контекста | Ограничения строк в каждом отчете и жесткий бюджет ответа с практическими рекомендациями — один вызов инструмента никогда не может взорвать окно контекста. |
📡 Реальное время включено | Счетчики посетителей в реальном времени и журнал посещений ( |
🧰 Никогда не клетка |
|
🔁 Устойчивый | Автоматические повторные попытки с задержкой при 429/5xx/сбоях сети. Полезные сообщения об ошибках с подсказками, на которые модель может реагировать. |
Related MCP server: mcp-server-wazuh
🚀 Быстрый старт
1. Установка
Готовый бинарный файл (Linux, macOS, Windows) — возьмите его из Releases или:
# Cargo
cargo install matomo-mcp
# From source
cargo install --git https://github.com/Liohtml/matomo-mcp
# Docker
docker pull ghcr.io/liohtml/matomo-mcp2. Получите API-токен Matomo
Matomo → Настройки (⚙) → Личное → Безопасность → Токены авторизации → Создать новый токен. Достаточно прав только на просмотр.
3. Проверьте подключение
matomo-mcp --url https://your-matomo.example.com --token YOUR_TOKEN --check✓ Connected — Matomo version 5.2.1
✓ Token grants access to 3 site(s):
#1 My Shop (https://shop.example.com)
#2 Blog (https://blog.example.com)
#3 Docs (https://docs.example.com)4. Подключите ваш клиент ⬇
🔌 Подключите ваш клиент
claude mcp add matomo \
--env MATOMO_URL=https://your-matomo.example.com \
--env MATOMO_TOKEN=YOUR_TOKEN \
--env MATOMO_DEFAULT_SITE_ID=1 \
-- matomo-mcpДобавьте в claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"matomo": {
"command": "matomo-mcp",
"env": {
"MATOMO_URL": "https://your-matomo.example.com",
"MATOMO_TOKEN": "YOUR_TOKEN",
"MATOMO_DEFAULT_SITE_ID": "1"
}
}
}
}.cursor/mcp.json (проект) или ~/.cursor/mcp.json (глобально):
{
"mcpServers": {
"matomo": {
"command": "matomo-mcp",
"env": {
"MATOMO_URL": "https://your-matomo.example.com",
"MATOMO_TOKEN": "YOUR_TOKEN",
"MATOMO_DEFAULT_SITE_ID": "1"
}
}
}
}.vscode/mcp.json:
{
"servers": {
"matomo": {
"type": "stdio",
"command": "matomo-mcp",
"env": {
"MATOMO_URL": "https://your-matomo.example.com",
"MATOMO_TOKEN": "${input:matomo-token}",
"MATOMO_DEFAULT_SITE_ID": "1"
}
}
},
"inputs": [
{
"id": "matomo-token",
"type": "promptString",
"description": "Matomo API token",
"password": true
}
]
}Любой клиент, поддерживающий MCP через stdio, работает с общей конфигурацией:
{
"command": "matomo-mcp",
"args": [],
"env": {
"MATOMO_URL": "https://your-matomo.example.com",
"MATOMO_TOKEN": "YOUR_TOKEN",
"MATOMO_DEFAULT_SITE_ID": "1"
}
}{
"mcpServers": {
"matomo": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "MATOMO_URL", "-e", "MATOMO_TOKEN", "-e", "MATOMO_DEFAULT_SITE_ID",
"ghcr.io/liohtml/matomo-mcp"
],
"env": {
"MATOMO_URL": "https://your-matomo.example.com",
"MATOMO_TOKEN": "YOUR_TOKEN",
"MATOMO_DEFAULT_SITE_ID": "1"
}
}
}
}Запустите сервер один раз (на рабочей станции, в локальной сети или в контейнере) и подключите к нему любое количество MCP-клиентов:
matomo-mcp --url https://your-matomo.example.com --token YOUR_TOKEN --http 127.0.0.1:8080Клиенты подключаются к http://127.0.0.1:8080/mcp через транспорт streamable HTTP, например:
claude mcp add --transport http matomo http://127.0.0.1:8080/mcp[!WARNING] HTTP-эндпоинт не имеет встроенной аутентификации. Держите его привязанным к
127.0.0.1или поставьте перед ним обратный прокси с аутентификацией (или файрвол) перед тем, как открывать доступ за пределами localhost.
[!TIP] Установите
MATOMO_DEFAULT_SITE_ID— и модели больше не придётся спрашивать, какой сайт вы имеете в виду. Нет токена под рукой? Попробуйте на публичном демо:--url https://demo.matomo.cloud --default-site-id 1(токен не нужен).
🧭 Инструменты
Tool | Answers questions like |
| "Какие сайты мы отслеживаем?" |
| "Сколько трафика мы получили на прошлой неделе?" |
| "Какие у нас самые популярные страницы? Где люди выходят?" |
| "Откуда приходят посетители? Какие кампании работают? Что нам присылают ИИ-ассистенты?" |
| "Как часто открывали конфигуратор?" |
| "Какой коэффициент конверсии по каждой цели?" |
| "Выручка за этот месяц? Самые продаваемые товары?" |
| "Из каких стран/городов приходят посетители?" |
| "Мобильные vs. десктоп? Какие браузеры?" |
| "Когда в течение дня/недели люди посещают?" |
| "Что люди ищут на нашем сайте — и не находят ничего?" |
| "Кто сейчас на сайте?" |
| "Какие страницы загружаются медленно?" |
| "Какие развертывания или запуски кампаний совпадают с этим всплеском трафика?" |
| Всё остальное — воронки, тепловые карты, пользовательские измерения, любой |
Все инструменты принимают site_id, period (day/week/month/year/range), date
(today, yesterday, 2026-07-01, last30 или диапазоны start,end), необязательный
segment (например, deviceType==mobile;country==DE) и ограничение строк limit.
Примеры запросов
"Сравните трафик этой недели с прошлой — что изменилось и почему?"
"Топ-10 посадочных страниц по конверсиям за этот месяц, с показателями отказов."
"Получаем ли мы трафик от ChatGPT или Perplexity? Тренд за 3 месяца."
"Какие внутренние поиски не дают результатов? Предложите контент, который нам стоит создать."
"Есть ли что-то необычное в журнале посетителей прямо сейчас?"
⚙️ Конфигурация
Flag | Env | Default | Description |
|
| — | URL экземпляра Matomo (работают установки в подкаталоге, например |
|
| — | API-токен ( |
|
| — | Сайт, используемый, когда модель не указывает конкретный |
|
| — | Дополнительные HTTP-заголовки ( |
|
|
| Таймаут на запрос |
|
|
| Бюджет ответа до усечения |
|
| — | Обслуживать MCP через streamable HTTP по этому адресу вместо stdio (конечная точка: |
|
|
| Принимать самоподписанные TLS-сертификаты (явное согласие) |
| — | — | Проверить URL + токен + доступ к сайту, затем выйти |
🆚 Чем это отличается от FGRibreau/mcp-matomo?
mcp-matomo (который вдохновил этот проект — спасибо! 🙏) при запуске анализирует ваш экземпляр Matomo и генерирует один MCP-инструмент на каждый метод API. matomo-mcp использует противоположный подход:
matomo-mcp | mcp-matomo | |
Набор инструментов | 15 курируемых инструментов + запасной выход | ~70+ сгенерированных инструментов |
Стоимость контекста модели | Небольшая, стабильная | Большая, зависит от экземпляра |
Типы параметров | Точные, написанные вручную перечисления/значения по умолчанию | Выведены из имён параметров |
Запуск | Мгновенный (без сетевого ввода-вывода) | Циклы интроспекции (или кэшированный файл спецификации) |
Проверка TLS | Включена по умолчанию | Отключена для интроспекции |
Установки в подкаталог | ✅ | Путь перезаписывается |
Защита размера ответа | Ограничения строк + жесткий бюджет | — |
Повторные попытки при временных ошибках | ✅ | — |
Инструменты реального времени (Live) | ✅ | — (не часть метаданных отчёта) |
Если вам нужен каждый метод API как отдельный инструмент, используйте mcp-matomo. Если вы хотите, чтобы модель надёжно выбирала правильный инструмент и никогда не засоряла свой контекст, используйте matomo-mcp.
🩺 Устранение неполадок
Либо передайте --default-site-id 1 (рекомендуется), либо позвольте модели сначала вызвать matomo_list_sites.
Запустите matomo-mcp --url ... --token ... --check. Если не работает: перегенерируйте токен (Настройки → Личные → Безопасность), убедитесь, что у него есть как минимум доступ view к сайту.
MATOMO_URL должен указывать на корень Matomo — папку, содержащую index.php. Для https://example.com/matomo/index.php используйте https://example.com/matomo/.
Вставьте заголовки обхода: --header "CF-Access-Client-Id:..." --header "CF-Access-Client-Secret:..." (или через MATOMO_EXTRA_HEADERS).
Это контекстный предохранитель выполняет свою работу. Запросите меньше строк, более короткий диапазон дат или увеличьте --max-response-chars.
🗺️ Дорожная карта
Потоковый HTTP-транспорт (
--http, разместите один раз, подключайте много клиентов)matomo_annotations— чтение и сопоставление маркеров развертывания с трафикомПоддержка нескольких экземпляров (один сервер, несколько установок Matomo)
Homebrew tap и winget manifest
Список в реестре MCP (официальный реестр через
server.json, Glama)
Хотите что-то из этого раньше? Откройте issue — или PR, см. CONTRIBUTING.md.
🛠️ Разработка
cargo test # 37 tests, fully offline (wiremock)
cargo clippy --all-targets -- -D warnings
cargo run -- --url https://demo.matomo.cloud --default-site-id 1 --checkАрхитектура и проектные решения: docs/ARCHITECTURE.md.
📄 Лицензия и благодарности
MIT. Не аффилирован с Matomo и не одобрен им — Matomo является зарегистрированным товарным знаком InnoCraft Ltd.
Создано с помощью rmcp, официального Rust MCP SDK. Вдохновлено FGRibreau/mcp-matomo.
Имя в реестре MCP:
mcp-name: io.github.Liohtml/matomo-mcp
Если matomo-mcp экономит вам визит в панель управления, ⭐ поможет другим найти его.
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 gradedqualityFmaintenanceMCP Server for Nutanix Prism Central14MIT
- MIT
- AlicenseBqualityBmaintenanceMCP Server for Apache Pinot1417Apache 2.0
- -licenseNot gradedqualityNot gradedmaintenanceEnables AI models to interact with Matomo analytics through a complete MCP server implementation. Provides tools for retrieving analytics data, managing sites, and generating reports with zero configuration setup.
Related MCP Connectors
MCP server for Tinify image optimization — one tool, max optimization
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
MCP server for Blockscout
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/Liohtml/matomo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server