使用说明
Jira MCP服务器
仅后端服务,允许AI客户端通过 安全MCP端点。该服务将Jira响应标准化,并保留输出 并记录每个Jira交互以供审计。
主要特点
- 安全OAuth客户端凭据访问(承载令牌)。
- 用于AI的确定性、规范化Jira问题输出。
- 对请求、响应和错误进行审核日志记录。
- 具有稳定错误响应的只读Jira访问。
技术栈
- Node.js+TypeScript
- NestJS
- 类型ORM+MySQL
- JWT验证工作
先决条件
- Node.js 20 LTS
- MySQL 8+
- 具有目标项目只读访问权限的Jira帐户
- OAuth客户端凭据(客户端id/机密)和JWKS URL
入门指南
- 安装依赖项。
- 创建本地
.env包含所需变量的文件。 - 以开发模式启动服务。
npm install
npm run start:dev
配置(.env)
所需变量:
JIRA_BASE_URLJIRA_EMAILJIRA_API_TOKENJIRA_TIMEOUT_MSJIRA_RETRY_COUNTJIRA_MAX_CONCURRENTJIRA_MIN_TIME_MSOAUTH_JWKS_URLOAUTH_CLIENT_IDOAUTH_CLIENT_SECRETDB_HOSTDB_PORTDB_NAMEDB_USERDB_PASSWORDAUDIT_RETENTION_DAYSAUDIT_RETENTION_INTERVAL_MINUTES
可选变量:
OAUTH_AUDIENCEOAUTH_ISSUERPORT
API
检索Jira问题
POST /mcp/jira/issue
标题:
Authorization: Bearer <access_token>
主体:
{
"key": "ABC-123"
}
笔记:
- 响应是一个标准化的问题有效载荷。
- 错误是稳定的,不会暴露Jira凭据。
脚本
npm run build-将TypeScript编译为dist/npm run start-运行编译输出npm run start:dev-使用ts节点运行npm run lint-lint TypeScriptnpm run format-格式化源文件
项目笔记
- 启动时会自动运行迁移,以创建缺少的审核表。
- 此项目仅是后端,没有UI。
