About maap
maap is an MCP server for agents that need numeric estimates from messy records. It returns calibrated distributions, threshold probabilities, and indicators of how much to trust each result.
Key features
- 01Search 104 trained targets
- 02Estimate medians and quantiles
- 03Return intervals and threshold probabilities
- 04Report calibration and novelty indicators
Use cases
- 01Find a target before estimating
- 02Estimate a value from a case description
- 03Assess the chance a value exceeds a threshold
MCP support
Exposes `list_targets` and `estimate` tools to MCP clients. The server retrieves target options and produces a distribution for one case and target per call.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y maap-mcpMAAP_API_KEYSecretAPI key from https://dash.hitl.systems/keysMAAP_BASE_URLOverride the API base URL. Defaults to https://dash.hitl.systemsLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
2Saved tool list · updated 1w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | integer | No | How many to return. |
| query | string | No | Keyword matched against the id and the description, e.g. "price", "pollution", "rings". |
| primitive | enum | No | amount = money-like, count = whole numbers, measure = a reading on a scale.amount | count | measure |
Details
From the project READMEmaap-mcp
maap over MCP: ask for a number, get a calibrated distribution — a median, the range the true value should fall inside, and the probability of crossing a threshold you name.
Two tools:
| Tool | Does |
|---|---|
list_targets | Search the 104 trained targets. Call this first — a target id is not guessable |
estimate | One case, one target → median, quantiles, intervals, P(value > t), and how calibrated the answer is |
Install
Get a key at dash.hitl.systems/keys, then add the server to your client.
Claude Desktop — claude_desktop_config.json:
{
"mcpServers": {
"maap": {
"command": "npx",
"args": ["-y", "maap-mcp"],
"env": { "MAAP_API_KEY": "apikey_..." }
}
}
}
Claude Code:
claude mcp add maap --env MAAP_API_KEY=apikey_... -- npx -y maap-mcp
Not on npm yet — until it is, install straight from this repo by swapping maap-mcp for
github:hitl-systems/maap-mcp in any of the above. The built bundle is committed, so there is
nothing to compile.
Cursor — ~/.cursor/mcp.json: the same mcpServers block as Claude Desktop.
| Variable | Required | Default |
|---|---|---|
MAAP_API_KEY | yes | — |
MAAP_BASE_URL | no | https://dash.hitl.systems |
Using it
Which maap target predicts flight prices? Estimate the fare for a Vistara economy ticket Delhi → Mumbai, non-stop, booked 9 days out, and tell me the chance it is over ₹10,000.
The agent calls list_targets for the id, then estimate with your case as the state.
Read the median as the answer and the range as what to plan against. For a threshold
question, pass thresholds and read P(value > t) — do not compare the median to the
threshold yourself; the median says where the middle is, not how likely the threshold is.
An answer also carries how much to trust it: regime (in_domain, or new_target when the
model only knows what your examples taught it), calibration ("none" means no correction
survived its check, so the range carries no coverage promise), and novelty_flag when the case
is unlike anything in training. Known limits are published:
dash.hitl.systems/docs/calibration.
Notes
- One question per call. The HTTP API takes up to 32 under names you choose; a flat tool is the one an agent fills in correctly.
- The first call after an idle period starts a GPU container and can take tens of seconds. The server waits 120 s and tells the agent to retry rather than failing silently.
- Each question counts against your allowance. A rejected call costs nothing.
- Pricing, limits and the full wire format: dash.hitl.systems/docs/api.
MIT.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.