Tools
Tools are the core building blocks of almyty. Each tool represents a single callable action — an API endpoint, a JavaScript function, a GraphQL query, or an LLM-powered operation. Tools are what AI agents actually invoke when they need to interact with the outside world.
Tool Types
almyty supports five tool types:
| Type | Source | Description |
|---|---|---|
| API | Auto-generated | Created from imported API schemas (OpenAPI, GraphQL, SOAP, Protobuf) |
| HTTP | Manual | Custom HTTP request tool with configurable method, URL, headers, body |
| JavaScript | Manual | Sandboxed JavaScript function with full parameter control |
| GraphQL | Manual | Custom GraphQL query or mutation tool |
| LLM | Manual | LLM-powered tool that generates output from a prompt template |
Auto-Generated Tools
When you import an API schema, almyty parses each operation and creates a tool:
- OpenAPI — Each path + method combination becomes a tool
- GraphQL — Each query and mutation becomes a tool
- SOAP — Each operation in the WSDL becomes a tool
- Protobuf — Each RPC method becomes a tool
Auto-generated tools include:
- Name derived from the operation ID or path
- Description from the operation summary or description
- Parameters with full JSON Schema types, validation, and descriptions
- Metadata linking back to the source API and operation
Tool Lifecycle
| Status | Description |
|---|---|
active | Tool is available for execution and gateway assignment |
inactive | Tool exists but cannot be executed |
deprecated | Tool is marked for removal, still functional |
error | Tool has a configuration issue |
Listing Tools
curl https://api.almyty.com/organizations/{orgId}/tools \
-H "Authorization: Bearer $TOKEN"Response:
{
"tools": [
{
"id": "tool-uuid",
"name": "get_users",
"description": "Retrieve a list of users",
"type": "api",
"status": "active",
"metadata": {
"autoGenerated": true,
"sourceApi": { "id": "api-uuid", "name": "User Service" },
"sourceOperation": { "method": "GET", "endpoint": "/users" }
},
"parameters": {
"type": "object",
"properties": {
"page": { "type": "integer", "description": "Page number" },
"limit": { "type": "integer", "description": "Items per page" }
}
}
}
]
}Executing a Tool
curl -X POST https://api.almyty.com/organizations/{orgId}/tools/{toolId}/execute \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"page": 1,
"limit": 10
}
}'Response:
{
"success": true,
"data": {
"result": { "users": [...], "total": 42 },
"duration": 234,
"status": "success"
}
}Deleting a Tool
curl -X DELETE https://api.almyty.com/tools/{toolId} \
-H "Authorization: Bearer $TOKEN"Deleting a tool removes it from all gateways it was assigned to.
Export Formats
Each tool can be exported in multiple formats:
- SKILL.md — Agent Skills format for SKILL.md injection
- CLI — Bash or Node.js command-line scripts
- SDK — Generated SDK code for programmatic use
See the individual tool type pages for type-specific details.