spov-mcp-logs-server 翻译为中文可以是“spov-MCP日志服务器”。这里,“spov”可能是一个特定项目或系统的名称,“MCP”通常代表“Multiplayer Computing Platform”(多人计算平台)或其他根据上下文确定的含义,“logs”表示日志,“server”表示服务器。因此,整个名称可以理解为某个特定项目或系统中的MCP日志服务器
Java(一种编程语言) 模型上下文协议(MCP) 使用官方MCP SDK为AI客户端提供日志检索工具的服务器。
SPDX许可证标识符: Apache-2.0(许可证)
特点/功能
MCP 工具: get_logs
- 从多个来源(文件、模拟Datadog、模拟Elasticsearch)检索日志
- 从本地文件中返回最后1000行
- 提供测试用的示例数据,无需外部服务
双传输支持:
- stdio(标准输入输出库)对于本地AI客户端(VS Code Copilot Chat,Claude Desktop)
- HTTP/SSE用于远程访问和基于网页的集成
要求
- Java 21及以上版本
- Maven 3.8+
快速入门
# Clone & build
git clone https://github.com/PradeepLoganathan/spov-mcp-logs-server
cd spov-mcp-logs-server
mvn clean package
# Run stdio server (for VS Code/Claude Desktop)
export LOGS_FILE_PATH=test-logs.txt
java -jar target/spov-mcp-logs-server-1.0.0.jar
# Run HTTP server (for web/remote clients)
export LOGS_FILE_PATH=test-logs.txt
export PORT=8080
java -cp target/spov-mcp-logs-server-1.0.0.jar com.spov.mcp.logs.sdk.HttpMain在VS Code中使用(GitHub Copilot Chat)
- 配置
.vscode/mcp.json:
{
"servers": {
"logs-server": {
"command": "java",
"args": ["-jar", "/absolute/path/to/spov-mcp-logs-server-1.0.0.jar"],
"env": {
"LOGS_FILE_PATH": "/path/to/your/logs.txt"
}
}
}
}
- 重启 VS Code
- 在Copilot聊天中使用:“使用get_logs命令并指定源为'file'来显示日志给我”
与Claude Desktop配合使用
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) 或 %APPDATA%/Claude/claude_desktop_config.json (Windows):
{
"mcpServers": {
"logs-server": {
"command": "java",
"args": ["-jar", "/absolute/path/to/spov-mcp-logs-server-1.0.0.jar"],
"env": {
"LOGS_FILE_PATH": "/path/to/your/logs.txt"
}
}
}
}重启Claude桌面版。
工具:获取日志
从不同来源检索日志。
参数:
source(必填):"datadog","elastic",或者"file"
来源:
datadog返回模拟的Datadog日志(JSON格式)elastic返回模拟的 Elasticsearch 日志(JSON 格式)file从……读取LOGS_FILE_PATH环境变量(最后1000行)
示例:
{
"name": "get_logs",
"arguments": {
"source": "file"
}
}配置
环境变量:
| 名称 | 默认值 | 用途 |
|---|---|---|
LOGS_FILE_PATH | - | 本地日志文件的路径(对于...是必需的) source: "file") |
PORT | 8080 | HTTP服务器端口(仅限HTTP模式) |
建筑学
实现:
SdkMain.javastdio 传输(用于本地 AI 客户端)HttpMain.javaHTTP/SSE传输(用于远程/网页客户端)
依赖项:
io.modelcontextprotocol.sdk:mcp:0.9.0- 官方MCP SDK(MCP软件开发工具包)org.slf4j:slf4j-simple:2.0.17- 记录(日志)org.eclipse.jetty:jetty-server:11.0.24- HTTP服务器(用于HttpMain)
协议:
- 通过stdio或HTTP使用JSON-RPC 2.0
- MCP(可能指某种系统或平台,如“管理控制平台”等,具体根据上下文确定)功能:工具、日志记录
测试
stdio 模式:
export LOGS_FILE_PATH=test-logs.txt
java -jar target/spov-mcp-logs-server-1.0.0.jar
# Server waits for JSON-RPC on stdinHTTP 模式:
# Terminal 1: Start server
export LOGS_FILE_PATH=test-logs.txt
java -cp target/spov-mcp-logs-server-1.0.0.jar com.spov.mcp.logs.sdk.HttpMain
# Terminal 2: Connect to SSE
curl -N http://localhost:8080/mcp/sse
# Terminal 3: Send requests (use session ID from SSE)
curl -X POST "http://localhost:8080/mcp?sessionId=SESSION_ID" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'许可证
Apache许可证,第2版
相关的
博客讲解(概念): https://pradeepl.com/blog/model-context-protocol/构建一个MCP服务器/
