Your First Generated Tool
MCP tool definitions are generated from the Semantic Manifest. Each manifest operation becomes a callable tool that agent runtimes can discover and invoke.
From Manifest to Tool
Given the manifest entry from the previous step, the generated MCP tool definition is:
MCP tool — product_search
{
"tool_name": "product_search",
"description": "Search the product catalog by text query with optional filters",
"input_schema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text search query for product name, description, or SKU"
},
"category": {
"type": "string",
"description": "Filter by product category"
},
"price_min": {
"type": "number",
"description": "Minimum price filter"
},
"price_max": {
"type": "number",
"description": "Maximum price filter"
}
},
"required": ["query"]
},
"safety": {
"execution_type": "read",
"risk_level": "none",
"idempotent": true,
"confirmation_required": false
}
}
Tool Structure
MCP tool definitions contain:
| Field | Purpose |
|---|---|
tool_name | Unique identifier derived from intent |
description | Human-readable description for agent planning |
input_schema | JSON Schema for tool parameters |
safety | Execution type, risk, idempotency, confirmation |
How Agents Use This Tool
An agent runtime:
- Discovers
product_searchin the tool registry - Plans to use it based on user request (e.g., "Find red running shoes under $100")
- Constructs parameters:
{ "query": "red running shoes", "price_max": 100 } - Validates that required parameters are present
- Checks safety — read operation, no risk, no confirmation needed
- Executes the tool
- Returns results to the user