本项目的 MCP 服务器提供了一系列工具,可用于与 Signoz 实例进行交互,如验证连接、获取仪表盘信息、获取 APM 指标等,帮助用户更方便地管理和监控 Signoz 数据。
点击下方链接观看演示视频 📽️ https://youtube.com/shorts/jxjmGyXXz7A
MCP 服务器提供了以下工具:
data_type('traces' 或 'logs')、时间范围、服务名称和限制。返回跟踪或日志的表格结果。uv venv .venv
source .venv/bin/activate
uv sync
uv run -m src.signoz_mcp_server.mcp_server
uv 运行其他入口脚本。config.yaml 文件与 mcp_server.py 文件在同一目录下,或者设置所需的环境变量(请参阅配置部分)。src/signoz_mcp_server/config.yaml 文件。docker-compose up -d
服务器按以下优先级顺序加载配置:
SIGNOZ_HOST:Signoz 实例的 URL(例如 https://your-signoz-instance.com)SIGNOZ_API_KEY:Signoz API 密钥(可选)SIGNOZ_SSL_VERIFY:true 或 false(默认:true)MCP_SERVER_PORT:服务器运行的端口(默认:8000)MCP_SERVER_DEBUG:true 或 false(默认:true)config.yaml):signoz:
host: "https://your-signoz-instance.com"
api_key: "your-signoz-api-key-here" # 可选
ssl_verify: "true"
server:
port: 8000
debug: true
你可以将此 MCP 服务器与任何支持 MCP 协议的工具集成。以下是主要选项:
在本地运行服务器之前,安装依赖项并使用 uv 运行:
uv sync
然后将以下内容添加到你的客户端配置(例如,claude-desktop.json):
{
"mcpServers": {
"signoz": {
"command": "/path/to/uv",
"args": [
"--directory",
"/full/path/to/signoz-mcp-server",
"run",
"src/signoz_mcp_server/mcp_server.py"
],
"env": {
"MCP_TRANSPORT": "stdio",
"SIGNOZ_HOST": "https://your-signoz-instance.com",
"SIGNOZ_API_KEY": "your-signoz-api-key-here",
"SIGNOZ_SSL_VERIFY": "true"
}
}
}
}
which uv 或在 Windows 上运行 where uv 来找到 uv 的路径。config.yaml 文件与 mcp_server.py 文件在同一目录下,或者相应地更新路径。{
"mcpServers": {
"signoz": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"SIGNOZ_HOST",
"-e",
"SIGNOZ_API_KEY",
"-e",
"SIGNOZ_SSL_VERIFY",
"ddroid/signoz-mcp-server",
"-t",
"stdio"
],
"env": {
"SIGNOZ_HOST": "https://your-signoz-instance.com",
"SIGNOZ_API_KEY": "your-signoz-api-key-here",
"SIGNOZ_SSL_VERIFY": "true"
}
}
}
}
-t stdio 参数用于与 Docker MCP 客户端兼容(强制使用 stdio 握手模式)。如果你已经有一个 MCP 服务器在运行(例如,在远程主机、云虚拟机或 Kubernetes 上),你可以将你的 AI 助手或工具直接连接到其 HTTP 端点。
{
"mcpServers": {
"signoz": {
"url": "http://your-server-host:8000/mcp"
}
}
}
your-server-host 替换为你的 MCP 服务器实际运行的主机。localhost 作为服务器主机(即 http://localhost:8000/mcp)。http,对于生产或安全的部署使用 https。mcp:
endpoint: "http://your-server-host:8000/mcp"
protocolVersion: "2025-06-18"
your-server-host 替换为你的 MCP 服务器实际运行的主机。localhost 作为服务器主机(即 http://localhost:8000/mcp)。http 或 https。command 或 args,只需指向 HTTP 端点。curl http://localhost:8000/health
服务器默认在端口 8000 上运行。