Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions src/mcp/types.py
Original file line number Diff line number Diff line change
Expand Up @@ -871,6 +871,19 @@ class ToolAnnotations(BaseModel):
class Tool(BaseMetadata):
"""Definition for a tool the client can call."""

name: str
"""
Intended for programmatic or logical use, but used as a display name
in past specs or fallback (if title isn’t present).
"""
title: str | None = None
"""
Intended for UI and end-user contexts — optimized to be human-readable
and easily understood, even by those unfamiliar with domain-specific terminology.

If not provided, the name should be used for display
(except for Tool, where annotations.title should be given precedence over using name, if present).
"""
description: str | None = None
"""A human-readable description of the tool."""
inputSchema: dict[str, Any]
Expand Down