mcpField
M
MCP Request-tracker

MCP Request-tracker

本地服务
github.com/crunchtools生产力03 天前更新

关于 MCP Request-tracker

面向使用 Request Tracker(RT)处理支持请求和工作队列的团队,提供票务管理 MCP 服务。它涵盖工单操作、工时记录和清单工作流,并采取凭据保护措施。

主要功能

  1. 01搜索和查看工单
  2. 02创建、更新和解决工单
  3. 03记录工时
  4. 04自动执行清单工作流
  5. 05清理错误消息中的凭据

适用场景

  1. 01使用 RT 查询语法查找工单
  2. 02分配负责人并更改工单状态
  3. 03记录工作耗时
  4. 04完成每周清单工单

MCP 相关

向 MCP 客户端提供 Request Tracker 工单搜索、更新、工时记录、沟通和工作流工具。RT 连接信息通过环境变量配置。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"crunchtools-request-tracker": {
"command": "uvx",
"args": [
"mcp-request-tracker-crunchtools"
]
}
}
}
启动命令uvx mcp-request-tracker-crunchtools

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypimcp-request-tracker-crunchtools0.1.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP Request Tracker CrunchTools

用于 Request Tracker(RT)工单管理的安全 MCP(Model Context Protocol)服务。

功能

  • 安全凭据处理:密码使用 SecretStr 存储,绝不记录到日志中
  • 完整的工单管理:搜索、查看、创建、更新和解决工单
  • 时间跟踪:跟踪工单的处理时长
  • 工作流自动化:提供清单完成等预置工作流
  • 跨平台:支持 Linux、macOS 和 Windows

安装

选项 1:使用 uvx(推荐)
uvx mcp-request-tracker-crunchtools
选项 2:使用 pip
pip install mcp-request-tracker-crunchtools
选项 3:使用容器
podman run -e RT_URL=... -e RT_USER=... -e RT_PASS=... quay.io/crunchtools/mcp-request-tracker

配置

设置以下环境变量:

变量必需描述
RT_URL是RT 服务的基准 URL
RT_USER是RT 用户名
RT_PASS是RT 密码
RT_HTTP_USER否HTTP Basic Auth 用户名
RT_HTTP_PASS否HTTP Basic Auth 密码

在 Claude Code 中使用

使用 uvx
claude mcp add mcp-request-tracker-crunchtools \
    --env RT_URL=https://rt.example.com \
    --env RT_USER=your_username \
    --env RT_PASS=your_password \
    -- uvx mcp-request-tracker-crunchtools
使用容器
claude mcp add mcp-request-tracker-crunchtools \
    --env RT_URL=https://rt.example.com \
    --env RT_USER=your_username \
    --env RT_PASS=your_password \
    -- podman run -i --rm -e RT_URL -e RT_USER -e RT_PASS quay.io/crunchtools/mcp-request-tracker

可用工具

搜索和查看
  • search_tickets - 使用 RT 查询语法搜索工单
  • get_ticket - 获取工单详情
  • get_ticket_history - 获取工单历史记录/变更日志
  • get_my_open_tickets - 获取某位用户的未关闭工单
  • get_new_tickets - 获取新建/未分配的工单
更新工单
  • set_ticket_owner - 设置工单负责人
  • set_ticket_status - 设置工单状态
  • open_ticket - 打开工单
  • resolve_ticket - 解决/关闭工单
  • take_ticket - 接手工单并打开
时间跟踪
  • set_time_worked - 设置已处理的总时长
  • add_time_worked - 添加处理时长
沟通
  • add_ticket_comment - 添加私有备注(请求者不可见)
  • reply_to_ticket - 添加往来消息(请求者可见)
创建
  • create_ticket - 创建新工单
工作流
  • complete_weekly_checklist - 填写每周清单工单及结果

RT 查询语法示例

Status = 'new'
Status = 'open' AND Owner = 'scott'
Subject LIKE 'checklist'
Queue = 'Professional'
Created > '2025-01-01'
Owner = 'Nobody'

安全性

本服务在设计时充分考虑了安全性:

  • SecretStr:使用 Pydantic 的 SecretStr 存储密码,防止意外记录到日志中
  • 错误信息清理:从所有错误信息中清除凭据
  • 不访问文件系统:服务绝不读取或写入文件
  • 不执行 Shell 命令:不使用子进程或 Shell 命令
  • 精简依赖:仅使用必要的软件包,以缩小攻击面
  • 自动 CVE 扫描:通过 GitHub Actions 每周执行安全扫描
  • 容器安全:基于 Hummingbird 镜像构建,最大限度减少 CVE 数量

完整的安全设计文档请参阅 SECURITY.md。

开发

# Clone the repository
git clone https://github.com/crunchtools/mcp-request-tracker.git
cd mcp-request-tracker

# Install dependencies
uv sync --all-extras

# Run tests
uv run pytest

# Lint
uv run ruff check src tests

# Type check
uv run mypy src

许可证

本项目采用 GNU Affero General Public License v3.0(AGPL-3.0)授权。 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。