Original: Anthropic Engineering · 29/01/2026
Summary
Tools are a new kind of software which reflects a contract between deterministic systems and non-deterministic agents. The Model Context Protocol (MCP) can empower LLM agents with potentially hundreds of tools to solve real-world tasks. But how do we make those tools maximally effective? In this post, we describe our most effective techniques for improving performance in a variety of agentic AI systems 1 . We beginKey Insights
“Tools are a new kind of software which reflects a contract between deterministic systems and non-deterministic agents.” — Describing the overarching goal of developing tools for AI agents.
“Our goal is to increase the surface area over which agents can be effective in solving a wide range of tasks by using tools to pursue a variety of successful strategies.” — Highlighting the importance of evaluation in the tool development process for AI agents.
“Building an evaluation allows you to systematically measure the performance of your tools.” —
Topics
Full Article
Published: 2026-01-29
Source: https://www.anthropic.com/engineering/writing-tools-for-agents
The Model Context Protocol (MCP) can empower LLM agents with potentially hundreds of tools to solve real-world tasks. But how do we make those tools maximally effective? In this post, we describe our most effective techniques for improving performance in a variety of agentic AI systems 1 . We begin by covering how you can: Build and test prototypes of your tools Create and run comprehensive evaluations of your tools with agents Collaborate with agents like Claude Code to automatically increase the performance of your tools We conclude with key principles for writing high-quality tools we’ve identified along the way: Choosing the right tools to implement (and not to implement) Namespacing tools to define clear boundaries in functionality Returning meaningful context from tools back to agents Optimizing tool responses for token efficiency Prompt-engineering tool descriptions and specs Building an evaluation allows you to systematically measure the performance of your tools. You can use Claude Code to automatically optimize your tools against this evaluation. What is a tool? In computing, deterministic systems produce the same output every time given identical inputs, while non-deterministic systems—like agents—can generate varied responses even with the same starting conditions. When we traditionally write software, we’re establishing a contract between deterministic systems. For instance, a function call like
Key Takeaways
Notable Quotes
Tools are a new kind of software which reflects a contract between deterministic systems and non-deterministic agents.Context: Explaining the fundamental difference between traditional software tools and those designed for AI agents.
Our goal is to increase the surface area over which agents can be effective in solving a wide range of tasks by using tools to pursue a variety of successful strategies.Context: Describing the overarching goal of developing tools for AI agents.
Building an evaluation allows you to systematically measure the performance of your tools.Context: Highlighting the importance of evaluation in the tool development process for AI agents.
Related Topics
- [[topics/prompt-engineering]]
- [[topics/agent-native-architecture]]
- [[topics/anthropic-api]]
- [[topics/ai-agents]]
Related Articles
Effective harnesses for long-running agents
Anthropic Engineering · how-to · 79% similar
How we built our multi-agent research system
Anthropic Engineering · explanation · 79% similar
Code execution with MCP: Building more efficient agents
Anthropic Engineering · explanation · 78% similar
Originally published at https://www.anthropic.com/engineering/writing-tools-for-agents.