Targetprocess AI助手
为与项目管理和敏捷规划平台Targetprocess进行交互提供了工具,使AI助手能够搜索、创建和更新项目实体,并进行适当的验证。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"targetprocess": {
"autoApprove": [],
"command": "./scripts/run-local.sh",
"disabled": false
}
}
}
该服务需要配置环境变量:TP_DOMAIN、TP_PASSWORD、TP_USERNAME
服务介绍
Targetprocess MCP 服务器
模型上下文协议(MCP)是一种标准,它通过统一的接口使AI助手能够与外部工具和服务进行交互。MCP服务器通过暴露AI助手可以使用的工具和资源来提供这些功能。
此MCP服务器提供了与Targetprocess(一个项目管理和敏捷计划平台)交互的工具。它使AI助手能够:
- 搜索和检索Targetprocess实体(用户故事、错误、任务、特性等)
- 创建并更新带有适当验证的实体
- 使用复杂的过滤器和包含查询实体
- 检查和发现Targetprocess数据模型
- 安全地处理身份验证和API交互
主要特性
- 数据模型探索:探索和理解复杂的Targetprocess实现
- 强大的查询能力:使用复杂的过滤器和包含来精确获取所需的数据
- 实体管理:创建并更新带有适当验证的实体
- 关系探索:理解不同实体之间的关联
- 错误处理:具有重试机制和信息性消息的强大错误处理
- 文档集成:内置访问Targetprocess文档的功能
应用场景
该MCP服务器在企业环境中特别有价值,其中Targetprocess可能处理数百万条记录,并具有复杂的数据架构和模型。常见的应用场景包括:
- 数据模型探索:映射和理解复杂的Targetprocess实现
- 企业分析:跨数百万条记录提取和分析数据
- 跨系统集成:作为Targetprocess与其他系统之间的桥梁
- 自定义报告:构建标准UI中不可用的专业报告
- 批量操作:对许多实体进行大规模更改
- 模式探索:在复杂实现中发现自定义字段和关系
有关详细示例和实施指南,请参阅USECASES.md。
开始使用
递归克隆仓库以包含文档搜索工具:
git clone --recursive https://github.com/aaronsb/apptio-target-process-mcp.git
cd apptio-target-process-mcp
开发资源
文档搜索
此仓库包含一个Targetprocess开发者文档的抓取/搜索工具作为子模块。您可以使用它快速搜索Targetprocess的文档:
# From the project root:
pushd resources/target-process-docs && npm install && ./refresh-docs.sh && popd # First time setup
# To search documentation (from any directory):
pushd resources/target-process-docs && ./search-docs.sh "your search query" && popd
# Example search:
pushd resources/target-process-docs && ./search-docs.sh "entity states" && popd
搜索工具位于resources/target-process-docs目录下。我们在这里使用pushd/popd命令是因为:
- 该工具需要使用相对路径访问其数据库文件
- pushd保存您当前的目录位置
- 临时切换到工具目录以运行命令
- popd自动返回到您的先前位置
这种方法允许您从任何目录运行搜索,同时确保工具能够找到其数据库文件。
该工具提供了一种强大的方式来本地搜索 Targetprocess 的开发者文档。搜索结果包括相关的文档部分及其上下文,这使得查找特定的 API 细节或实现指南变得更加容易。
CI/CD 流水线
该项目使用 GitHub Actions 进行自动化构建:
- 推送到
main分支会触发新的容器构建 - 版本标签(v*..)创建版本化发布
- 镜像被发布到 GitHub Container Registry
您可以使用发布的镜像:
docker run -i --rm \
-e TP_DOMAIN=your-domain.tpondemand.com \
-e TP_USERNAME=your-username \
-e TP_PASSWORD=your-password \
ghcr.io/aaronsb/apptio-target-process-mcp
环境变量
TP_DOMAIN: 您的 Targetprocess 域名(例如,company.tpondemand.com)TP_USERNAME: 您的 Targetprocess 用户名TP_PASSWORD: 您的 Targetprocess 密码
使用 Docker 进行本地开发
对于本地开发和测试,请使用提供的脚本:
- 构建本地镜像:
注意:默认情况下,构建脚本使用 Docker 的静默模式以最小化日志输出。这是有意为之,旨在减少与 Cline 等处理构建输出的工具交互时的 AI 令牌消耗。在静默模式下,完整的构建日志保存至
/tmp/apptio-target-process-mcp/docker-build.log。使用--verbose标志可在终端直接查看构建输出。
./scripts/build-local.sh # Quiet mode (default), logs to file
./scripts/build-local.sh --verbose # Full build output in terminal
- 运行本地镜像:
./scripts/run-local.sh
- 配置 Cline:
编辑~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:
{
"mcpServers": {
"targetprocess": {
"command": "./scripts/run-local.sh",
"disabled": false,
"autoApprove": []
}
}
}
不使用 Docker 的本地开发
先决条件
- Node.js 20 或更高版本
- npm
设置
- 递归克隆仓库:
git clone --recursive https://github.com/modelcontextprotocol/targetprocess-mcp.git
cd targetprocess-mcp
注意:需要 --recursive 标志以同时克隆文档搜索工具子模块。
- 安装依赖项:
npm install
- 复制示例配置:
cp config/targetprocess.example.json config/targetprocess.json
- 编辑
config/targetprocess.json并填入您的 Targetprocess 凭证。
构建
npm run build
运行
node build/index.js
API 功能
有关详细示例和常见用例,请参阅 USECASES.md。
MCP 服务器提供了以下工具用于与 Targetprocess 交互:
search_entities
使用过滤器和包含选项搜索 Targetprocess 实体(UserStory, Bug, Task, Feature)。
{
"type": "UserStory", // Required: Entity type to search for
"where": "EntityState.Name eq 'Open'", // Optional: Filter expression
"take": 10, // Optional: Number of items to return (default: 100, max: 1000)
"include": ["Project", "Team"] // Optional: Related data to include
}
get_entity
获取关于特定实体的详细信息。
{
"type": "UserStory", // Required: Entity type
"id": 123456, // Required: Entity ID
"include": ["Project", "Team"] // Optional: Related data to include
}
create_entity
在 Targetprocess 中创建新实体。
{
"type": "UserStory", // Required: Entity type to create
"name": "Story Name", // Required: Entity name
"description": "Details...", // Optional: Entity description
"project": { // Required: Project to create in
"id": 123
},
"team": { // Optional: Team to assign
"id": 456
}
}
update_entity
更新现有实体。
{
"type": "UserStory", // Required: Entity type
"id": 123456, // Required: Entity ID
"fields": { // Required: Fields to update
"name": "New Name",
"description": "New description",
"status": {
"id": 789
}
}
}
inspect_object
通过 API 检查 Targetprocess 对象及其属性。
{
"action": "list_types", // Required: Action to perform
"entityType": "UserStory", // Required for some actions: Entity type to inspect
"propertyName": "Description" // Required for some actions: Property to inspect
}
性能考虑
当处理可能包含数百万条记录的大规模 Targetprocess 实例时:
- 使用特定查询:始终使用最具体的查询来限制结果集
- 限制结果大小:使用
take参数来限制返回的结果数量 - 仅包含必要的数据:只包含你实际需要的相关数据
- 考虑分页:对于大型结果集,在你的应用程序中实现分页
- 批量操作:对于批量操作,考虑将请求分批处理以避免API过载
LLM 集成
此MCP服务器可以与支持模型上下文协议的各种AI助手一起使用:
- Cline - 一个基于CLI的AI助手
- Claude Desktop - Anthropic的桌面应用程序
- Goose - 一个本地AI助手
有关配置和设置说明,请参阅llms-install.md。
配置
可以通过环境变量或JSON配置文件来配置服务器。
配置文件格式
{
"domain": "your-domain.tpondemand.com",
"credentials": {
"username": "your-username",
"password": "your-password"
}
}
许可证
MIT