Servidor MCP de Atlassian Bitbucket
Un servidor de Protocolo de Contexto de Modelo (MCP) Node.js/TypeScript para Atlassian Bitbucket Cloud. Permite que los sistemas de IA (p. ej., LLM como Claude o Cursor AI) interactúen de forma segura con sus repositorios, solicitudes de extracción, espacios de trabajo y código en tiempo real.
¿Por qué utilizar este servidor?
Entrada mínima, salida máxima : los identificadores simples proporcionan detalles completos sin necesidad de indicadores adicionales.
Visualización de código enriquecido : obtenga información detallada sobre los cambios de código con estadísticas de archivos, vistas de diferencias y contexto inteligente.
Autenticación local segura : ejecútela localmente con sus credenciales y nunca almacene tokens en servidores remotos.
Respuestas intuitivas de Markdown : formato de Markdown consistente y bien estructurado para todas las salidas.
Integración completa con Bitbucket : acceda a espacios de trabajo, repositorios, solicitudes de extracción, comentarios, búsqueda de código y más.
Related MCP server: GitHub MCP Tools
¿Qué es MCP?
El Protocolo de Contexto de Modelo (MCP) es un estándar abierto para conectar de forma segura sistemas de IA a herramientas y fuentes de datos externas. Este servidor implementa MCP para Bitbucket Cloud, lo que permite que los asistentes de IA interactúen con sus datos de Bitbucket mediante programación.
Prerrequisitos
Node.js (>=18.x): Descargar
Cuenta en la nube de Bitbucket
Configuración
Paso 1: Autenticar
Elija uno de los siguientes métodos de autenticación:
Opción A: Contraseña de la aplicación Bitbucket (recomendada)
Genera una desde las contraseñas de la aplicación Bitbucket . Permisos mínimos:
Espacios de trabajo: Leer
Repositorios: Leer
Solicitudes de extracción: lectura
También puede configurar BITBUCKET_DEFAULT_WORKSPACE para especificar un espacio de trabajo predeterminado cuando no se proporciona explícitamente.
Opción B: Token de API de Atlassian
Genere uno a partir de tokens API de Atlassian .
Nota: Se recomienda encarecidamente utilizar contraseñas de aplicaciones Bitbucket, ya que proporcionan permisos más granulares y específicos de Bitbucket.
Paso 2: Configurar credenciales
Opción A: Archivo de configuración MCP (recomendado)
Editar o crear ~/.mcp/configs.json :
Usando la contraseña de la aplicación Bitbucket:
Uso del token API de Atlassian:
Opción B: Variables de entorno
Paso 3: Instalar y ejecutar
Inicio rápido con npx
Instalación global
Paso 4: Conéctese al Asistente de IA
Configure su cliente compatible con MCP (por ejemplo, Claude, Cursor AI):
Herramientas MCP
Las herramientas MCP utilizan nombres snake_case , parámetros camelCase y devuelven respuestas con formato Markdown.
bb_ls_workspaces : Enumera los espacios de trabajo disponibles (
query: str opt). Uso: Ver espacios de trabajo accesibles.bb_get_workspace : Obtiene detalles del espacio de trabajo (
workspaceSlug: str req). Uso: Ver información del espacio de trabajo.bb_ls_repos : Lista los repositorios (
workspaceSlug: str opt,projectKey: str opt,query: str opt,role: str opt). Uso: Buscar repositorios.bb_get_repo : Obtiene los detalles del repositorio (
workspaceSlug: str req,repoSlug: str req). Uso: Accede a la información del repositorio.bb_search : Busca contenido de Bitbucket (
workspaceSlug: str req,query: str req,scope: str opt,language: str opt,extension: str opt). Uso: Buscar código o solicitudes de solicitud (PR).bb_ls_prs : Lista las solicitudes de extracción (
workspaceSlug: str req,repoSlug: str req,state: str opt). Uso: Ver solicitudes de extracción abiertas o fusionadas.bb_get_pr : Obtiene los detalles de la solicitud de retorno (
workspaceSlug: str req,repoSlug: str req,prId: str req). Uso: Ver detalles de la solicitud de retorno con diferencias.bb_ls_pr_comments : Lista los comentarios de la solicitud de relaciones públicas (
workspaceSlug: str req,repoSlug: str req,prId: str req). Uso: Ver las discusiones de la solicitud de relaciones públicas.bb_add_pr_comment : Agrega un comentario a la solicitud de relaciones públicas (
workspaceSlug: str req,repoSlug: str req,prId: str req,content: str req,inline: obj opt). Uso: Agrega comentarios a las solicitudes de relaciones públicas.bb_add_pr : Crea una solicitud de solicitud (
workspaceSlug: str req,repoSlug: str req,title: str req,sourceBranch: str req,targetBranch: str opt). Uso: Crea nuevas solicitudes de solicitud.bb_add_branch : Crea una rama (
workspaceSlug: str req,repoSlug: str req,newBranchName: str req,sourceBranchOrCommit: str opt). Uso: Crea una rama de funciones.bb_clone_repo : Clona un repositorio (
workspaceSlug: str req,repoSlug: str req,targetPath: str req). Uso: Clona código localmente.bb_get_commit_history : Obtiene el historial de confirmaciones (
workspaceSlug: str req,repoSlug: str req,revision: str opt,path: str opt). Uso: Ver el historial de código.bb_get_file : Obtiene el contenido del archivo (
workspaceSlug: str req,repoSlug: str req,filePath: str req,revision: str opt). Uso: Ver archivo específico.bb_diff_branches : Muestra la diferencia entre ramas (
workspaceSlug: str req,repoSlug: str req,sourceBranch: str req,targetBranch: str req). Uso: Compara ramas.bb_diff_commits : Muestra la diferencia entre confirmaciones (
workspaceSlug: str req,repoSlug: str req,sourceCommit: str req,targetCommit: str req). Uso: Comparar confirmaciones.bb_list_branches : Lista las ramas (
workspaceSlug: str req,repoSlug: str req,query: str opt,sort: str opt). Uso: Ver todas las ramas.
bb_ls_workspaces
Listar todos los espacios de trabajo:
Buscar espacios de trabajo:
bb_get_workspace
Obtener detalles del espacio de trabajo:
bb_ls_repos
Lista de repositorios en el espacio de trabajo:
Lista de repositorios que utilizan el espacio de trabajo predeterminado:
bb_get_repo
Obtener detalles del repositorio:
bb_search
Código de búsqueda:
bb_ls_prs
Lista de PR abiertas:
bb_get_pr
Obtenga detalles de relaciones públicas:
bb_ls_pr_comments
Lista de comentarios de relaciones públicas:
bb_add_pr_comment
Añadir comentario general:
Agregar comentario en línea:
bb_add_pr
Crear solicitud de extracción:
bb_add_branch
Crear nueva rama:
bb_clone_repo
Repositorio de clones:
bb_get_commit_history
Ver historial de confirmaciones:
Historial de confirmaciones filtrado:
bb_get_file
Obtener el contenido del archivo:
bb_diff_branches
Comparar sucursales:
bb_diff_commits
Comparar confirmaciones:
bb_list_branches
Listar todas las sucursales:
Ramas filtradas:
Comandos CLI
Los comandos CLI usan kebab-case . Ejecute --help para obtener más información (p. ej., mcp-atlassian-bitbucket ls-workspaces --help ).
ls-workspaces : Enumera los espacios de trabajo (
--query). Ejemplo:mcp-atlassian-bitbucket ls-workspaces.get-workspace : Obtiene los detalles del espacio de trabajo (
--workspace-slug). Ejemplo:mcp-atlassian-bitbucket get-workspace --workspace-slug acme-corp.ls-repos : Lista los repositorios (
--workspace-slug,--project-key,--query). Ejemplo:mcp-atlassian-bitbucket ls-repos --workspace-slug acme-corp.get-repo : Obtiene los detalles del repositorio (
--workspace-slug,--repo-slug). Ejemplo:mcp-atlassian-bitbucket get-repo --workspace-slug acme-corp --repo-slug backend-api.búsqueda : Busca código (
--workspace-slug,--query,--scope,--language). Ejemplo:mcp-atlassian-bitbucket search --workspace-slug acme-corp --query "auth".ls-prs : Enumera las solicitudes de solicitud (
--workspace-slug,--repo-slug,--state). Ejemplo:mcp-atlassian-bitbucket ls-prs --workspace-slug acme-corp --repo-slug backend-api.get-pr : Obtiene los detalles de la solicitud de registro (
--workspace-slug,--repo-slug,--pr-id). Ejemplo:mcp-atlassian-bitbucket get-pr --workspace-slug acme-corp --repo-slug backend-api --pr-id 42.ls-pr-comments : Lista los comentarios de PR (
--workspace-slug,--repo-slug,--pr-id). Ejemplo:mcp-atlassian-bitbucket ls-pr-comments --workspace-slug acme-corp --repo-slug backend-api --pr-id 42.add-pr-comment : Añade un comentario de PR (
--workspace-slug,--repo-slug,--pr-id,--content). Ejemplo:mcp-atlassian-bitbucket add-pr-comment --workspace-slug acme-corp --repo-slug backend-api --pr-id 42 --content "Looks good".add-pr : Crea una solicitud de registro (
--workspace-slug,--repo-slug,--title,--source-branch). Ejemplo:mcp-atlassian-bitbucket add-pr --workspace-slug acme-corp --repo-slug backend-api --title "New feature" --source-branch feature/login.get-file : Obtiene el contenido del archivo (
--workspace-slug,--repo-slug,--file-path). Ejemplo:mcp-atlassian-bitbucket get-file --workspace-slug acme-corp --repo-slug backend-api --file-path src/main.js.add-branch : Crea una rama (
--workspace-slug,--repo-slug,--new-branch-name). Ejemplo:mcp-atlassian-bitbucket add-branch --workspace-slug acme-corp --repo-slug backend-api --new-branch-name feature/new.
Listar y ver espacios de trabajo/repositorios
Trabajar con solicitudes de extracción
Código y confirmaciones
Gestión de sucursales
Formato de respuesta
Todas las respuestas están en formato Markdown, incluidas:
Título : Operación realizada o entidad visualizada.
Contexto : espacio de trabajo, repositorio, solicitud de extracción o información de rama.
Contenido : datos primarios como contenido de archivo, detalles de relaciones públicas o resultados de búsqueda.
Metadatos : marcas de tiempo, autores y estadísticas.
Diferencias : cambios de código con resaltado de sintaxis para diferencias entre ramas/confirmaciones.
Detalles del repositorio
Revisión de solicitud de extracción
Desarrollo
Contribuyendo
¡Agradecemos sus contribuciones! Por favor:
Bifurcar el repositorio.
Crea una rama de características (
git checkout -b feature/xyz).Confirmar cambios (
git commit -m "Add xyz feature").Empujar a la rama (
git push origin feature/xyz).Abrir una solicitud de extracción.
Consulte CONTRIBUTING.md para obtener más detalles.