# Annotations
<EpicVideo url="https://www.epicai.pro/workshops/advanced-mcp-features-flccv/annotations~n6qo2" />
👨💼 Users want to feel confident about what each tool in the system does before they use it. They want to know if a tool is safe, if it will change their data, or if it might reach out to the outside world. When tools are clearly labeled for their behavior, the app feels more transparent and trustworthy.
For example, if a tool is read-only, the UI can show a reassuring message. If a tool might delete data, the user should get a warning. If a tool is safe to run multiple times, that's useful to know too. These labels help users make informed decisions and reduce anxiety about using advanced features.
To support this, each tool should include an `annotations` property that describes its behavior. Here are some fun examples:
```ts
{
title: 'Summon Dragon',
description: 'Summon a friendly dragon to your location',
annotations: {
destructiveHint: false,
openWorldHint: true,
},
inputSchema: summonInputSchema,
}
```
```ts
{
title: 'Cast Invisibility',
description: 'Make the user invisible for 5 minutes',
annotations: {
idempotentHint: true,
openWorldHint: false,
},
inputSchema: {},
}
```
```ts
{
title: 'Delete Goblin',
description: 'Remove a goblin from the dungeon',
annotations: {
destructiveHint: true,
idempotentHint: true,
openWorldHint: false,
},
inputSchema: goblinIdSchema,
}
```
📜 Please check [the MCP docs](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations) for the default values and when each annotation is useful.
The goal is to make tool behavior obvious to both users and the UI. The more clearly this is communicated, the more empowered and comfortable users will feel using the mcp server's advanced features.
<callout-info>
🐨 Note: I have you add annotations to every tool, but feel free to stop and
move on to the next step once you feel comfortable.
</callout-info>
To test this in the MCP inspector, simply connect and click "Tools" and "List Tools," then check the annotations in the response.