Loki MCP Server
Простой сервер Loki MCP
Loki MCP Server — это интерфейс Model Context Protocol (MCP) для запроса журналов Grafana Loki с помощью logcli . Сервер позволяет помощникам ИИ получать доступ к данным журналов Loki и анализировать их напрямую.
Функции
Запрос журналов Loki с полной поддержкой LogQL
Получить значения меток и метаданные
Поддержка аутентификации и настройки через переменные среды или файлы конфигурации
Предоставляет отформатированные результаты в различных форматах вывода (по умолчанию, необработанные, строки JSON)
Автоматический возврат к HTTP API, если
logcliнедоступен в среде
Related MCP server: Cloud Logging API Server
Предпосылки
Node.js v16 или выше
Машинопись
(Необязательно) Grafana Loki logcli установлен и доступен в вашем PATH. Если
logcliнедоступен, сервер автоматически будет использовать Loki HTTP API вместо этогоДоступ к экземпляру сервера Loki
Установка
Установка через Smithery
Чтобы автоматически установить Simple Loki MCP Server для Claude Desktop через Smithery :
npx -y @smithery/cli install @ghrud92/simple-loki-mcp --client claudeдля МКП
{
"mcpServers": {
"simple-loki": {
"command": "npx",
"args": ["-y", "simple-loki-mcp"],
"env": {
"LOKI_ADDR": "https://loki.sup.band"
}
}
}
}нпм
Клонируйте репозиторий:
git clone https://github.com/ghrud92/loki-mcp.git
cd loki-mcpУстановить зависимости:
npm installСоздайте проект:
npm run buildДоступные инструменты MCP
запрос-локи
Запрос журналов из Loki с возможностью фильтрации.
Параметры:
query(обязательно): строка запроса Loki (LogQL)from: начальная временная метка (например, "2023-01-01T12:00:00Z")to: конечная временная метка (например, «2023-01-01T13:00:00Z»)limit: Максимальное количество возвращаемых журналовbatch: Размер пакета для результатов запросаoutput: Формат вывода («по умолчанию», «сырой» или «jsonl»)quiet: Подавить метаданные запросаforward: Отображать результаты в хронологическом порядке
получить-метки-значения
Получить все значения для определенной метки.
Параметры:
label(обязательно): Имя метки для получения значений
получить-метки
Получить все доступные метки.
Параметры не требуются.
Конфигурация
Вы можете настроить доступ к Loki, используя:
Переменные среды
LOKI_ADDR: адрес сервера Loki (URL)LOKI_USERNAME: Имя пользователя для базовой аутентификацииLOKI_PASSWORD: Пароль для базовой аутентификацииLOKI_TENANT_ID: идентификатор арендатора для многоарендного LokiLOKI_BEARER_TOKEN: Токен на предъявителя для аутентификацииLOKI_BEARER_TOKEN_FILE: Файл, содержащий токен на предъявителяLOKI_CA_FILE: Пользовательский файл CA для TLSLOKI_CERT_FILE: Файл клиентского сертификата для TLSLOKI_KEY_FILE: Файл ключа клиента для TLSLOKI_ORG_ID: идентификатор организации для многоорганизационных настроекLOKI_TLS_SKIP_VERIFY: Пропустить проверку TLS («истина» или «ложь»)LOKI_CONFIG_PATH: Пользовательский путь к файлу конфигурацииDEBUG: включить ведение журнала отладки
Примечание : когда клиент использует режим HTTP API (когда
logcliнедоступен), для аутентификации и подключения к серверу Loki используются те же параметры конфигурации.
Файлы конфигурации
Либо создайте файл logcli-config.yaml в одном из следующих мест:
Пользовательский путь, указанный
LOKI_CONFIG_PATHТекущий рабочий каталог
Ваш домашний каталог (
~/.logcli-config.yaml)
Пример файла конфигурации:
addr: https://loki.example.com
username: user
password: pass
tenant_id: mytenantИспользование
Запустите сервер:
npm startДля разработки:
npm run devПодробности реализации
Автоматический возврат к HTTP API
Сервер автоматически проверит, установлен ли logcli и доступен ли он в среде:
Если
logcliдоступен, он будет использоваться для всех запросов, обеспечивая полную функциональность инструмента CLI.Если
logcliнедоступен, сервер автоматически вернется к использованию Loki HTTP API:Никакой дополнительной настройки не требуется.
Для HTTP API используются те же параметры аутентификации.
Форматирование ответа соответствует выходным данным CLI.
В обоих режимах применяется ограничение по умолчанию в 1000 журналов на запрос.
Автоматическое обнаружение гарантирует бесперебойную работу сервера в различных средах без необходимости ручной настройки.
Разработка
# Run linter
npm run lint
# Fix linting issues
npm run lint:fix
# Run tests
npm run testЛицензия
Данный проект лицензирован по лицензии MIT — подробности смотрите в файле LICENSE.md .
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/ghrud92/loki-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server