T

Targetprocess AI助手

@aaronsb/apptio-target-process-mcp
0 Stars 389 次浏览 aaronsb 更新于 2026-08-23

为与项目管理和敏捷规划平台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命令是因为:

  1. 该工具需要使用相对路径访问其数据库文件
  2. pushd保存您当前的目录位置
  3. 临时切换到工具目录以运行命令
  4. 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 进行本地开发

对于本地开发和测试,请使用提供的脚本:

  1. 构建本地镜像:

    注意:默认情况下,构建脚本使用 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
  1. 运行本地镜像:
./scripts/run-local.sh
  1. 配置 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

设置

  1. 递归克隆仓库:
git clone --recursive https://github.com/modelcontextprotocol/targetprocess-mcp.git
cd targetprocess-mcp

注意:需要 --recursive 标志以同时克隆文档搜索工具子模块。

  1. 安装依赖项:
npm install
  1. 复制示例配置:
cp config/targetprocess.example.json config/targetprocess.json
  1. 编辑 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 实例时:

  1. 使用特定查询:始终使用最具体的查询来限制结果集
  2. 限制结果大小:使用 take 参数来限制返回的结果数量
  3. 仅包含必要的数据:只包含你实际需要的相关数据
  4. 考虑分页:对于大型结果集,在你的应用程序中实现分页
  5. 批量操作:对于批量操作,考虑将请求分批处理以避免API过载

LLM 集成

此MCP服务器可以与支持模型上下文协议的各种AI助手一起使用:

有关配置和设置说明,请参阅llms-install.md

配置

可以通过环境变量或JSON配置文件来配置服务器。

配置文件格式

{
  "domain": "your-domain.tpondemand.com",
  "credentials": {
    "username": "your-username",
    "password": "your-password"
  }
}

许可证

MIT

相关 MCP 服务