Anthropic Python SDK v1.8.0 Released: Claude Opus 5.5 Support and Inline Tool Definitions

Anthropic Python SDK v1.8.0 adds Claude Opus 5.5, inline tool definitions, MCP pinning, and key stability fixes.
Anthropic's `anthropic-sdk-python` v1.8.0 delivers three major additions: support for the claude-opus-5-5 model, inline tool definitions for cleaner code organization, and beta MCP tool-list pinning for consistent toolsets in multi-turn conversations. On the stability front, it fixes a crash in Python 3.13 when streams remain open at program exit, makes `add_tools()` take effect immediately, and trims redundant data from tool runner requests. Documentation has been expanded for the Dreams, User Profiles, and Managed Agents modules, pointing to Anthropic's broader Agent development platform ambitions. An internal refactor replaces request parameter transform logic with a JSON encoder for a simpler serialization path. Breaking changes are minimal, making this a safe upgrade for production environments.
Anthropic's official Python SDK (anthropic-sdk-python) has released version v1.8.0. As the primary tool developers use to integrate with Claude models, this update brings meaningful improvements to API capabilities, tool system stability, and streaming. For teams building Claude-powered applications in Python, several new features are worth immediate attention.

Core New Features: Claude Opus 5.5 and Inline Tool Definitions
The most notable additions in this release are three API capability expansions.
The first is support for the claude-opus-5-5 model. Developers can now call this new model directly through the SDK without manually constructing version strings or waiting for additional adapters. For use cases that demand stronger reasoning and generation capabilities, this is the most straightforward reason to upgrade.
The second is inline tool definitions. Previously, defining tools required separate schema declarations; the inline approach allows developers to embed tool descriptions directly within a request, simplifying code organization and keeping tools more tightly coupled with their invocation logic.
The third is MCP tool-list pinning (currently in beta). Model Context Protocol (MCP) serves as a protocol for connecting external tools and context to models. The ability to pin tool lists helps maintain consistency in the available toolset across multi-turn interactions, avoiding uncertainty caused by dynamic changes to the tool list.
Model Context Protocol (MCP) is an open standard protocol championed by Anthropic, designed to provide a unified connection interface between large language models and external tools and data sources. Much like USB standardized how hardware peripherals connect, MCP lets developers declare and invoke tool capabilities through a standardized message format, without writing custom adapter logic for every tool. Tool-list pinning addresses the consistency problem in multi-turn conversation scenarios: if the set of available tools changes mid-session, the model may develop incorrect expectations about those tools, leading to failed calls or inconsistent behavior. By pinning the tool list, the available toolset is locked for the entire session, ensuring the model sees the same tool declarations in every interaction turn — which improves predictability in multi-step Agent workflows.
Stability Fixes for the Tool System and Streaming
Beyond new features, this release includes several critical stability fixes, primarily in the tool runner and streaming areas.
Tool Call Behavior Corrections
add_tools()now takes effect immediately (#874). Previously, newly added tools might not be applied right away; developers dynamically registering tools will now get more predictable behavior.- The tool runner's compaction requests now exclude reply-only params (#871), reducing redundant data in the request body and making tool call chains cleaner.
Streaming Crash Fix
A notable low-level fix: in Python 3.13, if a stream was still open when the program exited, it would previously trigger a crash. v1.8.0 fixes this exit-time exception. For production environments running newer Python versions with long-lived streaming responses, this fix provides a significant reliability improvement.
Additionally, the evaluated_permission enum in Managed Agents events now shares a single definition across multiple events, unifying the data structure for permission evaluation.
Documentation Improvements and Internal Refactoring
This release also invests heavily in documentation, covering several newer API modules:
- Dreams API reference has been expanded with improved field descriptions;
- User Profiles API now includes new documentation;
- Managed Agents API adds descriptions for memory store functionality;
- The
diagnosticsfield for beta messages and agent type descriptions for conversation threads have also been updated.
These documentation additions hint at the broader capability landscape Anthropic is building — concepts like Dreams, User Profiles, Managed Agents, and memory stores point toward a more complete Agent development framework, rather than a simple model-calling interface.
On the internal implementation side, two refactoring changes are worth noting: the client removed request parameter transform logic in favor of a JSON encoder (539422c), which generally means a cleaner and more maintainable request serialization path; internally, mypy has been removed, and tests have been fixed and fixtures updated.
The Dreams API, User Profiles API, and Managed Agents modules are not part of Claude's core conversational API — they are components of a higher-level Agent infrastructure that Anthropic is building. Managed Agents refers to agents whose lifecycles are managed by the platform; developers can configure persistent memory (memory store), permission policies, and cross-session context without managing state storage themselves. This is fundamentally different from the traditional stateless API call pattern — each call no longer starts from scratch, and agents can accumulate context across multiple interactions. The documentation of these capabilities signals that Anthropic is evolving the SDK from a pure model-calling tool into a more complete Agent development platform, on which developers can build complex applications with persistent state and dynamic permission control.
Upgrade Recommendations
Overall, v1.8.0 is a release that balances new functionality with stability improvements. Several types of users should particularly consider upgrading:
- Teams that need to use the claude-opus-5-5 model;
- Production services running on Python 3.13 that use the streaming API;
- Agent applications using the MCP protocol or dynamic tool registration via
add_tools().
Before upgrading, it's worth reviewing the full changelog from v1.7.0 to v1.8.0 to confirm that internal refactoring (such as changes to request parameter handling) won't affect any existing custom extension logic. Overall, this update introduces minimal breaking changes and is a minor version iteration that can be adopted with reasonable confidence.
Related articles

Bilibili's Hit Dify Tutorial: A Practical Guide to Building 20+ AI Apps from Scratch
A distilled guide to Bilibili's top-rated Dify tutorial: Windows + Docker deployment, MySQL connection, five app types, model integration strategy, and publishing.

Agent Skills Beginner's Guide: From Concepts to Multi-Agent Collaboration in Practice
A comprehensive guide to Agent Skills: core concepts, components, the importance of Description, standardization, beginner learning paths, and multi-agent collaboration.

One Neuron Detects Both Cats and Cars? We Reproduced It and Found a New Explanation
The cat-car neuron reinterpreted: researcher Cammarata argues it distinguishes pointy from round, not cats from cars. We reproduced the experiment and found the new explanation holds on most inputs—but cars are the exception. The interpretability debate continues on language models.