DevHub MCP Server
официальныйУправление и использование содержимого веб-сайта на платформе CMS DevHub
Документация
DevHub CMS MCP
Интеграция Model Context Protocol (MCP) для управления контентом в системе DevHub CMS.
Установка
Вам потребуется установленный на локальной системе менеджер пакетов uv.
Ручная настройка Claude Desktop
Чтобы использовать этот сервер с приложением Claude Desktop, добавьте следующую конфигурацию в секцию "mcpServers" вашего claude_desktop_config.json:
{
"mcpServers": {
"devhub_cms_mcp": {
"command": "uvx",
"args": [
"devhub-cms-mcp"
],
"env": {
"DEVHUB_API_KEY": "YOUR_KEY_HERE",
"DEVHUB_API_SECRET": "YOUR_SECRET_HERE",
"DEVHUB_BASE_URL": "https://yourbrand.cloudfrontend.net"
}
}
}
}
После обновления конфигурации перезапустите Claude Desktop.
Ручная настройка для Cursor
Этот MCP также можно использовать в Cursor с аналогичной конфигурацией, добавленной в ваше глобальное окружение Cursor или в отдельные проекты.
Примеры здесь
Установка через Claude Code
Командная строка Claude Code поддерживает установку MCP.
Вы можете добавить devhub-cms-mcp, обновив переменные окружения ниже:
claude mcp add devhub-cms-mcp \
-e DEVHUB_API_KEY=YOUR_KEY_HERE \
-e DEVHUB_API_SECRET=YOUR_SECRET_HERE \
-e DEVHUB_BASE_URL=https://yourbrand.cloudfrontend.net \
-- uvx devhub-cms-mcp
Установка через Smithery
Чтобы установить DevHub CMS MCP для Claude Desktop автоматически через Smithery:
npx -y @smithery/cli install @devhub/devhub-cms-mcp --client claude
Локальная разработка
Клонирование репозитория (или вашего форка)
git clone [email protected]:devhub/devhub-cms-mcp.git
Ручная настройка Claude Desktop
Чтобы использовать этот сервер с приложением Claude Desktop для локальной разработки, добавьте следующую конфигурацию в секцию "mcpServers" вашего claude_desktop_config.json:
{
"mcpServers": {
"devhub_cms_mcp": {
"command": "uv",
"args": [
"--directory",
"/YOUR/LOCAL/PATH/devhub-cms-mcp/",
"run",
"main.py"
],
"env": {
"DEVHUB_API_KEY": "YOUR_KEY_HERE",
"DEVHUB_API_SECRET": "YOUR_SECRET_HERE",
"DEVHUB_BASE_URL": "https://yourbrand.cloudfrontend.net"
}
}
}
}
После обновления конфигурации перезапустите Claude Desktop.
Конфигурация для запуска напрямую с uv
Для работы этого MCP необходимо установить следующие переменные окружения:
export DEVHUB_API_KEY="your_api_key"
export DEVHUB_API_SECRET="your_api_secret"
export DEVHUB_BASE_URL="https://yourbrand.cloudfrontend.net"
Затем запустите MCP:
uv run main.py
Доступные инструменты
Этот MCP предоставляет следующие инструменты для взаимодействия с DevHub CMS:
Управление компаниями и местоположениями
- get_businesses(): Получает все компании в аккаунте DevHub. Возвращает список компаний с их идентификаторами и названиями.
- get_locations(business_id): Получает все местоположения для конкретной компании. Возвращает подробную информацию о местоположении, включая адрес, координаты и URL-адреса.
- get_hours_of_operation(location_id, hours_type='primary'): Получает часы работы для конкретного местоположения DevHub. Возвращает структурированный список временных диапазонов для каждого дня недели.
- update_hours(location_id, new_hours, hours_type='primary'): Обновляет часы работы для местоположения DevHub.
- get_nearest_location(business_id, latitude, longitude): Находит ближайшее местоположение DevHub на основе географических координат.
- site_from_url(url): Получает идентификатор сайта DevHub и детали из URL-адреса. Возвращает идентификатор сайта, URL и связанные идентификаторы местоположений.
Управление контентом
- get_blog_post(post_id): Извлекает одну запись блога по идентификатору, включая её заголовок, дату и HTML-содержимое.
- create_blog_post(site_id, title, content): Создаёт новую запись блога. Содержимое должно быть в формате HTML и не должно включать тег H1.
- update_blog_post(post_id, title=None, content=None): Обновляет заголовок и/или содержимое существующей записи блога.
Управление медиафайлами
- upload_image(base64_image_content, filename): Загружает изображение в медиагалерею DevHub. Поддерживаются форматы webp, jpeg и png. Изображение должно быть предоставлено в виде строки в кодировке base64.
Использование с LLM
Этот MCP предназначен для использования с большими языковыми моделями, поддерживающими Model Context Protocol. Он позволяет LLM управлять контентом в DevHub CMS без необходимости прямого доступа к API, интегрированного в LLM нативно.
Тестирование
Этот пакет включает набор тестов с имитацией запросов к API DevHub, что позволяет тестировать функциональность без выполнения реальных вызовов API.
Запуск тестов
Чтобы запустить тесты, сначала установите пакет с зависимостями для тестирования:
uv pip install -e ".[test]"
Запустите тесты с помощью pytest:
uv run pytest
Для более подробного вывода и информации о покрытии тестами:
uv run pytest -v --cov=devhub_cms_mcp
Структура тестов
tests/devhub_cms_mcp/test_mcp_integration.py: Тесты для конечных точек интеграции MCP