mcpField
B
Bitbucket Server MCP

Bitbucket Server MCP

本地服务
github.com/kartikpatpatwingify版本控制073 周前更新

关于 Bitbucket Server MCP

Bitbucket Server MCP 通过 Bitbucket Server API 提供管理拉取请求的 MCP 工具和资源。它支持创建、审核和合并拉取请求,也可添加评论、获取差异并向分支推送文件。

主要功能

  1. 01创建和查看拉取请求
  2. 02合并或拒绝拉取请求
  3. 03添加拉取请求评论
  4. 04获取差异和审核记录
  5. 05一次提交推送多个文件

适用场景

  1. 01创建拉取请求并指定审核者
  2. 02通过差异和审核记录检查变更
  3. 03评论、合并或拒绝拉取请求
  4. 04向仓库分支提交多个文件

MCP 相关

将 Bitbucket Server API 操作作为 MCP 工具提供,用于管理拉取请求和推送文件,并支持指定项目及仓库。服务需要配置 Bitbucket URL 和身份验证信息。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"bitbucket-server-mcp-server-kartikpatpatwingify": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

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

安装包
npm@smithery/cli

工具

还没有获取到工具列表

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

详细介绍

Bitbucket Server MCP

用于管理 Bitbucket Server Pull Request 的 MCP(Model Context Protocol)服务。此服务提供工具和资源,可通过 MCP 协议与 Bitbucket Server API 交互。

smithery badge Bitbucket Server MCP server

要求

  • Node.js >= 16

安装

通过 Smithery 安装

通过 Smithery 为 Claude Desktop 自动安装 Bitbucket Server:

npx -y @smithery/cli install @garc33/bitbucket-server-mcp-server --client claude
手动安装
npm install

构建

npm run build

功能

此服务提供以下工具以集成 Bitbucket Server:

create_pull_request

创建新的 Pull Request。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • title(必需):PR 标题
  • description:PR 描述
  • sourceBranch(必需):源分支名称
  • targetBranch(必需):目标分支名称
  • reviewers:审阅者用户名数组
get_pull_request

获取特定 Pull Request 的详细信息。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
merge_pull_request

合并 Pull Request。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
  • message:合并提交消息
  • strategy:以下选项之一:
    • merge-commit(默认)
    • squash
    • fast-forward
decline_pull_request

拒绝 Pull Request。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
  • message:拒绝原因
add_comment

向 Pull Request 添加评论。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
  • text(必需):评论内容
  • parentId:用于回复的父评论 ID
get_diff

获取 Pull Request 的差异。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
  • contextLines:上下文行数(默认:10)
get_reviews

获取 Pull Request 的审阅历史记录,包括批准和审阅。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • prId(必需):Pull Request ID
push_files

将多个文件通过单次提交推送到仓库分支。

参数:

  • project:Bitbucket 项目密钥(若已设置 BITBUCKET_DEFAULT_PROJECT,则默认为该值)
  • repository:仓库 slug(若已设置 BITBUCKET_DEFAULT_REPOSITORY,则默认为该值)
  • branch(必需):要推送到的分支名称
  • message(必需):提交消息
  • files(必需):文件对象数组,每个对象包含:
    • path(必需):相对于仓库根目录的文件路径
    • content(必需):要推送到文件中的内容

依赖项

  • @modelcontextprotocol/sdk - MCP 协议实现的 SDK
  • axios - 用于 API 请求的 HTTP 客户端
  • winston - 日志记录框架

配置

服务器需要在 VSCode MCP 设置文件中进行配置。以下是示例配置:

{
  "mcpServers": {
    "bitbucket": {
      "command": "node",
      "args": ["/path/to/bitbucket-server/build/index.js"],
      "env": {
        "BITBUCKET_URL": "https://your-bitbucket-server.com",
        // Authentication (choose one):
        // Option 1: Personal Access Token
        "BITBUCKET_TOKEN": "your-access-token",
        // Option 2: Username/Password
        "BITBUCKET_USERNAME": "your-username",
        "BITBUCKET_PASSWORD": "your-password",
        // Optional: Default project
        "BITBUCKET_DEFAULT_PROJECT": "your-default-project",
        // Optional: Default repository
        "BITBUCKET_DEFAULT_REPOSITORY": "your-default-repository"
      }
    }
  }
}
环境变量
  • BITBUCKET_URL(必需):Bitbucket Server 实例的基础 URL
  • 身份验证(以下选项之一为必需):
    • BITBUCKET_TOKEN:个人访问令牌
    • BITBUCKET_USERNAME 和 BITBUCKET_PASSWORD:基本身份验证凭据
  • BITBUCKET_DEFAULT_PROJECT:未在工具调用中指定时使用的默认项目键
  • BITBUCKET_DEFAULT_REPOSITORY:未在工具调用中指定时使用的默认仓库标识

日志记录

服务器使用 Winston 将所有操作记录到 bitbucket.log,以便进行调试和监控。

评论

支持 Markdown

第一次接触 MCP?

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

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