关于 Bitbucket Pipelines MCP Server
Bitbucket Pipelines MCP Server 为大模型和 MCP 客户端提供管道管理操作,可分页列出管道、启动管道、查询状态并停止运行;通过 Bitbucket 凭据和仓库信息配置。
主要功能
- 01分页列出管道
- 02触发管道运行
- 03获取管道状态
- 04停止管道运行
适用场景
- 01查看仓库中的管道
- 02为分支或标签启动管道
- 03检查运行状态并按需停止
MCP 相关
该 MCP 服务通过 stdio 将 Bitbucket Pipelines 操作提供为工具,供兼容的 MCP 客户端列出、触发、检查和停止管道。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Bitbucket Pipelines MCP 服务
一个提供与 Bitbucket Pipelines 交互的工具的 MCP(Model Context Protocol)服务。此服务实现了 MCP 标准,可供 Claude 等大模型用于管理 Bitbucket Pipelines。
可用工具
1. mcp_bitbucket_list_pipelines
列出流水线,支持分页。
参数:
{
page?: number; // Número da página (default: 1)
pagelen?: number; // Itens por página (default: 10)
}
2. mcp_bitbucket_trigger_pipeline
触发新的流水线。
参数:
{
target: {
ref_type: string; // Tipo de referência (ex: "branch", "tag")
type: string; // Tipo do alvo
ref_name: string; // Nome da referência (ex: "main", "develop")
selector?: { // Opcional
type: string;
pattern: string;
}
},
variables?: Array<{ // Opcional
key: string;
value: string;
secured?: boolean;
}>
}
3. mcp_bitbucket_get_pipeline_status
获取特定流水线的状态。
参数:
{
uuid: string; // UUID do pipeline
}
4. mcp_bitbucket_stop_pipeline
停止流水线的执行。
参数:
{
uuid: string; // UUID do pipeline
}
配置
环境变量
创建包含以下变量的 .env 文件:
# Obrigatórias
BITBUCKET_ACCESS_TOKEN=seu_token_aqui
BITBUCKET_WORKSPACE=seu_workspace
BITBUCKET_REPO_SLUG=seu_repositorio
# Opcionais
BITBUCKET_API_URL=https://api.bitbucket.org/2.0 # URL da API (default: https://api.bitbucket.org/2.0)
安装与运行
使用 Docker(推荐)
- 克隆仓库:
git clone [url-do-repositorio]
cd bitbucket-pipelines-mcp
- 配置环境变量:
cp .env.example .env
# Edite o arquivo .env com suas configurações
- 启动服务:
docker-compose up -d
- 检查服务状态:
# Torne o script executável
chmod +x docker-mcp-test.js
# Execute o script
node docker-mcp-test.js
- 使用客户端脚本与服务交互:
# Torne o script executável
chmod +x docker-mcp-client.js
# Execute o script
node docker-mcp-client.js
- 手动与服务交互:
# Exemplo de chamada direta
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"name":"Test Client","version":"1.0.0","protocolVersion":"0.3.0","capabilities":{},"clientInfo":{"name":"Test Client","version":"1.0.0"}}}' | docker exec -i bitbucket-pipelines-mcp_mcp-server_1 node dist/index.js
本地安装
- 克隆仓库:
git clone [url-do-repositorio]
cd bitbucket-pipelines-mcp
- 安装依赖:
npm install
- 配置环境变量:
cp .env.example .env
# Edite o arquivo .env com suas configurações
- 编译项目:
npm run build
- 启动服务:
npm start
与 Cursor 集成
方法 1:直接编辑 mcp.json 文件(推荐)
与 Cursor 集成最直接、最高效的方式是编辑主 mcp.json 文件:
- 确保 Docker MCP 服务正在运行:
npm run docker:up
-
在 Cursor 配置目录中找到
mcp.json文件:- Linux:
~/.cursor/mcp.json - macOS:
~/Library/Application Support/Cursor/mcp.json - Windows:
%APPDATA%\Cursor\mcp.json
- Linux:
-
编辑
mcp.json文件,并在主配置节中添加以下配置:
"bitbucket-pipelines": {
"command": "docker",
"args": [
"exec",
"-i",
"bitbucket-pipelines-mcp_mcp-server_1",
"node",
"dist/index.js"
]
}
-
保存文件并重启 Cursor。
-
现在,你可以直接在 Cursor 中使用 Bitbucket Pipelines 工具,调用方式如下:
@bitbucket-pipelines
方法 2:使用单独的配置文件
要在 Cursor IDE 中直接使用 Bitbucket Pipelines MCP,请按以下步骤操作:
- 确保 Docker MCP 服务正在运行:
npm run docker:up
- 在项目根目录创建
mcp.config.json文件,并写入以下内容:
{
"name": "bitbucket-pipelines-mcp",
"description": "Bitbucket Pipelines MCP Server para interagir com o Bitbucket Pipelines",
"version": "1.0.0",
"command": {
"binary": "docker",
"args": ["exec", "-i", "bitbucket-pipelines-mcp_mcp-server_1", "node", "dist/index.js"]
},
"tools": [
{
"name": "mcp_bitbucket_list_pipelines",
"description": "Lista pipelines com suporte a paginação"
},
{
"name": "mcp_bitbucket_trigger_pipeline",
"description": "Dispara um novo pipeline"
},
{
"name": "mcp_bitbucket_get_pipeline_status",
"description": "Obtém o status de um pipeline específico"
},
{
"name": "mcp_bitbucket_stop_pipeline",
"description": "Para a execução de um pipeline"
}
]
}
- 将此文件复制到 Cursor 配置目录:
# Para Linux
mkdir -p ~/.config/Cursor/mcp/
cp mcp.config.json ~/.config/Cursor/mcp/bitbucket-pipelines-mcp.json
# Para macOS
mkdir -p ~/Library/Application\ Support/Cursor/mcp/
cp mcp.config.json ~/Library/Application\ Support/Cursor/mcp/bitbucket-pipelines-mcp.json
# Para Windows
mkdir -p %AppData%\Cursor\mcp\
copy mcp.config.json %AppData%\Cursor\mcp\bitbucket-pipelines-mcp.json
-
重启 Cursor 以应用更改。
-
现在,你可以直接在 Cursor 中使用 Bitbucket Pipelines 工具,调用方式如下:
@modelcontextprotocol/bitbucket-pipelines-mcp
- 要访问特定工具,请使用:
@modelcontextprotocol/bitbucket-pipelines-mcp/mcp_bitbucket_list_pipelines
与 MCP 配合使用
此服务实现了 Model Context Protocol(MCP),使大模型能够与 Bitbucket Pipelines 交互。服务使用 StdioServerTransport 接口,通过 stdin/stdout 进行通信。
使用 MCP SDK 的示例
import { Client } from '@modelcontextprotocol/sdk/client';
import { ChildProcessTransport } from '@modelcontextprotocol/sdk/client/child-process';
async function main() {
// Inicializa o cliente MCP
const client = new Client({
transport: new ChildProcessTransport({
command: 'node',
args: ['dist/index.js'],
env: {
BITBUCKET_ACCESS_TOKEN: 'seu_token',
BITBUCKET_WORKSPACE: 'seu_workspace',
BITBUCKET_REPO_SLUG: 'seu_repositorio'
}
})
});
// Lista as ferramentas disponíveis
const tools = await client.listTools();
console.log('Ferramentas disponíveis:', tools);
// Listar pipelines
const pipelines = await client.callTool('mcp_bitbucket_list_pipelines', { page: 1, pagelen: 5 });
console.log('Pipelines:', pipelines);
// Fechar o cliente
await client.close();
}
main().catch(console.error);
开发
可用脚本
npm run build:编译 TypeScript 项目npm start:启动服务npm run dev:使用 ts-node 以开发模式启动服务npm test:运行测试
项目结构
.
├── src/
│ ├── index.ts # Ponto de entrada do servidor MCP
│ └── tools/
│ └── bitbucket-pipelines.ts # Implementação das tools MCP
├── package.json # Dependências e scripts
└── tsconfig.json # Configuração do TypeScript
实现 Model Context Protocol
此项目使用 @modelcontextprotocol/sdk 实现 MCP 服务。主要特性如下:
- 通过 stdio 通信:服务通过 stdin/stdout 通信,便于与大模型集成。
- 标准工具格式:所有工具均遵循 MCP 协议定义的格式。
- 健壮的错误处理:MCP 协议规范了向客户端传达错误的方式。
参与贡献
- Fork 此项目
- 为你的功能创建一个分支(
git checkout -b feature/nova-feature) - 提交你的更改(
git commit -am 'Adiciona nova feature') - 推送到该分支(
git push origin feature/nova-feature) - 创建一个 Pull Request
使用直接命令进行测试
你可以使用以下命令手动测试服务器:
启动
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"name":"Test Client","version":"1.0.0","protocolVersion":"0.3.0","capabilities":{},"clientInfo":{"name":"Test Client","version":"1.0.0"}}}' | docker exec -i bitbucket-pipelines-mcp_mcp-server_1 node dist/index.js
列出工具
echo '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | docker exec -i bitbucket-pipelines-mcp_mcp-server_1 node dist/index.js
调用工具
echo '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"mcp_bitbucket_list_pipelines","input":{"page":1,"pagelen":5}}}' | docker exec -i bitbucket-pipelines-mcp_mcp-server_1 node dist/index.js
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。