View on GitHub

Matimo - AI Tools Ecosystem

Define tools once in YAML, use them everywhere

Download this project as a .zip file Download this project as a tar.gz file

YAML Tool Specification

Complete guide to writing Matimo tools in YAML format.

Quick Reference

See the detailed specification for complete documentation.

Quick tool template:

name: my_tool
description: Brief description
version: '1.0.0'

parameters:
  query:
    type: string
    description: What this parameter does
    required: true

execution:
  type: http
  method: GET
  url: 'https://api.example.com/search'
  query_params:
    q: '{query}'

output_schema:
  type: object
  properties:
    result:
      type: string

Key Sections

Section Purpose
name Unique tool identifier (snake_case, matching its directory)
description One-line description
version Semantic version (e.g., 1.0.0)
parameters Tool input parameters
execution How the tool runs (HTTP, command or function)
output_schema What the tool returns; max_response_size caps it
authentication OAuth2/API key config (optional)
requires_approval Ask a human before every call (optional; DELETE and command tools ask by default)
risk low / medium / high / critical (optional; required for function tools)
status draft / approved / deprecated (optional)
error_handling Retry settings (optional; accepted but not yet applied)

Full Specification

The complete YAML schema documentation is in TOOL_SPECIFICATION.md.

Topics covered:

Next Steps