Open Source · MIT Licensed

Define AI tools once.
Use them everywhere.

A universal, framework-agnostic tools SDK. Write tools once in clean YAML and seamlessly integrate with LangChain, OpenAI Agents, Claude, CrewAI, and any custom AI framework - zero duplication.

Get Started in 5min → View on GitHub ↗
MIT License TypeScript Zod Validation OAuth2 npm ↗
slack-tool.yaml
name: slack_send_message
description: Post message to Slack channel
parameters:
  channel:
    type: string
    required: true
  text:
    type: string
    required: true
execution:
  type: http
  method: POST
  url: https://slack.com/api/chat.postMessage
  headers:
    Authorization: Bearer {SLACK_BOT_TOKEN}
use-tool.ts
import { MatimoInstance } from 'matimo';

const matimo = await MatimoInstance.init();
// Works with LangChain, OpenAI, CrewAI...
const tools = matimo.listTools()
  .map(t => toLangChainSchema(t));
// ✓ Same tools, any framework
0
Tool Duplicates
8
Tool Providers
3
Integration Patterns
5 min
To First Tool

Powerful features for serious AI builders

Define Once

Write tools in simple YAML. No duplicating schemas across frameworks. One definition powering infinite integrations.

Use Everywhere

Plug into LangChain, OpenAI Agents, Claude, CrewAI, and any custom framework. No lock-in. No rewrites when you switch.

Pre-Built Tool Providers

Includes providers for Slack, Gmail, GitHub, Notion, HubSpot, PostgreSQL, Mailchimp, and Twilio. Add your own in minutes.

OAuth2 Ready

Provider-agnostic OAuth2 support built in. Google, GitHub, Slack, and any service - secure auth without the boilerplate.

Type-Safe

Full TypeScript support with Zod-powered runtime validation. Catch parameter errors at build time, not in production at 2am.

Framework Agnostic

Works with every AI framework. Migrate from LangChain to CrewAI without rewriting a single tool definition. Future-proof your tooling.

Three ways to integrate

Choose the pattern that fits your architecture. All three use the same tool definitions.

1

Factory Pattern

Simple and direct. Load tools and execute by name. Perfect for CLI tools and quick prototypes.

const m = await MatimoInstance.init();
await m.execute('slack-send', params);
2

Decorator Pattern

Class-based, idiomatic OOP. Use the @tool decorator for natural object-oriented execution.

@tool('slack-send')
async notifyTeam(msg) {
  // Auto-executed
}
3

Framework Integration

Full LangChain, OpenAI, or CrewAI integration. Convert Matimo tools to framework schemas automatically.

const tools = matimo
  .listTools()
  .map(t => toLangChain(t));

Growing library of pre-built tools

Every tool follows the same YAML pattern. Start with ours, add your own in minutes.

💬
Slack
Messages, channels, users
📧
Gmail
Send, read, labels
🐙
GitHub
Issues, PRs, code
📝
Notion
Pages, databases
🐘
PostgreSQL
Query, insert, update
🧡
HubSpot
CRM, contacts, deals
📨
Mailchimp
Campaigns, lists
📱
Twilio
SMS, voice, verify

One tool definition.
Any AI framework.

The AI framework space moves fast. LangChain, CrewAI, custom agents - switching frameworks typically means rewriting tool integration logic from scratch. Matimo OSS is designed to remove that duplication by keeping your tool definitions in one place.

Start Building → Join Discord ↗
No Tool Duplication - Define once, reuse everywhere across every framework
Framework Freedom - Migrate between AI frameworks without rewriting tools
Faster Development - Pre-built tools for common integrations from day one
Type Safe - TypeScript + Zod validation catches errors early in CI
Community Tools - Growing ecosystem of @matimo/* packages on npm
Enterprise Ready - OAuth2, error handling, retry logic built-in by default
Open Source - MIT licensed, fully transparent, community-owned
Matimo Governance

Need Matimo OSS at organisation scale?

Matimo OSS covers individual and small team use. Matimo Governance adds the controls that compliance, security, and IT teams require: SSO, centralised policy registry, immutable audit log export, multi-tenant isolation, and a dedicated SLA.

Request Matimo Governance → Learn more ↗
SSO / SAML / OIDC integration
Centralised policy registry with versioning
Immutable audit log export (SIEM-ready)
Multi-tenant isolation & role hierarchy
Dedicated support + SLA

Unify your AI tools today.
It's free. It's open source.

Join the community building with Matimo OSS. Get started in 5 minutes - no account needed.

Quick Start → Visit matimo.dev ↗ 💬 Discord