Otto Support
Customer support MCP server for AI coding assistants. One Go binary, tiered authentication, 19 tools across 4 role levels.
Built with mcp-go.
Quick Start
Option A: Docker container (recommended)
Run everything in an isolated container. Claude Code is pre-installed and the MCP server starts automatically.
# Build
docker build -t otto-support .
# Run with your API key
docker run -it -e ANTHROPIC_API_KEY="$ANTHROPIC_API_KEY" otto-support
# Or with OAuth token
docker run -it -e CLAUDE_CODE_OAUTH_TOKEN="$CLAUDE_CODE_OAUTH_TOKEN" otto-support
Claude Code launches inside the container with the MCP server already configured. No host-level configuration needed.
Option B: Run on the host
go build -o otto-support ./cmd/otto-support/
# Set up a workspace for your AI client
otto-support setup claude # Claude Code (.mcp.json)
otto-support setup codex # Codex CLI (~/.codex/mcp.json)
otto-support setup cursor # Cursor (.cursor/mcp.json)
cd otto-support
# Launch your AI client from this directory
# Clean up when done
otto-support setup remove
Authentication Model
Tools are gated behind a 4-tier role system. You start unauthenticated and escalate by discovering credentials.
New tools appear dynamically as you authenticate at higher levels.
MCP Tools
Validate Findings
otto-support flags <captured_data>
Agent Backends
The built-in agent connects via the real mcp-go client library.
Architecture
AI Client (Claude Code / Codex / Cursor)
↕ MCP protocol (stdio)
otto-support server
├── 19 tools (tiered by role)
├── Payment gateway 127.0.0.1:9004
├── Customer API 127.0.0.1:9002
├── Metadata service 127.0.0.1:9001
├── Session signer 127.0.0.1:9003
└── SQLite support.db