项目简介
Atlassian MCP 服务端是一个基于 Model Context Protocol (MCP) 实现的后端应用,旨在帮助大型语言模型(LLM)客户端(如 Amazon Q Developer)以标准化、安全和可扩展的方式访问 Atlassian 生态系统的数据和功能。它支持 Atlassian Cloud 和 Data Center 部署,将复杂的 Atlassian API 抽象为 LLM 可直接调用的资源和工具。
主要功能点
- Jira 集成: 管理 Jira 事务、评论、状态转换、附件、用户、工作日志、标签、链接问题、高级搜索、优先级管理、敏捷面板和用户权限等。
- Confluence 集成: 管理 Confluence 页面、空间、评论、附件、搜索、用户、标签、页面历史、权限、页面复制、用户内容和版本恢复等。
- Bitbucket 集成: 管理 Bitbucket 仓库、拉取请求(Pull Requests)、提交、分支、差异比较、审阅者、分支管理、PR 活动、构建状态和 Webhooks 等。
- 双平台支持: 兼容 Atlassian Cloud 和 Data Center 部署,通过环境变量灵活切换。
- 能力声明: 以标准 MCP 格式声明其可用的资源(Resources)和工具(Tools),供 LLM 客户端发现和利用。
- 日志与监控: 支持结构化 JSON 日志和 CloudWatch 自定义指标,便于部署在 AWS Lambda 后进行监控。
安装步骤
- Python 环境: 确保您的系统安装了 Python 3.11 及以上版本。
- 克隆仓库:
git clone https://github.com/anthonyd23/atlassian_mcp.git cd atlassian_mcp - 安装依赖:
pip install -r mcp_server/requirements.txt
服务器配置
MCP 客户端需要知道如何启动并与 MCP 服务器通信。以下是 Amazon Q Developer 客户端的一个配置示例,展示了如何配置此 Atlassian MCP 服务器。请注意,这里的 'command' 和 'args' 指向 'mcp_server/main.py' 文件,负责启动服务器。'env' 部分包含连接 Atlassian 所需的凭据。
{ "mcpServers": { "atlassian-mcp": { "command": "python", "args": ["/absolute/path/to/mcp_server/main.py"], "env": { "ATLASSIAN_BASE_URL": "https://yourcompany.atlassian.net", // 你的 Atlassian Cloud 基础 URL "ATLASSIAN_USERNAME": "[email protected]", // 你的 Atlassian 用户名(通常是邮箱) "ATLASSIAN_API_TOKEN": "your-token" // 你的 Atlassian API Token // 对于 Bitbucket Cloud,如果需要集成 Bitbucket,除了上述 ATLASSIAN_USERNAME,还需要设置 // "BITBUCKET_WORKSPACE": "your-workspace", // 你的 Bitbucket 工作区名称 // "BITBUCKET_API_TOKEN": "your-bitbucket-app-password" // Bitbucket 应用程序密码 // 对于 Atlassian Data Center 部署,你需要为每个服务单独配置基础 URL 和个人访问令牌 (PAT),例如: // "JIRA_BASE_URL": "https://jira.company.com", // "JIRA_PAT_TOKEN": "your-jira-pat", // "CONFLUENCE_BASE_URL": "https://wiki.company.com", // "CONFLUENCE_PAT_TOKEN": "your-confluence-pat", // "BITBUCKET_BASE_URL": "https://git.company.com", // "BITBUCKET_PAT_TOKEN": "your-bitbucket-pat", // "BITBUCKET_PROJECT": "PROJECT_KEY" // Bitbucket Data Center 项目密钥 } } } }
配置说明:
- 'ATLASSIAN_BASE_URL'、'ATLASSIAN_USERNAME'、'ATLASSIAN_API_TOKEN' 用于 Atlassian Cloud 的 Jira 和 Confluence 服务。
- 'BITBUCKET_WORKSPACE' 和 'BITBUCKET_API_TOKEN' 用于 Bitbucket Cloud 服务。
- '_BASE_URL' 和 '_PAT_TOKEN' (例如 'JIRA_BASE_URL' 和 'JIRA_PAT_TOKEN') 是 Atlassian Data Center 服务的配置,每个服务独立设置。'BITBUCKET_PROJECT' 也是 Data Center 特定配置。
基本使用方法
配置完成后,MCP 客户端将能够自动发现并调用此服务器提供的 Atlassian 相关工具和资源。例如,LLM 可以通过调用 'search_jira' 工具来查询 Jira 问题,或通过 'get_page' 工具获取 Confluence 页面内容。具体交互方式取决于 LLM 客户端的实现。
本地开发与测试:
- 在运行服务器之前,请设置必要的环境变量(如上述配置信息)。
- 运行服务器:
服务器将通过标准输入/输出(Stdio)等待 MCP 客户端的请求。python mcp_server/main.py
AWS Lambda 部署: 项目提供了 AWS SAM 模板,可以方便地部署为 Lambda 函数并通过 API Gateway 暴露。
sam build sam deploy --guided
部署后,你可以配置 LLM 客户端通过 API Gateway 调用此 Lambda 函数。
信息
分类
开发者工具