Skip to content

Commit 82542bd

Browse files
committed
docs(about): Add tool annotations table
why: Top MCP servers (Filesystem) publish per-tool annotation hints. This helps agents and users understand tool behavior at a glance. what: - Add table mapping each tool to its safety tier and MCP annotations - Columns: readOnly, destructive, idempotent - Grouped by tier (readonly, mutating, destructive)
1 parent f405259 commit 82542bd

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

docs/about.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,40 @@ The safety middleware:
191191
- **Blocks** execution of tools above the tier with clear error messages
192192
- **Fail-closed**: tools without a recognized tier tag are denied
193193

194+
### Tool annotations
195+
196+
Each tool carries MCP tool annotations that hint at its behavior:
197+
198+
| Tool | Tier | readOnly | destructive | idempotent |
199+
|------|------|----------|-------------|------------|
200+
| `list_sessions` | readonly | true | false | true |
201+
| `get_server_info` | readonly | true | false | true |
202+
| `list_windows` | readonly | true | false | true |
203+
| `list_panes` | readonly | true | false | true |
204+
| `capture_pane` | readonly | true | false | true |
205+
| `get_pane_info` | readonly | true | false | true |
206+
| `search_panes` | readonly | true | false | true |
207+
| `wait_for_text` | readonly | true | false | true |
208+
| `show_option` | readonly | true | false | true |
209+
| `show_environment` | readonly | true | false | true |
210+
| `create_session` | mutating | false | false | false |
211+
| `create_window` | mutating | false | false | false |
212+
| `split_window` | mutating | false | false | false |
213+
| `send_keys` | mutating | false | false | false |
214+
| `rename_session` | mutating | false | false | true |
215+
| `rename_window` | mutating | false | false | true |
216+
| `resize_pane` | mutating | false | false | true |
217+
| `resize_window` | mutating | false | false | true |
218+
| `set_pane_title` | mutating | false | false | true |
219+
| `clear_pane` | mutating | false | false | true |
220+
| `select_layout` | mutating | false | false | true |
221+
| `set_option` | mutating | false | false | true |
222+
| `set_environment` | mutating | false | false | true |
223+
| `kill_server` | destructive | false | true | false |
224+
| `kill_session` | destructive | false | true | false |
225+
| `kill_window` | destructive | false | true | false |
226+
| `kill_pane` | destructive | false | true | false |
227+
194228
## Agent self-awareness
195229

196230
When the MCP server runs inside a tmux pane (detected via `TMUX_PANE` env var), it includes the caller's pane context in server instructions and annotates the caller's own pane with `is_caller=true` in tool results. This prevents agents from accidentally killing their own pane.

0 commit comments

Comments
 (0)