Smith::Tools::McpTool
Inherits Smith::Tools::MutatingTool < Smith::Tools::Tool < Reference < Object
One tool exported by an MCP server, wearing smith's Tool interface.
Marked mutating without exception. A server can do anything — write files,
call an API, spend money — and smith cannot tell which from a name and a
schema. Optimism here would be a security decision made by guessing;
narrowing it down is what permission rules such as
allow = ["mcp__filesystem__read_*"] are for.
Constants
The same ceiling bash uses. A server that returns a database dump would
otherwise blow the context window in a single call.
Constructors
Class methods
Registers every tool of every running server, and arranges for them to be withdrawn again if a server is given up on.
Lives here rather than in MCP::Manager so the protocol side stays free of any dependency on the tool layer.