|
| 1 | +# boj-server |
| 2 | + |
| 3 | +[](https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/boj-server) |
| 4 | +[](https://glama.ai/mcp/servers/hyperpolymath/boj-server) |
| 5 | +[](https://www.thegreenwebfoundation.org/green-web-check/?url=boj-server.net) |
| 6 | + |
| 7 | +BoJ (Bundle of Joy) is a unified MCP server that consolidates all hyperpolymath tooling into a single endpoint — GitHub, GitLab, Cloudflare, Vercel, Verpex, Gmail, Calendar, browser automation, research, ML, and 50+ open-source cartridges. |
| 8 | + |
| 9 | +## Install |
| 10 | + |
| 11 | +Add to Claude Code: |
| 12 | + |
| 13 | +```bash |
| 14 | +claude mcp add boj-server -- npx -y @hyperpolymath/boj-server@latest |
| 15 | +``` |
| 16 | + |
| 17 | +Or clone and configure: |
| 18 | + |
| 19 | +```bash |
| 20 | +git clone https://github.com/hyperpolymath/boj-server |
| 21 | +cd boj-server/mcp-bridge && npm install |
| 22 | +# Start the BoJ REST API first (port 7700), then: |
| 23 | +claude mcp add boj-server -- node mcp-bridge/main.js |
| 24 | +``` |
| 25 | + |
| 26 | +Glama listing: <https://glama.ai/mcp/servers/hyperpolymath/boj-server> |
| 27 | + |
| 28 | +## Features |
| 29 | + |
| 30 | +- **GitHub/GitLab** — repos, issues, PRs, code search, mirroring (22 tools) |
| 31 | +- **Cloud** — Cloudflare (DNS, Workers, KV, R2, D1), Vercel (deployments, projects), Verpex (cPanel) |
| 32 | +- **Communication** — Gmail, Google Calendar |
| 33 | +- **Browser** — Firefox automation: navigate, click, type, screenshot, arbitrary JS (7 tools) |
| 34 | +- **Code Intelligence** — CodeSeeker hybrid search + graph RAG |
| 35 | +- **Research** — Semantic Scholar papers, citations, authors |
| 36 | +- **ML** — Hugging Face model / dataset / inference |
| 37 | +- **Local coordination** — `local-coord-mcp` (24 tools): multi-instance AI peer discovery, typed envelopes, claim/heartbeat/watchdog, quarantine + master/journeyman/apprentice supervision, track-record affinity, capability advertisement |
| 38 | +- **Cartridges** — 100 pluggable cartridges across Teranga / Shield / Ayo trust tiers |
| 39 | + |
| 40 | +## Local-coord-mcp at a glance |
| 41 | + |
| 42 | +Localhost multi-agent bus on `127.0.0.1:7745`. Lets multiple Claude / Gemini / Codex / Vibe sessions on the same machine discover each other, claim tasks without collision, and operate under a supervision model (master approves; journeyman executes; apprentice stays gated). |
| 43 | + |
| 44 | +Highlights: |
| 45 | + |
| 46 | +- **Peer registration** with `client_kind`, `variant` (model id — `opus-4.7`, `flash-2.5`, `leanstral`), capability class/tier/prover-strengths — `coord_register`, `coord_set_variant`, `coord_set_capabilities`, `coord_get_peer_capabilities`. |
| 47 | +- **Typed envelopes** validated at the bridge via Nickel contracts (`coord-messages.ncl`) — `coord_send`, `coord_send_gated`. |
| 48 | +- **Task claims** with role-based watchdog TTL (apprentice 30s / journeyman 5m / master none), heartbeats via `coord_progress`, auto-release + explicit `coord_sweep_watchdog`. |
| 49 | +- **Track-record + reassignment** — `coord_report_outcome`, `coord_get_affinities`, `coord_scan_suggestions` (emits `overclaim` fyi + `drift` warn envelopes on confidence/affinity divergence). |
| 50 | +- **Supervision** — `coord_review`, `coord_approve`, `coord_reject`, `coord_promote_to_master`, `coord_transfer_master`. |
| 51 | +- **Observability** — `coord_health` snapshot of peer/quarantine/claim/reject state. |
| 52 | + |
| 53 | +Formally verified core in Idris2 (`cartridges/local-coord-mcp/abi/LocalCoord/`); Zig FFI; Deno/Node MCP bridge with input hardening (rate limiting, prompt-injection detection with unicode-normalisation, error sanitisation). |
| 54 | + |
| 55 | +## Glama AAA posture |
| 56 | + |
| 57 | +This server targets Glama's AAA tier. Posture: |
| 58 | + |
| 59 | +- **Inspectable** — `.mcp.json` + root `package.json` `bin` entry + shebang; offline manifest fallback so cloud inspection works without the REST backend (see `mcp-bridge/lib/offline-menu.js`). |
| 60 | +- **Tool Definition Quality** — every tool carries purpose, usage guidance, behavioural transparency (side effects, returns, errors), and parameter semantics with enums, ranges, and patterns. A coherence test enforces a minimum description floor so the server-level score (60% mean + 40% *min*) cannot regress — see `mcp-bridge/tests/dispatch_test.js`. |
| 61 | +- **Server Coherence** — one tool ↔ one verb; consistent `boj_<domain>_<action>` and `coord_<action>` naming; the same test asserts the bridge tool list matches the cartridge manifest so nothing advertised is un-dispatched (or vice versa). |
| 62 | +- **Security** — PR #27 hardening: rate limiting, size caps, prompt-injection detection with unicode-confusable normalisation, error sanitisation (strips paths, stack traces, env vars). SHA-pinned workflow actions. |
| 63 | +- **Formal** — `cartridges/local-coord-mcp/abi/LocalCoord/*.idr` Idris2 ABI + proof obligations (P-01..P-07). |
| 64 | + |
| 65 | +Run the coherence tests: |
| 66 | + |
| 67 | +```bash |
| 68 | +npm test |
| 69 | +``` |
| 70 | + |
| 71 | +## License |
| 72 | + |
| 73 | +MPL-2.0 — see [LICENSE](./LICENSE). |
0 commit comments