这是用于 VictoriaLogs 的 Model Context Protocol (MCP) 服务器实现。
它提供了对您的 VictoriaLogs 实例的访问,并与 VictoriaLogs API 和 文档 进行无缝集成。它可以为您提供一个全面的界面,用于与您的 VictoriaLogs 实例相关的日志、可观测性和调试任务,使工程师和工具能够进行高级自动化和交互操作。
此 MCP 服务器允许您使用 VictoriaLogs 几乎所有的只读 API,即 Web UI 中可用的所有功能:
此外,MCP 服务器包含嵌入式最新的文档,并且可以在没有在线访问的情况下搜索这些文档。
有关确切可用工具和提示的更多详细信息,请参阅 使用 部分。
您可以结合工具的功能和文档搜索功能在提示中发明出适用于您的 VictoriaLogs 实例的伟大使用场景。 请注意,MCP 服务器及其响应的质量非常依赖于客户端的能力以及您使用的模型质量。
您还可以将 MCP 服务器与其他可观测性或文档搜索相关的 MCP 服务器结合起来,获得更强大的结果。
有一个公开可用的 VictoriaMetrics MCP 服务器实例,您可以在不安装的情况下测试其功能:
https://play-vmlogs-mcp.victoriametrics.com/mcp
注意! 此 URL 不应通过浏览器打开,而是应在 MCP 客户端中使用。
它以 可流式传输的 HTTP 模式 可用,并配置为与 公共 VictoriaLogs 演示环境 一起工作。
以下是 Claude Desktop 配置示例:
go install github.com/VictoriaMetrics-Community/mcp-victorialogs/cmd/mcp-victorialogs@latest
只需从 发布页面 下载最新版本并将其放置在您的 PATH 中。
Linux x86_64 示例(注意其他架构和平台也适用):
latest=$(curl -s https://api.github.com/repos/VictoriaMetrics-Community/mcp-victorialogs/releases/latest | grep 'tag_name' | cut -d\" -f4)
wget https://github.com/VictoriaMetrics-Community/mcp-victorialogs/releases/download/$latest/mcp-victorialogs_Linux_x86_64.tar.gz
tar axvf mcp-victorialogs_Linux_x86_64.tar.gz
您可以使用 Docker 运行 VictoriaLogs MCP 服务器。
这是最简单的入门方式,无需安装 Go 或从源代码构建。
docker run -d --name mcp-victorialogs \
-e VL_INSTANCE_ENTRYPOINT=https://play-vmlogs.victoriametrics.com \
-e MCP_SERVER_MODE=http \
-e MCP_LISTEN_ADDR=:8081 \
-p 8081:8081 \
ghcr.io/victoriametrics-community/mcp-victorialogs
您应该用自己的参数替换环境变量。
请注意,MCP_SERVER_MODE=http 标志用于启用可流式传输的 HTTP 模式。
有关服务器模式的更多详细信息,请参阅 配置 部分。
查看可用的 Docker 镜像在 GitHub 注册表。
有关使用 Docker 与 MCP 服务器和标准 I/O 模式的客户端的更多详细信息,请参阅 使用 Docker 而不是二进制文件 部分。
要从源代码构建二进制文件,可以使用以下方法:
克隆仓库:
git clone https://github.com/VictoriaMetrics-Community/mcp-victorialogs.git
cd mcp-victorialogs
从克隆的源代码构建二进制文件:
make build
# 然后您可以在 PATH 中找到二进制文件 mcp-victorialogs 或直接运行
从克隆的源代码构建镜像:
docker build -t mcp-victorialogs .
# 然后您可以使用 docker 镜像 mcp-victorialogs 进行运行或推送
要通过 Smithery 自动安装 VictoriaLogs MCP 服务器到您的客户端,您可以使用以下命令:
# 获取支持的 MCP 客户端列表
npx -y @smithery/cli list clients
# 可用客户端:
# claude
# cline
# windsurf
# roocode
# witsy
# enconvo
# cursor
# vscode
# vscode-insiders
# boltai
# amazon-bedrock
# 为您的客户端安装 VictoriaLogs MCP 服务器
npx -y @smithery/cli install @VictoriaMetrics-Community/mcp-victorialogs --client <YOUR-CLIENT-NAME>
# 并按照说明操作
VictoriaLogs MCP 服务器通过环境变量进行配置:
| 变量 | 描述 | 必需 | 默认值 | 允许值 |
|---|---|---|---|---|
VL_INSTANCE_ENTRYPOINT | VictoriaLogs 实例的 URL | 是 | - | - |
VL_INSTANCE_BEARER_TOKEN | VictoriaLogs API 的身份验证令牌 | 否 | - | - |
VL_INSTANCE_HEADERS | 发送请求时自定义的 HTTP 头(逗号分隔的键值对) | 否 | - | - |
MCP_SERVER_MODE | 服务器操作模式。详情见 模式。 | 否 | stdio | stdio, sse, http |
MCP_LISTEN_ADDR | SSE 或 HTTP 服务器监听的地址 | 否 | localhost:8081 | - |
MCP_DISABLED_TOOLS | 要禁用的工具的逗号分隔列表 | 否 | - | - |
MCP_HEARTBEAT_INTERVAL | 定义可流式传输的 HTTP 协议的心跳间隔。这意味着 MCP 服务器将通过 GET 连接向客户端发送心跳,以保持连接不被网络基础设施(如网关)关闭 | 否 | 30s | - |
MCP 服务器支持以下操作模式(传输):
stdio - 标准输入/输出模式,服务器从标准输入读取命令并向标准输出写入响应。这是默认模式,适用于本地服务器。sse - 服务器发送事件。服务器将暴露 /sse 和 /message 端点用于 SSE 连接。http - 可流式传输的 HTTP。服务器将暴露 /mcp 端点用于 HTTP 连接。有关传输的更多信息,请参阅 MCP 文档:
# 对于公共演示环境
export VL_INSTANCE_ENTRYPOINT="https://play-vmlogs.victoriametrics.com"
# 自定义身份验证头(例如,在反向代理后面)
# 预期语法是逗号分隔的键值对
export VL_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
# 服务器模式
export MCP_SERVER_MODE="sse"
export MCP_SSE_ADDR="0.0.0.0:8081"
export MCP_DISABLED_TOOLS="hits,facets"
在 SSE 和 HTTP 模式下,MCP 服务器提供以下端点:
| 端点 | 描述 |
|---|---|
/sse + /message | 在 SSE 模式下的消息端点(对于支持 SSE 的 MCP 客户端) |
/mcp | 在 HTTP 模式下的流式传输消息的 HTTP 端点(对于支持可流式传输的 HTTP 的 MCP 客户端) |
/metrics | 用于监控 MCP 服务器的 Prometheus 格式的指标 |
/health/liveness | 健康检查端点,确保服务器正在运行 |
/health/readiness | 就绪检查端点,确保服务器准备好接受请求 |
前往:设置 -> Cursor 设置 -> MCP -> 添加新的全局 MCP 服务器,并将以下配置粘贴到您的 Cursor ~/.cursor/mcp.json 文件中:
{
"mcpServers": {
"victorialogs": {
"command": "/path/to/mcp-victorialogs",
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
请参阅 Cursor MCP 文档 以获取更多信息。
将以下内容添加到您的 Claude Desktop claude_desktop_config.json 文件中(您可以通过打开 设置 -> 开发者 -> 编辑配置 来找到它):
{
"mcpServers": {
"victorialogs": {
"command": "/path/to/mcp-victorialogs",
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
请参阅 Claude Desktop MCP 文档 以获取更多信息。
运行以下命令:
claude mcp add victorialogs -- /path/to/mcp-victorialogs \
-e VL_INSTANCE_ENTRYPOINT=<YOUR_VL_INSTANCE> \
-e VL_INSTANCE_BEARER_TOKEN=<YOUR_VL_BEARER_TOKEN> \
-e VL_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
请参阅 Claude Code MCP 文档 以获取更多信息。
将以下内容添加到您的 VS Code MCP 配置文件中:
{
"servers": {
"victorialogs": {
"type": "stdio",
"command": "/path/to/mcp-victorialogs",
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
请参阅 VS Code MCP 文档 以获取更多信息。
将以下内容添加到您的 Zed 配置文件中:
"context_servers": {
"victorialogs": {
"command": {
"path": "/path/to/mcp-victorialogs",
"args": [],
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
},
"settings": {}
}
}
}
请参阅 Zed MCP 文档 以获取更多信息。
设置 -> 工具 -> AI 助手 -> 模型上下文协议 (MCP)。添加 (+)作为 JSON{
"mcpServers": {
"victorialogs": {
"command": "/path/to/mcp-victorialogs",
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
将以下内容添加到您的 Windsurf MCP 配置文件中。
{
"mcpServers": {
"victorialogs": {
"command": "/path/to/mcp-victorialogs",
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
请参阅 Windsurf MCP 文档 以获取更多信息。
您可以使用 Docker 而不是本地二进制文件来运行 VictoriaLogs MCP 服务器。
您应该以上面配置示例中的运行命令方式进行替换:
{
"mcpServers": {
"victorialogs": {
"command": "docker",
"args": [
"run",
"-i", "--rm",
"-e", "VL_INSTANCE_ENTRYPOINT",
"-e", "VL_INSTANCE_BEARER_TOKEN",
"-e", "VL_INSTANCE_HEADERS",
"ghcr.io/victoriametrics-community/mcp-victorialogs",
],
"env": {
"VL_INSTANCE_ENTRYPOINT": "<YOUR_VL_INSTANCE>",
"VL_INSTANCE_BEARER_TOKEN": "<YOUR_VL_BEARER_TOKEN>",
"VL_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
}
}
}
}
在 安装 和 配置 MCP 服务器之后,您可以开始使用它与您喜欢的 MCP 客户端。
您可以从以下短语开始与 AI 助手对话:
在以下答案中使用 MCP VictoriaLogs
但这不是必需的,您可以直接开始提问,助手会自动使用工具和文档为您提供最佳答案。