list_group_permissions
View group access levels for a Bitbucket repository to manage team permissions and control repository security settings.
Instructions
List group permissions for a repository.
Args:
repo_slug: Repository slug
limit: Maximum number of results (default: 50)
Returns:
List of groups with their permission levels
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| repo_slug | Yes | ||
| limit | No |
Implementation Reference
- src/server.py:1596-1613 (handler)The MCP tool handler function that executes the list_group_permissions tool logic by calling the Bitbucket client method and formatting the response.@mcp.tool() @handle_bitbucket_error @formatted def list_group_permissions(repo_slug: str, limit: int = 50) -> dict: """List group permissions for a repository. Args: repo_slug: Repository slug limit: Maximum number of results (default: 50) Returns: List of groups with their permission levels """ client = get_client() permissions = client.list_group_permissions(repo_slug, limit=validate_limit(limit)) return { "groups": [GroupPermission.from_api(p).model_dump() for p in permissions], }
- src/bitbucket_client.py:1575-1592 (helper)Supporting method in BitbucketClient that fetches the group permissions via paginated API call.def list_group_permissions( self, repo_slug: str, limit: int = 50, ) -> list[dict[str, Any]]: """List group permissions for a repository. Args: repo_slug: Repository slug limit: Maximum results to return Returns: List of group permission info dicts """ return self._paginated_list( self._repo_path(repo_slug, "permissions-config", "groups"), limit=limit, )
- src/models.py:646-661 (schema)Pydantic model for group permission data structure, used for validation and serialization in the tool response.class GroupPermission(BaseModel): """Group permission info.""" group: Optional[str] = None slug: Optional[str] = None permission: str @classmethod def from_api(cls, data: dict) -> "GroupPermission": group_data = data.get("group") or {} return cls( group=group_data.get("name"), slug=group_data.get("slug"), permission=data.get("permission", ""), )
- src/server.py:1596-1596 (registration)The @mcp.tool() decorator that registers the list_group_permissions function as an MCP tool.@mcp.tool()