Bitbucket企业MCP服务器作为Forge应用程序(BETA)
  
A. 模型上下文协议 (MCP)服务器在Atlassian基础设施上本地运行,具有管理控制、审计日志和OAuth。
AI编码助手(如Claude Code)通过Forge web触发器通过流式HTTP传输连接,使用由Bitbucket支持的具有PKCE身份验证的OAuth 2.0。
特性
安全:
- 审计日志
- 只读模式
- 工具白名单
工具:
- 仓库 --在工作区中列出、搜索和浏览存储库
- 拉取请求 --列出、查看、创建、批准、合并PR;查看差异和评论
- 管道 --列出管道运行、查看步骤日志、触发器运行
- 来源 --浏览文件和目录,读取文件内容
- 分支 --列出和搜索分支
安装指南
看 设置.md 有关详细的安装和配置说明。
工具名称
仓库
| 工具名称 | 描述 |
|---|---|
list_repositories | 使用过滤/排序功能列出工作区中的存储库 |
get_repository | 获取特定存储库的详细信息 |
拉取请求
| 工具名称 | 描述 |
|---|---|
list_pull_requests | 使用可选的状态筛选在存储库中列出PR |
list_workspace_pull_requests | 列出工作区中所有存储库的PR |
get_pull_request | 获取包括提交在内的详细公关信息 |
create_pull_request | 创建新的pull请求 |
get_pull_request_diff | 获取PR的差异内容 |
list_pull_request_comments | 列出PR上的评论(包括内联) |
create_pull_request_comment | 在PR上创建一般或内联评论 |
approve_pull_request | 批准拉取请求 |
unapprove_pull_request | 从PR中删除批准 |
merge_pull_request | 将PR与可配置策略合并 |
管道
| 工具名称 | 描述 |
|---|---|
list_pipelines | 列表管道在存储库中运行 |
list_workspace_pipelines | 列出所有存储库中的管道 |
list_pipeline_steps | 列出管道运行的步骤 |
get_pipeline_step_log | 获取管道步骤的日志 |
trigger_pipeline | 在分支上触发自定义管道 |
来源和分支机构
| 工具名称 | 描述 |
|---|---|
get_file_content | 读取特定引用处的文件内容(分支/标签/提交) |
list_directory | 列出路径中的文件和目录 |
list_branches | 使用可选筛选列出存储库中的分支 |
搜索
| 工具名称 | 描述 |
|---|---|
search_code | 在整个工作区的存储库中搜索代码 |
建筑
Claude Code ──HTTP POST──▶ Forge Web Trigger ──▶ MCP Handler ──▶ Bitbucket REST API
│
OAuth 2.0 (Bitbucket)
Sessions (Forge KVS)- 运输: 通过Forge web触发器实现流式HTTP(动态响应)
- 认证: OAuth 2.0与PKCE——用户通过Bitbucket进行身份验证,令牌存储在Forge KVS中
- 会议: KVS支持30分钟TTL
发展
pnpm install # install dependencies
pnpm test # run tests (vitest)
forge tunnel # local dev with hot-reload tunnel
forge deploy # deploy to Forge
forge install --upgrade # apply manifest changes (new scopes, egress URLs)文件结构
src/
admin/ Admin panel resolver and validation (OAuth config management)
audit/ Audit logging (fire-and-forget tool usage tracking)
bitbucket/ Bitbucket API client wrapper
db/ Forge SQL database service
kvs/ Forge KVS service wrapper
mcp/ MCP protocol layer (handler, auth, sessions, protocol helpers)
oauth/ OAuth 2.0 flow (metadata, registration, authorize, callback, token)
posthog/ PostHog analytics client
tools/ Tool implementations (repos, PRs, pipelines, source, branches)
utils/ Shared utilities and validation
bin/ Development scripts (deploy-dev, install-dev)
test/ Tests (vitest)
manifest.yml Forge app manifest文件引用
主入口
src/index.ts--主要入口点,导出Forge web触发器处理程序
MCP协议(src/mcp/)
src/mcp/handler.ts--主MCP请求处理程序(JSON-RPC路由、工具执行)src/mcp/session.ts--通过KVS进行会话管理(30分钟TTL)src/mcp/auth.ts--OAuth令牌提取和验证src/mcp/protocol.ts--JSON-RPC帮助程序和HTTP响应构建src/mcp/errors.ts--JSON-RPC 2.0错误代码常量src/mcp/types.ts--协议类型定义src/mcp/resources.ts--MCP资源注册
OAuth 2.0(src/oauth/)
src/oauth/router.ts--OAuth端点请求路由器src/oauth/handlers.ts--OAuth端点实现(元数据、注册、授权、回调、令牌)src/oauth/config.ts--OAuth配置和实用程序(端点、作用域、KVS密钥)src/oauth/tokens.ts--令牌生成、验证和刷新逻辑src/oauth/clients.ts--动态客户端注册(RFC 7591)src/oauth/atlassian.ts--Bitbucket OAuth集成(授权、令牌交换、用户查找)src/oauth/types.ts--OAuth类型定义src/oauth/pkce.ts--PKCE验证(RFC 7636)
工具(src/tools/)
src/tools/index.ts--重新出口所有工具,方便进口src/tools/registry.ts--工具注册表、执行调度器和动态键/标签生成src/tools/types.ts--工具上下文类型和结果助手
存储库/
list-repositories.ts--使用过滤/排序功能列出工作区中的存储库get-repository.ts--获取详细的存储库信息
pull请求/
list-pull-requests.ts--使用可选的状态筛选在存储库中列出PRlist-workspace-pull-requests.ts--列出工作区中所有存储库的PRget-pull-request.ts--获取包括提交在内的详细公关信息create-pull-request.ts--创建新的pull请求get-pull-request-diff.ts--获取PR的差异内容list-pull-request-comments.ts--列出PR上的评论(包括内联)create-pull-request-comment.ts--在PR上创建一般或内联评论approve-pull-request.ts--批准拉取请求unapprove-pull-request.ts--从PR中删除批准merge-pull-request.ts--将PR与可配置策略合并
管道/
list-pipelines.ts--列表管道在存储库中运行list-workspace-pipelines.ts--列出工作区中所有存储库的管道list-pipeline-steps.ts--列出管道运行的步骤get-pipeline-step-log.ts--获取管道步骤的日志trigger-pipeline.ts--在分支上触发自定义管道
来源/
get-file-content.ts--读取特定引用处的文件内容(分支/标签/提交)list-directory.ts--列出路径中的文件和目录
分支机构/
list-branches.ts--使用可选筛选列出存储库中的分支
搜索/
search-code.ts--在整个工作区的存储库中搜索代码
比特桶API(src/bitbucket/)
src/bitbucket/client.ts-Bitbucket REST API的HTTP客户端src/bitbucket/types.ts-Bitbucket API类型定义
管理员(src/admin/)
src/admin/resolver.ts--Forge解析器用于管理面板UIsrc/admin/api.ts--用于管理配置的Web触发器处理程序
数据库和审计(src/db/, src/audit/)
src/db/migrations.ts--伪造audit_log表的SQL迁移src/audit/log.ts-审核日志记录(即发即弃工具使用跟踪)src/audit/types.ts--审核类型定义
许可
这个项目是 公平来源 在...之下 FSL(功能源许可证)。它可以免费使用和部署,包括在企业环境中,但您可能不会将其作为竞争对手的商业服务提供。两年后,该代码在Apache 2.0下开源。
