使用说明
比特桶服务器MCP
MCP(模型上下文协议)服务器,用于Bitbucket服务器拉取请求管理。该服务器提供工具和资源,通过MCP协议与Bitbucket服务器API进行交互。
需求
- Node.js>=16
安装
通过Smithery安装
通过以下方式自动安装Claude Desktop的Bitbucket服务器 史密瑟里:
npx -y @smithery/cli install @garc33/bitbucket-server-mcp-server --client claude
手动安装
npm install
构建
npm run build
特性
服务器为Bitbucket服务器集成提供了以下工具:
create_pull_request
创建新的pull请求。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)title(必填):PR标题description:PR描述sourceBranch(必填):源分支名称targetBranch(必填):目标分支机构名称reviewers:审阅者用户名数组
get_pull_request
检索特定拉取请求的详细信息。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求ID
merge_pull_request
合并拉取请求。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求IDmessage:合并提交消息strategy:其中之一:merge-commit(默认)squashfast-forward
decline_pull_request
拒绝拉取请求。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求IDmessage:下降原因
add_comment
向pull请求添加注释。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求IDtext(必填):评论文本parentId:答复的父评论ID
get_diff
检索拉取请求的差异。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求IDcontextLines:上下文行数(默认值:10)
get_reviews
获取拉取请求的审核历史,包括批准和审核。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)prId(必填):拉取请求ID
push_files
将单个提交中的多个文件推送到存储库分支。
参数:
project:Bitbucket项目密钥(如果设置,默认为Bitbucket_DEFAULT_project)repository:存储库slug(如果设置,默认为BITBUCKET_DEFAULT_Repository)branch(必填):要推送的分支机构名称message(必填):提交消息files(必填):文件对象数组,每个对象包含:path(必需):相对于存储库根的文件路径content(必填):要推送到文件的内容
依赖项
@modelcontextprotocol/sdk-用于MCP协议实现的SDKaxios-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服务器实例的基本URL- 身份验证(需要以下之一):
BITBUCKET_TOKEN:个人访问令牌BITBUCKET_USERNAME和BITBUCKET_PASSWORD:基本身份验证凭据
BITBUCKET_DEFAULT_PROJECT:在工具调用中未指定时使用的默认项目密钥BITBUCKET_DEFAULT_REPOSITORY:在工具调用中未指定时使用的默认存储库slug
日志记录
服务器将所有操作记录到 bitbucket.log 使用Winston进行调试和监控。