Calibrated numeric estimates with uncertainty from messy records
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 |
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 |
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.
MIT.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y maap-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-codecraf8-maap": {
"command": "npx",
"args": [
"-y",
"maap-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referencemaap-mcpnpmio.github.codecraf8/maap works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.