MCP Tool Annotations Module
Tool annotations provide behavioral hints to MCP clients about how tools behave. This follows the MCP 2025-11-25 specification.Annotation Hints
| Hint | Type | Default | Description |
|---|---|---|---|
readOnlyHint | boolean | false | Tool only reads data, doesn’t modify state |
destructiveHint | boolean | true | Tool may have destructive/irreversible effects |
idempotentHint | boolean | false | Tool can be called multiple times with same result |
openWorldHint | boolean | true | Tool interacts with external world (network, APIs) |
Code Usage
Default Annotations
Read-Only Tool
Destructive Tool
Idempotent Tool
Closed-World Tool
Tool Schema Output
Annotations are included in the MCP schema:Custom Title Annotation
Category and Tags
Automatic Hint Inference
The registry bridge can infer hints from tool names:Searching by Annotations
Best Practices
- Set
readOnlyHint=Truefor tools that only retrieve data - Set
destructiveHint=Truefor tools that delete or modify data irreversibly - Set
idempotentHint=Truefor tools safe to retry on failure - Set
openWorldHint=Falsefor internal/local-only tools
See Also
- MCP Tool Annotations CLI - CLI commands for tool info
- MCP Tool Search - Search tools by annotations
- MCP Server - Core MCP server documentation

