#109 MCP Logging — Fully operational. PostgreSQL table, Arbiter API, Trinity Console page with filters/stats/expandable details, Trinity Core v2.3.0 POSTs logs after every command. #111 Trinity Core Web MCP — Completed by Chronicler #77. Claude.ai native connector working since Apr 11. #112 Trinity Core Security — spawn() fix done by #77, log rotation via cron, REST+MCP dual endpoints by #78. Chronicler #78 | firefrost-operations-manual
2.1 KiB
2.1 KiB
task_number, title, status, priority, is_blocker, owner, tags, estimated_hours
| task_number | title | status | priority | is_blocker | owner | tags | estimated_hours | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 111 | Trinity Core Native Web MCP Connector | Complete | P1-High | false | Michael |
|
2 |
Trinity Core Native Web MCP Connector
Upgrade Trinity Core from REST API to native Claude.ai web connector using MCP SDK with SSE transport and OAuth shim.
Why
Currently Claude can't call Trinity Core directly. This upgrade enables Claude to execute commands on Firefrost servers directly from claude.ai web — no Desktop app, no curl commands, no manual intervention.
This is the RV dream: Full infrastructure access from any browser, anywhere.
Prerequisites
- Trinity Core v1 deployed ✅
- SSH keys configured ✅
- Cloudflare Tunnel active ✅
Full Implementation
See docs/consultations/gemini-mcp-web-implementation-2026-04-11.md for complete code (Blocks A-F) and step-by-step instructions.
Quick Summary
- Update package.json — Add
"type": "module", install@modelcontextprotocol/sdkandcors - Replace index.js — MCP SDK with SSE transport + OAuth shim
- Register in Claude.ai — Settings → Connectors → Add custom →
https://mcp.firefrostgaming.com/mcp
Architecture
Claude.ai (browser)
↓ MCP over SSE
Trinity Core (mcp.firefrostgaming.com)
↓ SSH
Target Server
New Endpoints
| Endpoint | Purpose |
|---|---|
GET /.well-known/oauth-protected-resource |
OAuth discovery |
GET /authorize |
Auto-approve redirect |
POST /token |
Return Bearer token |
GET /mcp |
Establish SSE stream |
POST /mcp/messages |
Receive tool calls |
Tools Exposed
| Tool | Description |
|---|---|
list_servers |
Get available Firefrost servers |
run_command |
Execute SSH command on specified server |
Testing
Before registering with Claude.ai:
npx @modelcontextprotocol/inspector node index.js
Security Notes
- CORS configured for
https://claude.aionly - OAuth shim auto-approves (single user)
- Consider adding
express-rate-limitfor hardening