使用说明
MCP Atlassian(可翻译为):Atlassian的MCP(或“Atlassian MCP认证”)
适用于Atlassian云产品(Confluence和Jira)的模型上下文协议(MCP)服务器。此集成专为Atlassian云实例设计,不支持Atlassian服务器或数据中心部署。
功能演示
资源
confluence://{space_key}访问Confluence空间和页面confluence://{space_key}/pages/{title}访问特定的Confluence页面jira://{project_key}访问Jira项目及其问题jira://{project_key}/issues/{issue_key}访问特定的Jira问题
工具
Confluence 工具
-
confluence_search- 使用CQL搜索Confluence内容
- 输入:
query(字符串):CQL 查询字符串(例如 'type=page AND space=DEV')limit(数字,可选):结果限制(1-50,默认:10)
- 返回:包含页面ID、标题、空间、URL、最后修改时间、类型和摘要的搜索结果数组
-
confluence_get_page- 通过ID获取特定Confluence页面的内容
- 输入:
page_id(字符串):Confluence 页面 IDinclude_metadata(布尔值,可选):是否包含页面元数据(默认:true)
- 返回:页面内容和可选的元数据
-
confluence_get_page_by_title- 通过空间键和标题获取Confluence页面的内容
- 输入:
space_key(字符串):Confluence 空间密钥title(字符串):页面标题
- 返回:页面内容和元数据
-
confluence_get_comments- 获取特定Confluence页面的评论
- 输入:
page_id(字符串): Confluence 页面 ID
- 返回:包含作者、创建日期和内容的评论数组
-
confluence_list_spaces- 列出所有可用的Confluence空间
- 输入:
limit(数字,可选):返回的最大空格数(1-100,默认:25)
- 返回:包含键、名称和描述的空间数组
-
confluence_get_space_pages- 从特定的Confluence空间获取所有页面
- 输入:
space_key(字符串):Confluence 空间密钥limit(数字,可选):要返回的最大页面数(1-100,默认:25)
- 返回值:包含页面ID、标题、URL和版本的页面数组
-
confluence_get_page_children- 获取特定Confluence页面的子页面
- 输入:
page_id(字符串):父页面IDlimit(数字,可选):要返回的子节点最大数量(1-100,默认:25)
- 返回:包含页面ID、标题、URL和父页面ID的子页面数组
-
confluence_create_page- 创建一个新的Confluence页面
- 输入:
space_key(字符串):将创建页面的空间键title(字符串):页面标题body(字符串):以Confluence存储格式表示的页面内容parent_id(字符串,可选):父页面ID
- 返回:创建的页面内容和元数据
-
confluence_update_page- 更新现有的Confluence页面
- 输入:
page_id(字符串):要更新的页面IDtitle(字符串):新页面标题body(字符串):以Confluence存储格式表示的新页面内容version(数字):当前页面版本号
- 返回:更新后的页面内容和元数据
Jira 工具
-
jira_get_issue- 获取特定Jira问题的详细信息
- 输入:
issue_key(字符串):Jira 问题密钥(例如,'PROJ-123')expand(字符串,可选):要展开的字段
- 返回:问题详情,包括内容和元数据
-
jira_search- 使用JQL搜索Jira问题
- 输入:
jql(字符串): JQL 查询字符串fields(字符串,可选):逗号分隔的字段(默认:"*all")limit(数字,可选):结果限制(1-50,默认:10)
- 返回:包含元数据的匹配问题数组
-
jira_get_project_issues- 获取特定Jira项目的所有问题
- 输入:
project_key(字符串): 项目密钥limit(数字,可选):结果限制(1-50,默认:10)
- 返回:包含元数据的项目问题数组
-
jira_get_projects- 获取所有可访问的Jira项目
- 返回:认证用户可访问的所有项目的数组
-
jira_get_issue_comments- 获取特定Jira问题的评论
- 输入:
issue_key(字符串):Jira 问题密钥(例如,'PROJ-123')
- 返回:包含作者、创建日期和内容的评论数组
-
jira_get_transitions- 获取问题的可用状态转换
- 输入:
issue_key(字符串):Jira 问题密钥(例如,'PROJ-123')
- 返回:包含可用转换的数组,每个转换都有id和名称
-
jira_get_board_issues- 从特定的敏捷看板获取问题
- 输入:
board_id(数字):板卡IDlimit(数字,可选):最大结果数量(1-50,默认:50)
- 返回:包含问题密钥、标题、类型、状态和链接的板块问题数组
-
jira_create_issue- 创建一个新的Jira问题
- 输入:
project_key(字符串):项目密钥summary(字符串):问题摘要/标题issue_type(字符串):问题类型(例如,'Bug'(缺陷)、'Task'(任务)、'Story'(故事))description(字符串,可选):问题描述priority(字符串,可选):优先级名称assignee(字符串,可选):受让人账户IDlabels(数组,可选):标签字符串的数组
- 返回:创建的问题内容和元数据
-
jira_update_issue- 更新现有的Jira问题
- 输入:
issue_key(字符串): 要更新的问题密钥summary(字符串,可选):新的摘要description(字符串,可选):新描述priority(字符串,可选):新的优先级assignee(字符串,可选):新的指定人账户IDlabels(数组,可选):新的标签
- 返回:更新后的议题内容和元数据
-
jira_add_comment- 在Jira问题中添加评论
- 输入:
issue_key(字符串):问题密钥comment(字符串):评论文本
- 返回:添加了评论详情
-
jira_transition_issue- 将Jira问题过渡到新状态
- 输入:
issue_key(字符串):问题密钥transition_id(字符串): 转换ID
- 返回值:转换结果
安装
先决条件
- Python 3.10 或更高版本
- 紫外线 (建议使用)或 pip
使用紫外线(推荐)
-
克隆仓库:
git clone https://github.com/nanyang12138/mcp-atlassian.git cd mcp-atlassian -
使用uv进行安装:
uv pip install -e .
使用 pip
-
克隆仓库:
git clone https://github.com/nanyang12138/mcp-atlassian.git cd mcp-atlassian -
创建虚拟环境:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate -
安装依赖项:
pip install -e .
配置
MCP Atlassian 集成支持使用 Confluence、Jira 或两者同时使用。您只需为想要使用的服务提供环境变量。
与Claude桌面版的使用
-
从以下网址获取API令牌:https://id.atlassian.com/manage-profile/security/api-tokens
-
添加到您的
claude_desktop_config.json仅提供您所需的服务:
仅适用于Confluence:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-atlassian",
"run",
"mcp-atlassian"
],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token"
}
}
}
}
仅适用于Jira:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-atlassian",
"run",
"mcp-atlassian"
],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
对于这两种服务:
{
"mcpServers": {
"mcp-atlassian": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-atlassian",
"run",
"mcp-atlassian"
],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
备选方案:直接使用 Python(如果不使用 uv 的话):
{
"mcpServers": {
"mcp-atlassian": {
"command": "python",
"args": ["-m", "mcp_atlassian.server"],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
与Cline一起使用
在Cline中添加到您的MCP设置中。有两种方法:
方法1:直接使用Python(推荐用于开发)
{
"mcpServers": {
"mcp-atlassian": {
"command": "/path/to/mcp-atlassian/.venv/bin/python",
"args": [
"-m",
"mcp_atlassian.server"
],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
方法2:使用入口点(需要安装包)
{
"mcpServers": {
"mcp-atlassian": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-atlassian",
"run",
"mcp-atlassian"
],
"env": {
"CONFLUENCE_URL": "https://your-domain.atlassian.net/wiki",
"CONFLUENCE_USERNAME": "your.email@domain.com",
"CONFLUENCE_API_TOKEN": "your_api_token",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_USERNAME": "your.email@domain.com",
"JIRA_API_TOKEN": "your_api_token"
}
}
}
}
调试
您可以使用MCP检查器来调试服务器:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-atlassian run mcp-atlassian
或者如果直接使用Python:
npx @modelcontextprotocol/inspector python -m mcp_atlassian.server
使用以下命令查看日志:
- macOS(发音为 /ˈmækɒs/):
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log - Windows检查
%APPDATA%\Claude\logs\ - Linux检查
~/.config/Claude/logs/
发展
运行测试
uv run pytest
代码格式化
uv run ruff format .
类型检查
uv run mypy src/
安全
- 绝不分享API令牌
- 确保.env文件的安全性和私密性
- 使用具有最小必要权限的API令牌
- 定期更换您的API令牌
- 请看 SECURITY.md 翻译为中文是:“安全指南/安全声明文件” 以最佳实践为准
依赖项
atlassian-python-api>=3.41.16Atlassian API客户端beautifulsoup4>=4.12.3- HTML解析httpx>=0.28.0- HTTP客户端mcp>=1.0.0- 模型上下文协议SDKpython-dotenv>=1.0.1- 环境变量管理markdownify>=0.11.6- 将HTML转换为Markdown
许可证
根据MIT许可协议授权 - 详见 许可证 文件。这不是 Atlassian 的官方产品。
贡献
欢迎贡献!请随时提交拉取请求。
注:这是一个分支(或衍生版本)的 原始的MCP-Atlassian仓库.