tfs-mcp
v1.0.6
Published
TFS MCP 服务器是一个基于 Node.js 的工具,用于连接 TFS (Team Foundation Server) 系统,查询工作任务和代码权限。它实现了 MCP (Model Context Protocol) 协议,为客户端提供了一系列与 TFS 交互的功能。
Readme
TFS MCP 服务器
项目简介
TFS MCP 服务器是一个基于 Node.js 的工具,用于连接 TFS (Team Foundation Server) 系统,查询工作任务和代码权限。它实现了 MCP (Model Context Protocol) 协议,为客户端提供了一系列与 TFS 交互的功能。
环境要求
- Node.js 12.0 或更高版本
- npm 6.0 或更高版本
- 网络连接到 TFS 服务器
安装
- 克隆或下载项目到本地
- 进入项目目录
- 安装依赖:
npm install配置
方法一:环境变量配置(推荐)
设置以下环境变量:
TFS_URLS: JSON格式的TFS服务器地址列表,例如:["http://tfs-server-url:8080/tfs"]TFS_PROJECTS: JSON格式的项目名称列表,例如:["项目1", "项目2"]TFS_TOKEN: 个人访问令牌
方法二:配置文件
配置env环境变量
// TFS配置文件
const config = {
// TFS服务器地址列表
tfsUrls: ["http://tfs-server-url:8080/tfs"],
// 个人访问令牌
personalAccessToken: "your-personal-access-token",
// 项目列表
projects: ["项目1", "项目2"]
};
module.exports = config;功能列表
| 工具名称 | 描述 | 参数 |
|---------|------|------|
| get_my_tasks | 查询分配给我的所有工作任务 | includeCompleted (boolean): 是否包含已完成的任务days (number): 查询最近N天的任务 |
| get_task_details | 获取指定任务的详细信息 | taskId (string/array): 任务ID或任务ID数组 |
| get_projects | 获取所有可用的TFS项目列表 | 无 |
| get_code_repositories | 查询我有权限访问的代码库 | projectName (string): 项目名称(可选) |
| get_user_info | 获取当前登录的TFS用户信息 | 无 |
| get_user_tasks | 查询分配给指定用户的所有工作任务 | userName (string): 用户名称includeCompleted (boolean): 是否包含已完成的任务days (number): 查询最近N天的任务 |
使用方法
作为命令行工具
# 启动服务器
node tfs-mcp-server.js
# 或使用npm link后直接运行
tfs-mcp作为模块使用
const TFSMCPServer = require('./tfs-mcp-server');
const server = new TFSMCPServer();
server.start();协议说明
该服务实现了 MCP 协议,通过标准输入/输出进行通信。客户端可以发送 JSON-RPC 格式的请求,服务端会返回相应的结果。
示例请求
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "get_my_tasks",
"arguments": {
"includeCompleted": false,
"days": 7
}
},
"id": 1
}示例响应
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "找到 2 个任务 (修改日期: 2026-03-26 至今)"
}
]
}
}使用示例
查询我的任务
# 启动服务器
node tfs-mcp-server.js
# 在另一个终端发送请求
echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"get_my_tasks","arguments":{"includeCompleted":false,"days":15}},"id":1}' | node tfs-mcp-server.js查询任务详情
echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"get_task_details","arguments":{"taskId":"1912582"}},"id":2}' | node tfs-mcp-server.js获取项目列表
echo '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"get_projects","arguments":{}},"id":3}' | node tfs-mcp-server.js常见问题
1. 连接TFS服务器失败
- 检查网络连接是否正常
- 验证TFS服务器地址是否正确
- 确认个人访问令牌是否有效
- 检查环境变量是否正确设置
2. 无法查询到任务
- 确认配置文件中的项目列表是否正确
- 检查用户是否有相应的权限
- 验证TFS服务器是否正常运行
3. 性能问题
- 对于大型项目,查询可能会较慢,请耐心等待
- 建议使用
days参数限制查询时间范围 - 避免一次查询过多任务
依赖
- azure-devops-node-api ^15.1.2
版本历史
- v1.0.6: 初始版本
许可证
MIT
