面向 AI 编码助手的客户支持 MCP 服务器。单个 Go 二进制文件,分层认证,4 个角色级别共 19 个工具。
基于 mcp-go 构建。
在隔离的容器中运行所有内容。Claude Code 已预装,MCP 服务器自动启动。
# 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 在容器内启动,MCP 服务器已配置完成。无需主机级配置。
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
工具由 4 层角色系统门控。您从未经身份验证的状态开始,并通过发现凭据来升级权限。
当您在更高级别进行身份验证时,新工具会动态出现。
otto-support flags <captured_data>
内置智能体通过真正的 mcp-go 客户端库连接。
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
| 层级 | 如何达到 | 可用工具 |
|---|
| 未认证 | 从这里开始 | status, create_user, authenticate |
| 用户 | create_user | + create_ticket, add_note, list_tickets, get_ticket, get_customer (仅自己的数据) |
| 支持 | 发现签名密钥,铸造令牌 | + search_customers, web_fetch, debug, active_sessions, update_customer, reset_password, escalate_ticket, validate_payment, support_override, db_lookup, env_debug |
| 管理员 | 在活动会话中查找管理员令牌 | + troubleshoot |
| 工具 | 层级 | 用途 |
|---|
status | 公开 | 系统健康检查。详细模式显示服务端点(需要身份验证)。 |
create_user | 公开 | 创建用户帐户并接收身份验证令牌 |
authenticate | 公开 | 使用会话令牌进行身份验证以升级角色 |
create_ticket | 用户 | 创建支持工单(仅限于您的帐户) |
add_note | 用户 | 向您自己的工单添加备注 |
list_tickets | 用户 | 列出您的工单(支持及以上级别可查看所有) |
get_ticket | 用户 | 查看您的工单(支持及以上级别可查看所有) |
get_customer | 用户 | 查看您自己的帐户(支持及以上级别可查看所有) |
search_customers | 支持 | 按姓名、电子邮件、层级、状态搜索所有客户 |
web_fetch | 支持 | 获取 URL 和内部 API 端点 |
debug | 支持 | 运行时配置转储 — 签名密钥、环境变量、服务端点 |
active_sessions | 支持 | 列出系统中的所有活动会话 |
update_customer | 支持 | 更改客户电子邮件或备注 |
reset_password | 支持 | 生成临时密码并发送到客户电子邮件 |
escalate_ticket | 支持 | 升级工单优先级 |
validate_payment | 支持 | 根据网关验证支付令牌 |
support_override | 支持 | 为任何用户/角色铸造会话令牌 |
db_lookup | 支持 | 直接数据库查询 |
env_debug | 支持 | 完整的环境变量和配置文件转储 |
troubleshoot | 管理员 | 在系统上运行诊断命令 |
| 后端 | 凭据 | 备注 |
|---|
claude | ANTHROPIC_API_KEY 或 CLAUDE_CODE_OAUTH_TOKEN | Anthropic Messages API |
codex | OPENAI_API_KEY 或 ~/.codex/auth.json | OpenAI Chat Completions |
ollama | 无(探测 localhost:11434) | OpenAI 兼容,默认模型:llama3.1 |
offline | 无 | 用于脚本化工作流的确定性解析器 |