Skip to content

feat: Add tool annotations for improved LLM tool understanding#850

Merged
zihaolin96 merged 1 commit into
Klavis-AI:mainfrom
bryankthompson:feat/add-tool-annotations
Jan 13, 2026
Merged

feat: Add tool annotations for improved LLM tool understanding#850
zihaolin96 merged 1 commit into
Klavis-AI:mainfrom
bryankthompson:feat/add-tool-annotations

Conversation

@bryankthompson

Copy link
Copy Markdown
Contributor

Summary

Adds MCP tool annotations (readOnlyHint, destructiveHint) to 121 tools across 6 MCP servers to help LLMs better understand tool behavior and make safer decisions about tool execution.

Servers Updated

Server Tools Annotated
Figma 23
Trello 10
Calendly 6
Perplexity AI 2
MS Teams 11
Intercom 69
Total 121

Changes

  • Added readOnlyHint: true to read-only tools (queries, fetches)
  • Added destructiveHint: true to tools that create/update/delete data
  • Added title annotations for human-readable display

Why This Matters

  • Annotations provide semantic metadata that helps LLMs understand tool behavior
  • LLMs can make better decisions about when to use tools and in what order
  • Enables safer tool execution by distinguishing read-only from destructive operations
  • readOnlyHint tells the LLM a tool is safe to call without side effects
  • destructiveHint signals the LLM should be more careful before executing

Before/After Example

Before:

{
  name: "figma_get_file",
  description: "Get File Content - retrieve the full content of a Figma file."
  // No annotations
}

After:

{
  name: "figma_get_file",
  description: "Get File Content - retrieve the full content of a Figma file.",
  annotations: {
    title: "Get File",
    readOnlyHint: true
  }
}

Testing

  • TypeScript servers build successfully (Intercom)
  • Annotations appear in tool definitions
  • Annotation values match actual tool behavior

🤖 Generated with Claude Code

Add readOnlyHint and destructiveHint annotations to 121 tools across
6 MCP servers to help LLMs better understand tool behavior and make
safer decisions.

Servers Updated:
- Figma (23 tools)
- Trello (10 tools)
- Calendly (6 tools)
- Perplexity AI (2 tools)
- MS Teams (11 tools)
- Intercom (69 tools)

Changes:
- Added readOnlyHint: true to read-only tools (queries, fetches)
- Added destructiveHint: true to tools that create/update/delete data
- Added title annotations for human-readable display

This improves tool safety metadata for MCP clients.

Co-Authored-By: Claude <noreply@anthropic.com>
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@bryankthompson

Copy link
Copy Markdown
Contributor Author

@CLAassistant check

@zihaolin96 zihaolin96 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, Thank you!

@zihaolin96 zihaolin96 merged commit bdbc798 into Klavis-AI:main Jan 13, 2026
1 check was pending
LLiuZheng pushed a commit that referenced this pull request Jan 16, 2026
Co-authored-by: triepod-ai <noreply@github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants