Mailganer API
БесплатноНе проверенCaches Mailganer API documentation and Postman collection locally, enabling search, sync, and cross-reference between API docs and Postman requests.
Описание
Caches Mailganer API documentation and Postman collection locally, enabling search, sync, and cross-reference between API docs and Postman requests.
README
MCP-сервер для REST API Mailganer: локальный кэш документации и live-вызовы API через единый интерфейс.
Кэширует страницы документации и Postman-коллекцию в docs/, даёт инструменты для поиска, синхронизации и проверки изменений. С MAILGANER_API_KEY — выполняет реальные HTTP-запросы к API.
Структура
mailganer-api-mcp/
├── docs/
│ ├── overview.md # авторизация, лимиты, пагинация
│ ├── api-index.json # каталог всех страниц
│ ├── sitemap-pages.json # страницы из sitemap.xml
│ ├── postman-index.json # индекс Postman-запросов
│ ├── postman-collection.md # changelog и инструкция по обновлению коллекции
│ ├── crosslinks.json # связи docs ↔ Postman
│ ├── manual-crosslinks.json # ручные связи и пояснения для «дырок»
│ ├── endpoints/ # JSON по каждой странице API
│ └── postman/ # Postman collection JSON
├── docs_kb.py # фасад над пакетом kb/
├── kb/ # модули knowledge base
│ ├── storage.py # загрузка кэша
│ ├── matching.py # сопоставление docs ↔ Postman paths
│ ├── crosslinks.py # crosslinks и linked docs
│ ├── search.py # поиск по docs/Postman
│ ├── prepare.py # prepare_api_call
│ ├── sync_runner.py # sync + live diff
│ └── sanitize.py # маскирование секретов при sync
├── paths.py # нормализация API paths
├── http_retry.py # retry/backoff для HTTP
├── sync_lib.py # парсинг и sync документации с сайта
├── mailganer_client.py # HTTP-клиент для live-вызовов API
├── mcp_resources.py # MCP resources (docs, postman)
├── mcp_prompts.py # MCP prompts (workflows)
├── scripts/
│ ├── sync-api-docs.py # парсер документации (sitemap + menu)
│ ├── sync-postman.py # синхронизация Postman-коллекции (скачивание)
│ ├── add-missing-postman-requests.py # добавление методов в Postman (запись)
│ └── build-docusaurus-docs.py # генерация markdown для Docusaurus
├── website/ # Docusaurus-сайт (локальный preview docs)
└── server.py # MCP-сервер
Быстрый старт
cd mailganer-api-mcp
chmod +x setup.sh
./setup.sh .
Reload MCP в Cursor: Settings → MCP → Reload.
Или в чате: «установи mailganer api docs» / «обнови документацию mailganer».
Переменные окружения (.env.api)
MAILGANER_API_KEY=your_api_key
MAILGANER_API_BASE_URL=https://mailganer.com/api
POSTMAN_API_KEY=PMAK-your_postman_api_key
- MAILGANER_API_KEY — раздел Настройки аккаунта в личном кабинете Mailganer (для live-вызовов API)
- POSTMAN_API_KEY — Postman → Settings → API keys
MCP-серверы
| Сервер | Назначение |
|---|---|
mailganer-api |
Локальный кэш документации Mailganer API |
postman |
Ваши workspace, коллекции и запросы в Postman |
Режим Postman MCP по умолчанию: --code. Чтобы сменить (--minimal, --full), отредактируйте .cursor/postman-mcp.sh.
MCP-инструменты
Документация (без API-ключа)
| Инструмент | Описание |
|---|---|
get_doc_status |
Статус кэша: дата sync, кол-во страниц, ошибки |
get_cache_health |
Готовность кэша (ready / warnings) — после pip install без clone |
sync_documentation |
Обновить docs с сайта (all / api / postman) |
list_api_docs |
Список страниц, фильтр по категории |
search_api_docs |
Полнотекстовый поиск по кэшу |
get_api_endpoint_doc |
Страница docs + связанные Postman-запросы |
get_linked_postman_request |
Postman-запрос + связанные страницы docs |
rebuild_doc_crosslinks |
Пересобрать docs/crosslinks.json |
list_crosslink_gaps |
Список «дырок» без связи + пояснения |
check_doc_page |
Сравнить кэш с live-сайтом, показать diff |
get_api_overview |
Обзор: auth, лимиты, пагинация |
search_postman |
Поиск по Postman-коллекции |
get_postman_request |
Запрос Postman по имени или path |
Live API (нужен MAILGANER_API_KEY)
| Инструмент | Описание |
|---|---|
get_api_credentials_status |
Проверить, настроен ли API-ключ (без раскрытия) |
prepare_api_call |
Собрать method/path/auth/body из docs по slug |
call_mailganer_api |
Выполнить HTTP-запрос к Mailganer API |
MCP Resources
| URI | Содержимое |
|---|---|
mailganer://docs/overview |
Обзор API (markdown) |
mailganer://docs/status |
Статус кэша (JSON) |
mailganer://docs/cache |
Готовность кэша: ready/warnings (JSON) |
mailganer://docs/index |
Каталог страниц (JSON) |
mailganer://docs/endpoint/{slug} |
Страница docs + Postman-связи |
mailganer://postman/request/{name} |
Postman-запрос + связанные docs |
MCP Prompts
| Prompt | Назначение |
|---|---|
explore-endpoint |
Найти docs и Postman по slug/ключевому слову |
call-endpoint |
Подготовить и выполнить live-запрос по slug |
sync-docs-review |
Sync + обзор изменений |
find-crosslink-gaps |
Анализ дыр docs ↔ Postman |
Обновить документацию вручную
bash scripts/sync-all-docs.sh
или по отдельности:
python3 scripts/sync-api-docs.py
python3 scripts/sync-postman.py
python3 scripts/build-crosslinks.py
Docusaurus preview
Локальный сайт с документацией из кэша docs/ — sidebar по категориям mailganer.com, на страницах методов есть связанные Postman-запросы.
Требования: Node.js ≥ 20.
python3 scripts/build-docusaurus-docs.py # website/docs/ + website/sidebars.ts
cd website
npm install
npm start # http://localhost:3000
После sync документации перегенерируйте страницы тем же скриптом build-docusaurus-docs.py.
Production-сборка: cd website && npm run build → статика в website/build/.
Тесты и CI
pip install -e ".[dev]"
pytest
Workflow .github/workflows/ci.yml — pytest и ruff на Python 3.11–3.13 при push/PR.
Кэш docs и pip install
Каталог docs/ не входит в wheel — после pip install без clone кэш пустой.
Проверка: MCP tool get_cache_health или get_doc_status → cache.ready и cache.warnings.
Решение: clone репозитория, ./setup.sh . или bash scripts/sync-all-docs.sh.
Без sync — скачать готовый кэш из GitHub Release:
bash scripts/download-docs-cache.sh # latest release
bash scripts/download-docs-cache.sh v0.5.1 # конкретный tag
Release создаётся workflow .github/workflows/release-docs.yml при push tag v*.
Changelog: CHANGELOG.md. Contributing: CONTRIBUTING.md.
Сгенерированные website/docs/ и website/sidebars.ts в .gitignore — в репозитории только исходники сайта и скрипт генерации.
CI: автоматический sync
Workflow .github/workflows/sync-docs.yml:
| Триггер | Когда |
|---|---|
schedule |
Каждый понедельник, 06:00 UTC |
workflow_dispatch |
Вручную: GitHub → Actions → Sync API docs → Run workflow |
Если документация на сайте изменилась, workflow создаёт PR automation/sync-docs с обновлённым docs/.
После merge PR локально: git pull или ./setup.sh . для обновления кэша.
Настройка репозитория (один раз): Settings → Actions → General → Workflow permissions → Read and write и включить Allow GitHub Actions to create and approve pull requests. Без этого workflow не сможет открыть PR.
Источники
| Источник | URL | Скрипт |
|---|---|---|
| Sitemap | https://mailganer.com/sitemap.xml | sync-api-docs.py |
| Меню API | https://mailganer.com/documentation/api/ | sync-api-docs.py (fallback) |
| Postman | https://documenter.getpostman.com/view/23131434/VUxPvnhA | sync-postman.py |
Postman-коллекция: добавление методов
sync-postman.py только скачивает публичную коллекцию в docs/postman/. Чтобы добавить запросы в workspace Mailganer Team:
# POSTMAN_API_KEY в .env.api
python3 scripts/add-missing-postman-requests.py
python3 scripts/sync-postman.py
python3 scripts/build-crosslinks.py
Подробности, список добавленных методов (2026-06-22) и как расширять скрипт: docs/postman-collection.md.
Ручные связи (manual-crosslinks.json)
Автоматический матчинг не покрывает всё: разные пути (/api/auth/ vs /api/v2/auth/), несколько способов вызова, методы без отдельной doc-страницы.
Файл docs/manual-crosslinks.json:
doc_to_postman— явные связи slug → имена Postman-запросовdoc_notes— пояснение, почему у страницы нет Postman (webhook, нет в коллекции)
После правок: python3 scripts/build-crosslinks.py
Проверить «дыры»: MCP-инструмент list_crosslink_gaps.
Авторизация API (справка)
- v1 —
api_keyв теле запроса - v2 — заголовок
Authorization: CodeRequest {{api_key}} - Лимит: 500 запросов/мин
Установка Mailganer API
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/dkanster/mailganer-api-mcpFAQ
Mailganer API MCP бесплатный?
Да, Mailganer API MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Mailganer API?
Нет, Mailganer API работает без API-ключей и переменных окружения.
Mailganer API — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Mailganer API в Claude Desktop, Claude Code или Cursor?
Открой Mailganer API на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Notion
Read and write pages in your workspace
автор: NotionLinear
Issues, cycles, triage — from Claude
автор: LinearGoogle Drive
Search and read your Drive files
автор: Googlemindsdb/mindsdb
Connect and unify data across various platforms and databases with [MindsDB as a single MCP server](https://docs.mindsdb.com/mcp/overview).
автор: mindsdbCompare Mailganer API with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории productivity
