M

MatanYemini

@MatanYemini/bitbucket-mcp
0 Stars 294 次浏览 MatanYemini 更新于 2026-08-23
该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Bitbucket MCP

一个用于与Bitbucket Cloud和Server API集成的模型上下文协议(MCP)服务器。此MCP服务器使像Cursor这样的AI助手能够与您的Bitbucket仓库、拉取请求和其他资源进行交互。

安全第一

这是一个安全且负责任的包——不使用DELETE操作,因此没有数据丢失的风险。
每个拉取请求都会通过CodeQL进行分析,以确保代码的安全性。

CodeQL
GitHub Repository

npm version

概览

查看官方npm包
该服务器实现了模型上下文协议标准,为AI助手提供访问Bitbucket数据和操作的能力。它包括以下工具:

  • 列出和检索仓库
  • 获取仓库详情
  • 获取拉取请求
  • 等等...

安装

使用NPX(推荐)

使用NPX是最简单的方式来运行这个MCP服务器,这允许您无需全局安装即可运行它:

bash

通过环境变量运行

BITBUCKET_URL="https://bitbucket.org/your-workspace"
BITBUCKET_USERNAME="your-username"
BITBUCKET_PASSWORD="your-app-password"
npx -y bitbucket-mcp@latest

手动安装

或者,您可以全局安装或作为项目的一部分安装:

bash

全局安装

npm install -g bitbucket-mcp

或者在您的项目中安装

npm install bitbucket-mcp

然后这样运行它:

bash

如果是全局安装

BITBUCKET_URL="https://bitbucket.org/your-workspace"
BITBUCKET_USERNAME="your-username"
BITBUCKET_PASSWORD="your-app-password"
bitbucket-mcp

如果是在项目中安装

BITBUCKET_URL="https://bitbucket.org/your-workspace"
BITBUCKET_USERNAME="your-username"
BITBUCKET_PASSWORD="your-app-password"
npx bitbucket-mcp

配置

环境变量

使用以下环境变量配置服务器:

变量 描述 是否必需
BITBUCKET_URL Bitbucket基础URL(例如:"https://bitbucket.org/your-workspace")
BITBUCKET_USERNAME 您的Bitbucket用户名 是*
BITBUCKET_PASSWORD 您的Bitbucket应用密码 是*
BITBUCKET_TOKEN 您的Bitbucket访问令牌(可替代用户名/密码)
BITBUCKET_WORKSPACE 当未指定时使用的默认工作区
  • 必须提供BITBUCKET_TOKEN或同时提供BITBUCKET_USERNAMEBITBUCKET_PASSWORD

创建Bitbucket应用密码

  1. 登录到您的Bitbucket账户
  2. 转到个人设置 > 应用密码
  3. 创建一个新的应用密码,并赋予以下权限:
    • 仓库:读取
    • 拉取请求:读取、写入
  4. 复制生成的密码并将其用作BITBUCKET_PASSWORD环境变量

与Cursor集成

要将此MCP服务器与Cursor集成,请执行以下步骤:

  1. 打开Cursor
  2. 转到设置 > 扩展
  3. 单击“模型上下文协议”
  4. 添加新的MCP配置:

json
"bitbucket": {
"command": "npx",
"env": {
"BITBUCKET_URL": "https://bitbucket.org/your-workspace",
"BITBUCKET_USERNAME": "your-username",
"BITBUCKET_PASSWORD": "your-app-password"
},
"args": ["-y", "bitbucket-mcp@latest"]
}5. 保存配置
6. 在 Cursor 中使用 "/bitbucket" 命令访问 Bitbucket 仓库和拉取请求

使用本地构建与 Cursor

如果您正在本地开发并希望测试您的更改:

json
"bitbucket-local": {
"command": "node",
"env": {
"BITBUCKET_URL": "https://bitbucket.org/your-workspace",
"BITBUCKET_USERNAME": "your-username",
"BITBUCKET_PASSWORD": "your-app-password"
},
"args": ["/path/to/your/local/bitbucket-mcp/dist/index.js"]
}

