Skip to main content
Glama

update_repository

Modify Bitbucket repository settings including project assignment, visibility, description, and name to manage repository configuration.

Instructions

Update repository settings (project, visibility, description, name).

Use this to move a repository to a different project, change visibility, update description, or rename the repository. Args: repo_slug: Repository slug (e.g., "anzsic_classifier") project_key: Move to different project (optional, e.g., "DS") is_private: Change visibility (optional) description: Update description (optional) name: Rename repository (optional) Returns: Updated repository info

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
repo_slugYes
project_keyNo
is_privateNo
descriptionNo
nameNo

Implementation Reference

  • MCP tool handler for 'update_repository'. Decorated with @mcp.tool(), handles input parameters, calls BitbucketClient.update_repository, and formats the response.
    @mcp.tool() @handle_bitbucket_error @formatted def update_repository( repo_slug: str, project_key: Optional[str] = None, is_private: Optional[bool] = None, description: Optional[str] = None, name: Optional[str] = None, ) -> dict: """Update repository settings (project, visibility, description, name). Use this to move a repository to a different project, change visibility, update description, or rename the repository. Args: repo_slug: Repository slug (e.g., "anzsic_classifier") project_key: Move to different project (optional, e.g., "DS") is_private: Change visibility (optional) description: Update description (optional) name: Rename repository (optional) Returns: Updated repository info """ client = get_client() result = client.update_repository( repo_slug=repo_slug, project_key=project_key, is_private=is_private, description=description, name=name, ) return { "name": result.get("name"), "full_name": result.get("full_name"), "project": result.get("project", {}).get("key"), "private": result.get("is_private"), "description": result.get("description", ""), }
  • BitbucketClient helper method that constructs the update payload and performs the PUT request to the Bitbucket API to update repository settings.
    def update_repository( self, repo_slug: str, project_key: Optional[str] = None, is_private: Optional[bool] = None, description: Optional[str] = None, name: Optional[str] = None, ) -> dict[str, Any]: """Update repository settings. Args: repo_slug: Repository slug project_key: Move to different project (optional) is_private: Change visibility (optional) description: Update description (optional) name: Rename repository (optional) Returns: Updated repository info """ payload = {} if project_key is not None: payload["project"] = {"key": project_key} if is_private is not None: payload["is_private"] = is_private if description is not None: payload["description"] = description if name is not None: payload["name"] = name if not payload: raise BitbucketError("No fields to update") result = self._request("PUT", self._repo_path(repo_slug), json=payload) return self._require_result(result, "update repository", repo_slug)
  • src/server.py:650-650 (registration)
    Registration of the 'update_repository' tool using FastMCP's @mcp.tool() decorator.
    @mcp.tool()

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/JaviMaligno/mcp-server-bitbucket'

If you have feedback or need assistance with the MCP directory API, please join our Discord server