Tools Reference
The complete schema for building tools — template tools that orchestrate built-in primitives, and webhook tools that call your own endpoint.
This reference covers how to define tools that install inside Tyrex AI — whether you're building one for your own AIs or listing it in the Marketplace. There are two kinds, and the schema is exact: the platform validates tools against it.
Every tool is described as a JSON definition in a standard function-tool format (name, description, parameters) — the same format the AI models use internally. Because tools follow this schema, a purchased tool registers instantly with zero conversion.
The two kinds
| Kind | How it works | Best for |
|---|---|---|
| Template | Orchestrates Tyrex's built-in primitives (search, web, code, files, memory) | Everything that can be composed from existing capabilities — zero servers, zero cost |
| Webhook | Forwards arguments to your own endpoint and returns the result | Anything that needs your live data or your own services |
Template tools
A template tool is configuration plus orchestration instructions. When the AI calls it, Tyrex runs the primitives you specified in the order your instructions describe.
{
"name": "make_questions",
"description": "Create practice questions from the attached knowledge",
"parameters": {
"type": "object",
"properties": {
"topic": { "type": "string", "description": "The topic to cover" },
"count": { "type": "integer", "description": "How many questions" },
"difficulty": {
"type": "string",
"enum": ["easy", "medium", "hard"],
"description": "Difficulty level"
}
},
"required": ["topic"]
},
"primitives": ["rag_query", "create_artifact"]
}
Plus an instruction appended to the description, telling the AI how to compose the steps:
Search the attached knowledge for the requested topic and count.
Draft questions at the requested difficulty.
Save them as a PDF artifact and return the download link.
Available primitives
Template tools can orchestrate any of the platform's built-in capabilities. The core set:
| Primitive | What it does |
|---|---|
rag_query | Search the AI's attached knowledge base |
web_search | Search the web for current information |
web_fetch | Read a specific web page |
run_python | Execute Python for calculations and data work |
create_artifact | Generate a real file (PDF, Word, PowerPoint, Excel) |
store_memory / recall_memories | Write and recall durable facts |
calculate | Arithmetic and conversions |
current_datetime | Current date and time |
Beyond the core set, other built-in capabilities (artifact search and viewing, project and workspace access, file editing, visualization) are also addressable by their tool name. Primitives are resolved against the live tool registry at run time — referencing a name that doesn't exist returns a clear error in the run, so you can test and adjust.
Every primitive you list runs on each call. List only what the tool actually needs — a question generator needs rag_query and create_artifact, not the full registry.
Webhook tools
A webhook tool forwards the model's arguments to an endpoint you control. Your endpoint receives the arguments as JSON and returns a result the AI can use.
{
"name": "check_stock",
"description": "Check product stock at the store",
"parameters": {
"type": "object",
"properties": {
"sku": { "type": "string", "description": "Product SKU" }
},
"required": ["sku"]
},
"webhookUrl": "https://api.yourstore.com/check-stock"
}
Field validation (exact)
| Field | Rule |
|---|---|
name | 1–64 characters: letters, numbers, underscore, dash |
description | Max 2,000 characters (shown to the model) |
parameters | JSON Schema object with properties and required |
webhookUrl | HTTPS endpoint you control — validated against server-side request forgery (Tyrex will never fetch internal addresses) |
timeoutMs | 1,000–30,000 (default 15,000) |
rateLimitPerMinute | 1–120 (default 10) |
The request your endpoint receives
POST https://api.yourstore.com/check-stock
Content-Type: application/json
{
"sku": "FNB-001"
}
Your endpoint should respond with JSON within the timeout. Large responses are truncated with a marker, so keep payloads compact.
Security rules for webhook tools
- HTTPS only.
- No internal addresses — the platform blocks requests to private networks and localhost.
- Rate limited — per tool, per user, per minute (default 10).
- Timeout enforced — 30 seconds maximum.
Where tools live after install
Installed tools appear in the buyer's AI Library under Tools. They can be:
- Attached to one or more personas (each persona gets a private, scoped copy of the tool).
- Removed at any time.
- Re-listed by the creator, or used privately without listing.
Common validation mistakes
- Missing
requiredin parameters — the AI needs to know which arguments are mandatory. - Unknown primitive in a template tool — stick to the list above.
http://webhook URL — HTTPS is required.- Over-long description — keep it under 2,000 characters; the model reads it to decide when to call the tool.
For packaging whole skills (a tool plus instructions, examples, and references), see the Skills & plugins guide. To list your tool in the Marketplace, see Sell on the Marketplace.