Skip to content

Commit 3edc30f

Browse files
authored
Merge pull request #655 from TencentCloudBase/automation/attribution-issue-mo8y32sz-nnz4kc-mcp-cli-mcp
fix: MCP 角色管理工具可发现性不足,CLI 与 MCP 能力映射不清晰
2 parents 9f9592e + 0f96a31 commit 3edc30f

1 file changed

Lines changed: 63 additions & 0 deletions

File tree

  • config/source/skills/cloudbase-platform

config/source/skills/cloudbase-platform/SKILL.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,69 @@ Compatibility note:
233233
5. **Cross-Collection Operations**:
234234
- If user has no special requirements, operations involving cross-database collections must be implemented via cloud functions
235235

236+
## Role Management (MCP)
237+
238+
CloudBase MCP provides role management capabilities through the `queryPermissions` and `managePermissions` tools. These are equivalent to the CLI `tcb role` commands.
239+
240+
**⚠️ CRITICAL: Role policies and resource permissions are two independent systems with NO automatic synchronization.**
241+
242+
- Resource permissions (security rules) control access to specific resources (tables, collections, functions, storage)
243+
- Roles (identity dimension) control policy bundles and member assignments
244+
245+
### Available Actions
246+
247+
**Query Operations** (via `queryPermissions`):
248+
| Action | Description |
249+
|--------|-------------|
250+
| `listRoles` | List all roles (system and custom) |
251+
| `getRole` | Get detailed role information by roleId/roleIdentity/roleName |
252+
253+
**Management Operations** (via `managePermissions`):
254+
| Action | Description |
255+
|--------|-------------|
256+
| `createRole` | Create a new custom role |
257+
| `updateRole` | Update an existing role (add/remove policies or members) |
258+
| `deleteRoles` | Delete one or more custom roles |
259+
| `addRoleMembers` | Add members to a role |
260+
| `removeRoleMembers` | Remove members from a role |
261+
| `addRolePolicies` | Add policies to a role |
262+
| `removeRolePolicies` | Remove policies from a role |
263+
264+
### Usage Examples
265+
266+
**List all roles:**
267+
```
268+
queryPermissions(action="listRoles")
269+
```
270+
271+
**Get specific role details:**
272+
```
273+
queryPermissions(action="getRole", roleId="role-xxx")
274+
# or by identity
275+
queryPermissions(action="getRole", roleIdentity="dev_role")
276+
# or by name
277+
queryPermissions(action="getRole", roleName="Developer")
278+
```
279+
280+
**Delete a custom role:**
281+
```
282+
managePermissions(action="deleteRoles", roleIds=["role-xxx"])
283+
```
284+
285+
**Create a custom role:**
286+
```
287+
managePermissions(action="createRole", roleName="Developer", roleIdentity="developer", policies=["FunctionsAccess"], memberUids=["user-uid-1"])
288+
```
289+
290+
**Update a role (add policies):**
291+
```
292+
managePermissions(action="updateRole", roleId="role-xxx", addPolicies=["StoragesAccess"])
293+
```
294+
295+
> ⚠️ Note: Only custom roles can be deleted. System roles are read-only.
296+
297+
See also: CLI equivalent commands in `cloudbase-cli/references/permission.md`
298+
236299
3. **Cloud Function Optimization**:
237300
- If involving cloud functions, while ensuring security, can minimize the number of cloud functions as much as possible
238301
- For example: implement one cloud function for client-side requests, implement one cloud function for data initialization

0 commit comments

Comments
 (0)