构建历史服务器

一个基于Model Context Protocol(MCP)的服务器,用于从本地SQLite文件中查询构建历史记录。

  • by scientistl
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 scientistl/ib-mcp-server

使用说明

MCP 构建历史服务器

一个最小的 模型上下文协议 (MCP) 服务器,该服务器 从本地 SQLite 文件中暴露构建历史。 服务器提供了两种工具, read_builds_in_time_range 并且 read_recent_builds, 用于查询两个时间戳之间的构建记录。


特点/特性

  • ✅ 使用简单的MCP服务器 FastMCP
  • ✅ 通过可插拔的数据位置(功能) IbDbDir 环境变量(不使用硬编码路径)
  • ✅ 返回构建的JSON列表

要求

  • Python 3.13及以上版本
  • 在您的发起机器上可用的 SQLite 数据库

安装

Windows:

uv venv ib_mcp --python 3.13
ib_mcp\Scripts\activate
uv pip install fastmcp pydantic
setx IbDbDir "<your-db-dir-here>"
cd <repo-dir>
git clone https://github.com/scientistl/ib-mcp-server.git
python 

Bash:

uv venv ib_mcp --python 3.13
source ib_mcp/bin/activate
uv pip install fastmcp pydantic
echo 'export IbDbDir=<your-db-dir-here>' >> ~/.bashrc
source ~/.bashrc
cd <repo-dir>
git clone https://github.com/scientistl/ib-mcp-server.git

快速入门

cd <your-repo>
python build_history_mcp.py

检查安装情况

读取工具描述并读取文件中的所有行。

cd <your-repo>
python build_history_mcp_check.py

MCP 接口

工具: read_builds_in_time_range

查看在此期间启动了哪些构建 start_timestamp 和 end_timestamp。

参数

  • start_timestamp (int): 最早构建开始时间(纪元毫秒数)
  • end_timestamp (int): 最新构建开始时间(时间戳,毫秒)

回报

  • list[BuildMetadata] 序列化为JSON。

工具: read_recent_builds

查看在以下时间之间启动了哪些构建 start_timestamp 并且 end_timestamp。

参数

  • started_milisec_ago (int): 工具运行时间之前的最早构建开始时间(毫秒)
  • end_milisec_ago (int): 工具运行时间前的最新构建开始时间(毫秒)

回报

  • list[BuildMetadata] 序列化为JSON格式。

安全注意事项

  • 服务器仅读取本地的SQLite文件。如果您要在远程服务器上运行它,请确保进程用户对数据库目录拥有最低权限的访问权限。