Перейти к содержимому

MCP Сервер

Notifly MCP Server — это реализация Model Context Protocol (MCP), позволяющая AI-ассистентам (Claude, GitHub Copilot и другим) управлять Notifly через набор готовых инструментов.

С помощью MCP-сервера AI-ассистент может:

  • отправлять уведомления в каналы;
  • читать, фильтровать и удалять сообщения;
  • создавать и управлять каналами и клиентами;
  • администрировать пользователей сервера.

  • Go 1.21 или новее
Окно терминала
git clone https://github.com/notifly/mcp.git
cd mcp
go mod tidy
go build -o notifly-mcp .

Готовый бинарный файл notifly-mcp запускается через stdio-транспорт — MCP-клиент запускает его как дочерний процесс.


Сервер настраивается исключительно через переменные окружения:

ПеременнаяОбязательнаяОписание
NOTIFLY_URLБазовый URL сервера Notifly, например https://your-domain.com
NOTIFLY_APP_TOKENApp-токен (префикс A) — для инструмента send_message
NOTIFLY_CLIENT_TOKENMCP-код (префикс M) или client-токен (префикс C) — для управления ресурсами
NOTIFLY_USERЛогин для Basic Auth (альтернатива MCP-коду)
NOTIFLY_PASSПароль для Basic Auth

Откройте файл конфигурации Claude Desktop:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Добавьте секцию mcpServers:

{
"mcpServers": {
"notifly": {
"command": "/usr/local/bin/notifly-mcp",
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_APP_TOKEN": "AGdjfk_L.dKe8q",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
}
}

После перезапуска Claude Desktop инструменты Notifly появятся в интерфейсе.


Добавьте в .vscode/mcp.json в корне проекта или в пользовательские настройки VS Code:

{
"servers": {
"notifly": {
"type": "stdio",
"command": "/usr/local/bin/notifly-mcp",
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_APP_TOKEN": "AGdjfk_L.dKe8q",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
}
}

Добавьте файл .cursor/mcp.json в корень проекта (project-scope) или ~/.cursor/mcp.json глобально:

{
"mcpServers": {
"notifly": {
"command": "/usr/local/bin/notifly-mcp",
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_APP_TOKEN": "AGdjfk_L.dKe8q",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
}
}

После сохранения файла Cursor подхватит сервер автоматически. Убедитесь, что notifly-mcp доступен в PATH.


Откройте или создайте файл ~/.codeium/windsurf/mcp_config.json и добавьте секцию mcpServers:

{
"mcpServers": {
"notifly": {
"command": "/usr/local/bin/notifly-mcp",
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_APP_TOKEN": "AGdjfk_L.dKe8q",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
}
}

После сохранения перезапустите Windsurf — инструменты Notifly появятся в Cascade.


Используйте команду claude mcp add для регистрации сервера:

Окно терминала
claude mcp add notifly /usr/local/bin/notifly-mcp \
-e NOTIFLY_URL=https://your-notifly-domain.com \
-e NOTIFLY_CLIENT_TOKEN=CaQw5lL_L.yiRbN

Флаг --scope user добавляет сервер глобально для всех проектов (по умолчанию — project-scope). Проверить список добавленных серверов: claude mcp list.


Откройте или создайте файл ~/.codex/config.toml и добавьте секцию:

[[mcp_servers]]
name = "notifly"
command = "/usr/local/bin/notifly-mcp"
env = { NOTIFLY_URL = "https://your-notifly-domain.com", NOTIFLY_CLIENT_TOKEN = "CaQw5lL_L.yiRbN" }

После сохранения Codex подхватит сервер при следующем запуске. Убедитесь, что notifly-mcp доступен в PATH.


Откройте файл настроек Zed (~/.config/zed/settings.json) и добавьте секцию context_servers:

{
"context_servers": {
"notifly": {
"command": {
"path": "/usr/local/bin/notifly-mcp",
"args": [],
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
}
}
}

Zed подхватит сервер без перезапуска.


Добавьте секцию mcpServers в файл конфигурации Continue (~/.continue/config.json):

{
"mcpServers": [
{
"name": "notifly",
"command": "/usr/local/bin/notifly-mcp",
"env": {
"NOTIFLY_URL": "https://your-notifly-domain.com",
"NOTIFLY_CLIENT_TOKEN": "CaQw5lL_L.yiRbN"
}
}
]
}

Continue поддерживается как расширение для VS Code и JetBrains IDE.


ИнструментОписание
get_healthПроверить работоспособность сервера и базы данных
get_versionПолучить версию, commit и дату сборки
get_server_infoПолучить флаги сервера (регистрация, OIDC)
ИнструментПараметрыОписание
send_messagemessage*, title, priorityОтправить уведомление (требует NOTIFLY_APP_TOKEN)
list_messageslimit, sinceСписок всех сообщений с пагинацией
list_application_messagesapp_id*, limit, sinceСообщения конкретного канала
delete_messageid*Удалить сообщение по ID
delete_all_messagesУдалить все сообщения
delete_application_messagesapp_id*Удалить все сообщения канала
ИнструментПараметрыОписание
list_applicationsСписок всех каналов
create_applicationname*, description, default_priorityСоздать канал
update_applicationid*, name, description, default_priorityОбновить канал
delete_applicationid*Удалить канал
ИнструментПараметрыОписание
list_clientsСписок всех клиентов (устройств/токенов)
create_clientname*Создать клиента, получить client-токен
update_clientid, nameПереименовать клиента
delete_clientid*Удалить клиента (отозвать токен)
ИнструментПараметрыОписание
get_current_userИнформация о текущем пользователе
list_usersСписок всех пользователей (требует admin)
get_userid*Получить пользователя по ID (admin)
create_username, pass, adminСоздать пользователя (admin)
delete_userid*Удалить пользователя (admin)

* — обязательный параметр


Отправь уведомление в Notifly с заголовком "Деплой завершён"
и текстом "Версия 2.1.0 успешно развёрнута на prod" с приоритетом 7.

Claude вызовет инструмент send_message автоматически.

Покажи список всех каналов в Notifly и последние 10 сообщений
из канала с ID 3.

Claude последовательно вызовет list_applications и list_application_messages.

Создай нового пользователя в Notifly с именем "devops"
и паролем "securepass", без прав администратора.

Claude вызовет create_user с нужными параметрами.


  • MCP-сервер работает локально через stdio — сетевой порт не открывается.
  • Токены хранятся только в переменных окружения процесса.
  • Инструменты delete_all_messages и delete_user выполняют необратимые операции — AI-ассистент должен запросить подтверждение перед их вызовом.