Skip to main content
The gateway exposes two endpoints for interacting with Mako’s tool system directly, without going through the chat completion flow.

List tools

GET /v1/tools
Returns all available tools with their descriptions and parameter names.

Response

{
  "tools": [
    {
      "name": "get_eth_balance",
      "description": "Get ETH balance of an address on any EVM chain (default: ethereum)",
      "params": ["address", "chain"]
    },
    {
      "name": "get_crypto_price",
      "description": "Get live crypto price in USD from CoinGecko.",
      "params": ["coin"]
    }
  ]
}

Execute a tool

POST /v1/tools/execute
Runs a specific tool with the given arguments and returns the raw result.

Request body

tool
string
required
The tool name (e.g., "get_eth_balance").
args
object
Arguments to pass to the tool.

Example

curl -X POST https://gateway.deepmako.com/v1/tools/execute \
  -H "Content-Type: application/json" \
  -H "x-wallet-address: 0xYourAddress" \
  -d '{
    "tool": "get_eth_balance",
    "args": { "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "chain": "ethereum" }
  }'

Response

{
  "ok": true,
  "tool": "get_eth_balance",
  "result": {
    "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "balance_wei": "5688914350696581971",
    "balance_eth": "5.688914350696581971",
    "chain": "Ethereum"
  }
}
If the tool fails:
{
  "ok": false,
  "tool": "get_eth_balance",
  "error": "Tool timeout (15s)"
}
All tools have a 15-second timeout. If the underlying RPC or API call takes longer, the tool returns an error.