MCP Tool Annotations for Improved LLM Decision-Making
🙏 Contributed by Bryan Thompson (@triepod-ai) - Thank you!
PR: #328
Overview
This release adds comprehensive tool annotations to all 24 MCP tools, enabling MCP clients to make smarter decisions about tool execution and provide better user experiences through automatic approval of safe operations and confirmation prompts for destructive actions.
What's New
Tool Annotations Added:
readOnlyHint: Marks tools that only read data (safe for auto-approval)destructiveHint: Marks tools that modify/delete data (require user confirmation)title: Human-readable descriptions for better LLM understanding
Tool Classification:
- 🟢 Read-only tools (12):
retrieve_memory,recall_memory,search_by_tag,check_database_health,get_cache_stats, and more - 🔴 Destructive tools (9):
delete_memory,update_memory_metadata,cleanup_duplicates,rate_memory, and more - 🟡 Additive-only tools (3):
store_memory,ingest_document,ingest_directory(marked withdestructiveHint: false)
MCP SDK Update:
- Bumped dependency from
>=1.0.0to>=1.8.0for annotation support
Benefits
- ⚡ Faster Workflows - MCP clients can auto-approve read-only operations without user prompts
- 🛡️ Safety First - Destructive operations trigger confirmation prompts to prevent accidental data loss
- 🧠 Better LLM Decisions - Improved tool selection and execution patterns
- ✨ Enhanced UX - Clearer understanding of what each tool does and its safety implications
Technical Details
Files Changed:
src/mcp_memory_service/mcp_server.py- Added annotation importssrc/mcp_memory_service/server_impl.py- Annotated all 24 tool definitionspyproject.toml- MCP SDK dependency bump
Example Annotation:
@mcp.tool(
annotations=ToolAnnotations(
title="Store Memory",
destructiveHint=False, # Additive only, not destructive
),
)
async def store_memory(...):
...Credits
Special thanks to Bryan Thompson (@triepod-ai) for this excellent contribution! This feature significantly improves the safety and usability of the MCP Memory Service.
Full Changelog: https://github.com/doobidoo/mcp-memory-service/blob/main/CHANGELOG.md#8690---2026-01-04