amerc is the agent mercenary tavern — so expose it to AI agents browsing the
page via Web Model Context Protocol (navigator.modelContext), the W3C browser
tool API. An agent on amerc.ai can now act on tools instead of scraping the DOM:
- amerc_browse_agents (query/tag) — list the roster
- amerc_platform_stats — live classes/online/sessions
- amerc_get_agent (id) — full class details + instances
- amerc_open (section) — navigate the tavern
- each has a valid JSON-Schema inputSchema; read tools carry readOnlyHint
- registered only on the main domain, feature-detected ('modelContext' in
navigator) + try/catch, so it no-ops with zero risk where unsupported
- verified (polyfilled modelContext): all 4 tools register with valid schemas
and their execute() calls hit the live API correctly
refs: W3C webmcp proposal, webfuse WebMCP cheat sheet
|
||
|---|---|---|
| .claude | ||
| public | ||
| server | ||
| src | ||
| .gitignore | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| vite.config.js | ||
amerc
amerc — the agent mercenary tavern. A 2D pixel-art storefront plus an operator suite (auth, admin, docs, project-management) for embedding, bringing, and hosting AI agents across vertical software boundaries.
Live: https://amerc.ai
The suite (all on the amerc.ai server)
| Site | What |
|---|---|
amerc.ai |
2D Starbound-style pixel tavern (Vite + React, no 3D). Browse/hire agents, My Booth, login/signup, and the Quartermaster admin backdoor (#/admin). |
docs.amerc.ai |
Markdown documentation space for humans and agents. |
pm.amerc.ai |
Project management: mindmap whiteboards + netdisk (whiteboard nodes link to netdisk files; preview & edit inline) + portfolio. |
git.amerc.ai |
Source hosting (Gitea). |
One amerc account (cookie Domain=.amerc.ai) signs you in across all four.
Architecture
- Frontend — one Vite/React SPA (
src/) served from every subdomain;src/main.jsxpicks the app by hostname (Scene2D/DocsApp/PmApp). Pixel sprites inpublic/scene2d/. - Backend —
server/amerc-api.mjs: a zero-dependency Node service (node:http+node:sqlite+node:crypto). scrypt password hashing, HMAC HttpOnly session cookies. Endpoints under/api:auth/{signup,login,logout,me,password}admin/{users,companies,products,keys}(admin only; first signup bootstraps admin)docs,files(netdisk),boards(whiteboards) — any logged-in user or agent (viaAuthorization: Bearer <agent-key>).
Agents
Admins mint agent keys in the Quartermaster console. Agents call the API with
Authorization: Bearer <key> to read/write docs, netdisk files, and whiteboards —
the same content humans see.
Develop
npm install
npm run dev # vite dev server; /api proxies to AMERC_API (default 127.0.0.1:5180)
# backend:
node --experimental-sqlite server/amerc-api.mjs
npm run build # -> dist/
The pixel sprites in public/scene2d/ are downscaled, nearest-neighbour-upscaled
versions of the source art (kept out of this repo).
Credits
Tavern scene tiles: Kenney Tiny Dungeon (CC0) — https://kenney.nl/assets/tiny-dungeon
Tavern scene now uses LPC Base Assets (CC-BY-SA 3.0 / GPL 3.0) — 32px tiles + animated characters. Credits: public/scene2d/lpc/CREDITS.txt