Otōto in your coding agent
Otōto is an MCP server: ototo serve speaks the Model Context Protocol over standard input and output, and any
agent that can start a command as an MCP server can use it.
| Agent | Set up by | Page |
|---|---|---|
| Claude Code | ototo init: the registration, Otōto’s block in CLAUDE.md, and its permissions and hooks in settings.json | claude-code.md |
| OpenCode | ototo init: the server in opencode.json, with time for long questions, its instructions, and OpenCode’s own search off | opencode.md |
| Pi | by hand, one command | pi.md |
| Another MCP client | by hand | below |
Another MCP client
Register this command as a local (stdio) MCP server, under the name ototo:
~/.local/bin/ototo serve
Three things ototo init does for Claude Code and OpenCode are then yours to do:
- Time.
ask,locate,callersandeditwait for a small model, and can take minutes. Give the server’s calls a long timeout if your agent has one to set (Otōto gives OpenCode thirty minutes). - Instructions. An agent uses new tools well when it is told when to: for any question about the code, first
call
askwith the whole question; read withreadandoutline; search withsearch. Otōto’s block for Claude Code,dist/CLAUDE.ototo.md, is the text to adapt. - The model server. Otōto’s own settings are in
~/.config/ototo/config.toml(dist/config.toml.example): the model server’s address and model.ototo initfinds a model server, tests it and writes that file. In 2026.19 and earlier it runs only where Claude Code or OpenCode is installed; without them, copy the example and fill it in, and check withototo doctor. Later releases set up Otōto’s own side wherever they are run, and say what is left to register.