TDX MCP服务器
A. 模型上下文协议(MCP) 包装的服务器 TeamDynamix(TDX)REST API,通过Claude Desktop、Claude Code和其他MCP客户端实现人工智能辅助的IT服务管理。
此服务器公开 41工具 穿过 9个域名 --票证、资产、CMDB、知识库、人员、项目、帐户、组和自定义属性——允许与TDX实例进行自然语言交互。
快速开始
macOS
- 双击
setup-mac.command - 出现提示时,输入您的BEID、Web服务密钥和应用程序ID
- 重新启动克劳德桌面
视窗
- 双击
setup-windows.bat - 出现提示时,输入您的BEID、Web服务密钥和应用程序ID
- 重新启动克劳德桌面
手动设置
npm install
npm run build添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上, %APPDATA%\Claude\claude_desktop_config.json 在Windows上):
{
"mcpServers": {
"tdx": {
"command": "node",
"args": ["/path/to/TDX-MCP/dist/index.js"],
"env": {
"TDX_BASE_URL": "https://yourorg.teamdynamix.com/TDWebApi/api",
"TDX_BEID": "your-beid-guid",
"TDX_WEB_SERVICES_KEY": "your-web-services-key-guid",
"TDX_APP_ID": "123"
}
}
}
}认证
此服务器使用TDX 管理员令牌身份验证 (POST /auth/loginadmin)使用BEID和Web服务密钥,而不是用户名/密码。这些是特定于API的服务帐户密钥,它们是:
- 不与SSO或任何用户的凭据绑定
- 生成于 TDAdmin>组织详细信息>API设置
- 可独立撤销,不影响用户帐户
- 任何具有“添加BE管理员”权限的管理员都可以访问
令牌在第一次工具调用时被延迟提取,并在23小时后自动刷新(24小时TDX到期前的1小时缓冲区)。
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
TDX_BASE_URL | 是 | TDX Web API基本URL(例如。 https://yourorg.teamdynamix.com/TDWebApi/api) |
TDX_BEID | 是 | 管理员来自TDAdmin |
TDX_WEB_SERVICES_KEY | 是 | TDAdmin提供的Web服务密钥 |
TDX_APP_ID | 是 | 默认TDX应用程序ID(整数) |
工具(41)
在应用程序中运行的所有工具都接受可选 appId 参数覆盖默认值 TDX_APP_ID.
门票(9工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-ticket-create | 职位 | /{appId}/tickets | 创建新票证 |
tdx-ticket-get | 得到 | /{appId}/tickets/{id} | 凭身份证买票 |
tdx-ticket-update | 职位 | /{appId}/tickets/{id} | 机票的完整更新 |
tdx-ticket-patch | 补丁 | /{appId}/tickets/{id} | 票的部分更新 |
tdx-ticket-search | 职位 | /{appId}/tickets/search | 使用过滤器搜索门票 |
tdx-ticket-feed-get | 得到 | /{appId}/tickets/{id}/feed | 获取门票评论/订阅源 |
tdx-ticket-feed-add | 职位 | /{appId}/tickets/{id}/feed | 在工单上添加评论 |
tdx-ticket-add-asset | 职位 | /{appId}/tickets/{id}/assets/{assetId} | 将资产链接到票证 |
tdx-ticket-add-contact | 职位 | /{appId}/tickets/{id}/contacts/{uid} | 在工单中添加联系人 |
资产(7个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-asset-create | 职位 | /{appId}/assets | 创建新资产 |
tdx-asset-get | 得到 | /{appId}/assets/{id} | 按ID获取资产 |
tdx-asset-update | 职位 | /{appId}/assets/{id} | 资产的完整更新 |
tdx-asset-patch | 补丁 | /{appId}/assets/{id} | 资产的部分更新 |
tdx-asset-delete | 删除 | /{appId}/assets/{id} | 删除资产 |
tdx-asset-search | 职位 | /{appId}/assets/search | 使用筛选器搜索资产 |
tdx-asset-feed-add | 职位 | /{appId}/assets/{id}/feed | 向资产添加评论 |
CMDB/配置项(7个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-cmdb-create | 职位 | /{appId}/cmdb | 创建新CI |
tdx-cmdb-get | 得到 | /{appId}/cmdb/{id} | 按ID获取CI |
tdx-cmdb-update | PUT | /{appId}/cmdb/{id} | CI的完整更新 |
tdx-cmdb-delete | 删除 | /{appId}/cmdb/{id} | 删除CI |
tdx-cmdb-search | 职位 | /{appId}/cmdb/search | 使用筛选器搜索CI |
tdx-cmdb-feed-add | 职位 | /{appId}/cmdb/{id}/feed | 向CI添加注释 |
tdx-cmdb-add-relationship | PUT | /{appId}/cmdb/{id}/relationships | 添加CI之间的关系 |
知识库(5个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-kb-create | 职位 | /{appId}/knowledgebase | 创建知识库文章 |
tdx-kb-get | 得到 | /{appId}/knowledgebase/{id} | 按ID获取知识库文章 |
tdx-kb-update | PUT | /{appId}/knowledgebase/{id} | 更新知识库文章 |
tdx-kb-delete | 删除 | /{appId}/knowledgebase/{id} | 删除知识库文章 |
tdx-kb-search | 职位 | /{appId}/knowledgebase/search | 搜索知识库文章 |
人员(4个工具)
这些工具不需要 appId.
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-people-get | 得到 | /people/{uid} | 通过UID获取人员 |
tdx-people-search | 职位 | /people/search | 使用筛选器搜索人员 |
tdx-people-lookup | 得到 | /people/lookup | 按姓名/电子邮件/用户名快速查找 |
tdx-people-update | 职位 | /people/{uid} | 更新一个人 |
项目(4个工具)
这些工具不需要 appId.
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-project-create | 职位 | /projects | 创建新项目 |
tdx-project-get | 得到 | /projects/{id} | 按ID获取项目 |
tdx-project-update | 职位 | /projects/{id} | 更新项目 |
tdx-project-search | 职位 | /projects/search | 使用筛选器搜索项目 |
账户(2个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-account-get | 得到 | /accounts/{id} | 通过ID获取帐户/部门 |
tdx-account-search | 职位 | /accounts/search | 搜索帐户/部门 |
组(2个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-group-get | 得到 | /groups/{id} | 按ID获取组 |
tdx-group-search | 职位 | /groups/search | 搜索组 |
自定义属性(1个工具)
| 工具 | 方法 | 端点 | 描述 |
|---|---|---|---|
tdx-attributes-get | 得到 | /attributes/custom | 获取组件类型的自定义属性定义 |
共同 componentId 价值观 tdx-attributes-get: 9 =门票, 27 =资产, 63 =CI, 39 =KB文章, 2 =项目。
示例用法
配置后,您可以在Claude Desktop或Claude Code中使用自然语言:
- “搜索分配给我的未结门票”
- “获取12345号票并向我显示评论”
- 查找john.doe@example.com在TDX”
- “在知识库中搜索VPN设置说明”
- “查找IT部门的所有资产”
- “为新软件请求创建票证”
TDX API文档
项目结构
TDX-MCP/
package.json
tsconfig.json
.env.example
setup-mac.command # macOS setup wizard
setup-windows.bat # Windows setup launcher
setup-windows.ps1 # Windows setup wizard
src/
index.ts # Entry point
config.ts # Environment variable loading
auth.ts # Admin token auth with auto-refresh
tdx-client.ts # Shared HTTP client
tools/
tickets.ts # 9 ticket tools
assets.ts # 7 asset tools
cmdb.ts # 7 CMDB/CI tools
kb.ts # 5 knowledge base tools
people.ts # 4 people tools
projects.ts # 4 project tools
accounts.ts # 2 account tools
groups.ts # 2 group tools
attributes.ts # 1 custom attributes tool______________________________________________________________________
