How to use Trytet

1. Install

curl -sL https://github.com/bneb/trytet/releases/latest/download/tet-darwin-arm64.tar.gz | tar xz
./tet doctor
./tet mcp --list-tools

Or: npm install trytet-client, pip install trytet-client, docker pull ghcr.io/bneb/trytet:latest.

2. Connect to Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "trytet": {
      "command": "/path/to/tet",
      "args": ["mcp"]
    }
  }
}

Restart Claude Desktop. Tools appear automatically. Run tet mcp --list-tools to see what's available.

3. SDK quickstart

// TypeScript
import { TrytetClient } from 'trytet-client';
const client = new TrytetClient({ baseUrl: 'http://localhost:3000' });
const tools = await client.listTools();
# Python
from trytet_client import TrytetClient
async with TrytetClient("http://localhost:3000") as client:
    tools = await client.list_tools()

4. Write a cartridge

Cartridges are Wasm components implementing the cartridge-v1 WIT interface:

wit_bindgen::generate!({ world: "tool-guest", path: "wit/cartridge.wit" });

struct MyCartridge;
impl Guest for MyCartridge {
    fn execute(input: String) -> Result<String, String> {
        Ok(input.to_uppercase())
    }
}
export!(MyCartridge);

Build: cargo component build --release. Place the .wasm in ~/.trytet/cartridges/ and register it via McpServer::register_tool().