A named callable capability an agent or Model Context Protocol (MCP) host can use while doing factory work.
What It Is
A tool is a named callable capability an agent or Model Context Protocol (MCP) host can use while doing work—for example read a file, run a command, or call a Factory Session action such as you.factory_session.validate_source. The tool is that named capability and its contract (name, arguments, result), not the model-inference act of selecting and invoking it during a turn, not the factory that schedules work, and not the harness that runs the agent.
Why It Matters
Named tools give agents and hosts a stable catalog of actions they can discover and request by name. Operators and authors can reason about what a host or worker is allowed to do—validate a workflow, start a session, read a path—because each capability has an identity separate from any one turn. Without that catalog, factory work stays stuck in free-form text with no shared action vocabulary.
Simple Example
Factory Session exposes you.factory_session.validate_source as a named tool: a host or agent that knows that name can request validation of a workflow file and receive a structured result. The tool is the named capability. How a model chooses and invokes that name during a turn is tool calling; how an editor discovers it over stdio is MCP.
Common Confusions
A tool is the named callable capability. Tool calling is the model-inference behavior of selecting and invoking that capability during a turn—see the Tool calling concept. MCP is the host↔server protocol that can expose tools to an editor; it is not itself a tool. A skill is a reusable instruction package that may tell an agent when to use tools; it is not a callable tool name. The harness is the agent runtime that can load skills and run tools; it is not a tool. Thinking is internal reasoning before or between actions; it is not a callable capability with a tool name.