Skip to main content
Glama

set_role

Set the persisted MCP role, enforcing downgrade-only policy; preview changes with dry run.

Instructions

Change the persisted MCP role — DOWNGRADE ONLY.

Valid roles: CONTRIBUTOR, GENERATOR, MANAGER (cumulative; see ADR 5). This tool will set the persisted role to target_role IF AND ONLY IF its level is less than or equal to the currently-loaded role.

Set dry_run=true to validate inputs (including the elevation refusal check) and preview the config write without touching config.toml. Refusal-class errors (role_elevation_forbidden) trigger regardless of dry_run — a forbidden elevation is forbidden whether or not the LLM was just "asking". Returns code="dry_run" on legitimate previews.

Self-elevation via MCP is forbidden by design (ADR 17). Attempts to elevate return a structured error with error_code='role_elevation_forbidden'. To elevate, run './dev.sh init --role ' from a shell or hand-edit ~/.config/taskchampion-mcp/config.toml and restart the MCP server.

Takes effect on next MCP server restart.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
target_roleYes
dry_runNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses that the tool is downgrade-only, takes effect on next restart, includes a structured error for elevation attempts with error_code, explains dry_run behavior (preview without touching config, returns code='dry_run'), and notes that refusal errors trigger regardless of dry_run. This is comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections and front-loaded key point ('DOWNGRADE ONLY'). Every sentence adds value, but it is slightly lengthy; however, the detail is justified for behavioral clarity. Minor reduction possible without losing information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that an output schema exists (though not shown), the description still covers behavior, error scenarios, and dry_run. It addresses edge cases (elevation refusal) and provides comprehensive guidance for a tool with 2 parameters. It feels complete for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description must explain each parameter. It explains 'target_role' as the desired role with condition (≤ current level), and 'dry_run' as a validation/preview mode with explicit behavior (no config write, returns code='dry_run'). This adds significant meaning beyond schema types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool changes the persisted MCP role, explicitly notes it's downgrade only, lists valid roles (CONTRIBUTOR, GENERATOR, MANAGER), and distinguishes from any sibling tools (none are role-related). The specificity of verb and resource is high.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use (to downgrade role), when not to use (elevation is forbidden with alternative methods for elevation provided: shell command or config edit), and includes a dry_run option for validation. It gives clear guidance on the conditional logic and error handling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/GabiUp2/TaskChampion_MCP'

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