The catalogue
Qloo tool catalogue
For a promoter: these are the ten Qloo look-ups OfferSheet runs to judge your offer — who the fans are, which openers fit, how the city responds.
You never call them yourself; the table shows what each one does and where it appears in your verdict.
The 10 Qloo tools behind every verdict, in plain verbs. OfferSheet also runs its own MCP server — 33 tools: 23 OfferSheet tools + 10 guarded Qloo tools. A full verdict run invokes all 10 Qloo tools below; a leg that is skipped or returns empty invokes fewer and is labelled skipped or empty, never receipted as data. Every verdict leg that returns data earns a receipt; empty REST and re-rank legs earn no receipt, replay re-runs are comparisons against the original receipt rather than new receipts, and offline tools (arithmetic, hash checks, lists, arms) carry no receipt by design. Standalone proxy calls are a separate surface: the proxy records a receipt unconditionally after a non-throwing call, so a proxy receipt alone does not prove an ok leg — filter receipts on operation, never on claim. The ID-threading resolution helper records its own receipt ('opener description (resolution helper)'); the ID it resolves is receipted downstream when it is used. The full 33-tool catalogue is served by the OfferSheet server.
| Tool | What it does | Where it shows up |
|---|---|---|
| qloo_capabilities | Lists what Qloo can do before any verdict runs | Readiness probe |
| qloo_find_tags | Turns the artist and city into Qloo tags before any audience call | Tag discovery |
| qloo_describe | Resolves one named artist to its Qloo entity card | Headliner resolution |
| qloo_recommend | Finds opener candidates from the headliner's fans | Opener shortlist |
| qloo_rank | Ranks a shortlist for one city audience | Graph pick |
| qloo_where_popular | Finds where the headliner is popular | Audience areas |
| qloo_audience_demographics | Returns full age and gender bands for an audience | Who this audience is |
| qloo_entity_tags | Returns tags shared between two entities | Shared tags |
| qloo_trends | Returns 90-day momentum for an entity | Whether the artist is rising |
| qloo_compare_audiences | Compares two audiences' overlap | How the fan bases overlap |
Install OfferSheet's own MCP server (agent setup)
This wires OfferSheet's own server into your agent. It is a stdio server, zero-dependency Node, started from a clone of the public repo. The 10 qloo_ tools are guarded proxies of Qloo's tools — they reuse the same allowlists, call-budget guards, and receipt store as the hosted verdict. The per-visitor cap applies to the hosted HTTP verdict and replay endpoints only — a stdio server has no visitor identity, so its guards are the monthly budget and the per-run call cap. Keys come from the host environment only, never from a tool argument.
node backend/mcp-server.js
Then add this block to your agent's MCP config — .mcp.json for Claude Code, or the MCP settings file for Cursor. Replace the path with the clone's location on your machine.
{
"mcpServers": {
"offersheet": {
"command": "node",
"args": ["/path/to/OfferSheet/backend/mcp-server.js"]
}
}
}
Proven 29 Oct 2026: a fresh clone of the public repo answers tools/list with exactly 33 tools (23 offersheet_ + 10 qloo_) with no keys configured, and a live receipt replayed through the deployed backend returned the same ID list in the same order. Artifacts, served on this page's own site: fresh-clone tools/list transcript · live receipt round-trip record.
offersheet_deal_breakeven, offersheet_verdict_run, and offersheet_verdict_race take an optional fixed-cost stack: venue cost (roomCost), production cost, marketing cost, other fixed costs, and a sponsor offset that is subtracted. Omit a field when it is blank. Blank is not entered and is not zero. The catalogue stays 33 tools: 23 OfferSheet tools + 10 guarded Qloo tools.
Install Qloo's official local server (agent setup)
This wires Qloo's own MCP server into your agent — it is not an OfferSheet server, and it adds no new OfferSheet surface. The verdict itself still runs in the hosted app.
npm install --global @qloo/qloo-harness qloo mcp
Then add this block to your agent's MCP config — .mcp.json for Claude Code, or the MCP settings file for Cursor. The server name is your local label; the command is Qloo's verified invocation.
{
"mcpServers": {
"qloo": {
"command": "qloo",
"args": ["mcp"]
}
}
}
If the key is missing, Qloo's own setup reports it — run qloo setup --status and follow its prompt. OfferSheet never invents a verdict while the key is missing, and your key never leaves the server: receipts carry hashes and request IDs, never keys.