Skip to content

Commit 77022b7

Browse files
committed
chore: relicense to MPL-2.0, add README.md, bump 0.4.1
npm rejected 0.4.0 for missing README (it only recognises .md, not .adoc). Added README.md as a direct Markdown conversion of README.adoc, switched SPDX identifier in package.json to MPL-2.0, added README.md to the published files array, bumped version. Note: LICENSE file replacement and scattered SPDX-in-source-headers cleanup still needed for full MPL-2.0 consistency. https://claude.ai/code/session_01AQeaZPrDneQqFYxwxVTJqm
1 parent 3d64c06 commit 77022b7

2 files changed

Lines changed: 77 additions & 4 deletions

File tree

README.md

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
# boj-server
2+
3+
[![OpenSSF Best Practices](https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity)](https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/boj-server)
4+
[![Glama MCP Server](https://glama.ai/mcp/servers/hyperpolymath/boj-server/badge)](https://glama.ai/mcp/servers/hyperpolymath/boj-server)
5+
[![Green Hosting](https://api.thegreenwebfoundation.org/greencheckimage/boj-server.net)](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).

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"name": "@hyperpolymath/boj-server",
3-
"version": "0.4.0",
4-
"description": "Bundle of Joy (BoJ) MCP Server — cartridge-based DevOps + multi-agent coordination toolkit with 100 domain cartridges (database, container, git, k8s, observability, secrets, IaC, multi-instance AI coord, and more). Formally verified (Idris2) core; PMPL-1.0-or-later.",
5-
"license": "PMPL-1.0-or-later",
3+
"version": "0.4.1",
4+
"description": "Bundle of Joy (BoJ) MCP Server — cartridge-based DevOps + multi-agent coordination toolkit with 100 domain cartridges (database, container, git, k8s, observability, secrets, IaC, multi-instance AI coord, and more). Formally verified (Idris2) core; MPL-2.0.",
5+
"license": "MPL-2.0",
66
"author": "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>",
77
"repository": {
88
"type": "git",
@@ -42,7 +42,7 @@
4242
"files": [
4343
"mcp-bridge/",
4444
"LICENSE",
45-
"README.adoc"
45+
"README.md"
4646
],
4747
"publishConfig": {
4848
"access": "public",

0 commit comments

Comments
 (0)