可用工具

此 MCP 服务器提供了与 Bitbucket 仓库和拉取请求交互的工具。以下是一份全面的操作列表:

仓库操作

listRepositories

列出工作区中的仓库。

参数:

  • workspace(可选):Bitbucket 工作区名称
  • limit(可选):要返回的最大仓库数量

getRepository

获取特定仓库的详细信息。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug

拉取请求操作

getPullRequests

获取仓库的拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • state(可选):拉取请求状态(OPENMERGEDDECLINEDSUPERSEDED
  • limit(可选):要返回的最大拉取请求数量

createPullRequest

创建新的拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • title:拉取请求标题
  • description:拉取请求描述
  • sourceBranch:源分支名称
  • targetBranch:目标分支名称
  • reviewers(可选):审查者用户名列表

getPullRequest

获取特定拉取请求的详细信息。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

updatePullRequest

更新拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID
  • 各种可选更新参数(标题、描述等)

getPullRequestActivity

获取拉取请求的活动日志。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

approvePullRequest

批准拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

unapprovePullRequest

从拉取请求中移除批准。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

declinePullRequest

拒绝拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID
  • message(可选):拒绝原因

mergePullRequest

合并拉取请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID
  • message(可选):合并提交消息
  • strategy(可选):合并策略(merge-commitsquashfast-forward

requestChanges

在拉取请求上请求更改。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

removeChangeRequest

从拉取请求中移除更改请求。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

拉取请求评论操作

getPullRequestComments

列出拉取请求上的评论。

参数:

  • workspace:Bitbucket 工作区名称
  • repo_slug:仓库 slug
  • pull_request_id:拉取请求 ID

createPullRequestComment

在拉取请求上创建评论。

参数:- workspace: Bitbucket 工作区名称

  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • content: 评论内容
  • inline (可选): 行内评论信息

getPullRequestComment

获取特定拉取请求上的评论。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • comment_id: 评论 ID

updatePullRequestComment

更新拉取请求上的评论。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • comment_id: 评论 ID
  • content: 更新后的评论内容

deletePullRequestComment

删除拉取请求上的评论。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • comment_id: 评论 ID

resolveComment

解决拉取请求上的评论线程。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • comment_id: 评论 ID

reopenComment

重新打开已解决的拉取请求上的评论线程。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • comment_id: 评论 ID

拉取请求差异操作

getPullRequestDiff

获取拉取请求的差异。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

getPullRequestDiffStat

获取拉取请求的差异统计信息。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

getPullRequestPatch

获取拉取请求的补丁。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

拉取请求任务操作

getPullRequestTasks

列出拉取请求上的任务。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

createPullRequestTask

在拉取请求上创建任务。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • content: 任务内容
  • comment (可选): 与任务关联的评论 ID
  • pending (可选): 任务是否待处理

getPullRequestTask

获取拉取请求上的特定任务。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • task_id: 任务 ID

updatePullRequestTask

更新拉取请求上的任务。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • task_id: 任务 ID
  • content (可选): 更新后的任务内容
  • state (可选): 更新后的任务状态

deletePullRequestTask

删除拉取请求上的任务。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID
  • task_id: 任务 ID

其他拉取请求操作

getPullRequestCommits

列出拉取请求上的提交。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

getPullRequestStatuses

列出拉取请求的提交状态。

参数:

  • workspace: Bitbucket 工作区名称
  • repo_slug: 仓库标识符
  • pull_request_id: 拉取请求 ID

开发

前提条件

  • Node.js 18 或更高版本
  • npm 或 yarn

设置

bash

克隆仓库

git clone https://github.com/MatanYemini/bitbucket-mcp.git
cd bitbucket-mcp

安装依赖

npm install

构建项目

npm run build

以开发模式运行

npm run dev

许可证本项目采用MIT许可证 - 详情请参见LICENSE文件。

链接

相关 MCP 服务