A transparent, 100% deterministic multi-criteria decision analysis engine for AI agents. Give it options and weighted criteria — get back a fully scored, ranked, and explainable result: per-criterion breakdowns, the methodology used, and a plain-language explanation.
Live endpoint:
https://decisionmatrix-mcp.pages.dev/mcp
● live · free tier: 15 calls/day, no key required
Identical inputs always yield byte-identical output. Every number runs through 40-digit decimal math — never floats.
Every result includes per-criterion contributions, the exact methodology, the weights used, and a natural-language explanation.
No database, no sessions, no hidden state. Pure functions over your inputs. Trivial to host and reason about.
One consistent JSON envelope for success and error. Errors are structured and actionable — never raw exceptions.
Built-in sensitivity analysis shows whether the winner survives when you nudge the weights.
Weighted Sum, Weighted Product, and TOPSIS — pick the trade-off model that fits the decision.
| Tool | Purpose |
|---|---|
create_decision | Main tool: rank options against weighted criteria → winner, ranking, breakdowns, explanation. |
score_options | Return the full normalized scored matrix when scores are supplied separately. |
sensitivity_analysis | Sweep each criterion's weight ±X% and report how robust the winner is. |
compare_two | Head-to-head between exactly two options with per-criterion win counts. |
list_methods | Discovery: available scoring methods and when to use each. |
health_check | Version, status, and capabilities. |
weighted_sumweighted_producttopsis direction: benefit | cost
~/.cursor/mcp.json
{
"mcpServers": {
"decisionmatrix": {
"url": "https://decisionmatrix-mcp.pages.dev/mcp"
}
}
}claude_desktop_config.json — via mcp-remote bridge
{
"mcpServers": {
"decisionmatrix": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://decisionmatrix-mcp.pages.dev/mcp"]
}
}
}.vscode/mcp.json
{
"servers": {
"decisionmatrix": {
"type": "http",
"url": "https://decisionmatrix-mcp.pages.dev/mcp"
}
}
}curl -s https://decisionmatrix-mcp.pages.dev/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{
"name":"create_decision","arguments":{
"options":["Alpha","Beta","Gamma"],
"criteria":[{"name":"Price","weight":3,"direction":"cost"},
{"name":"Battery","weight":2}],
"scores":{"Alpha":{"Price":1000,"Battery":8},
"Beta":{"Price":1200,"Battery":12},
"Gamma":{"Price":900,"Battery":6}}}}}'{
"status": "success",
"method": "weighted_sum",
"winner": { "option": "Gamma", "score": 0.666667, "rank": 1, "tie": false },
"ranking": [
{ "rank": 1, "option": "Gamma", "score": 0.666667,
"breakdown": [
{ "criterion": "Price", "direction": "cost", "weight": 0.5,
"raw_score": "900", "normalized_score": 1, "weighted_contribution": 0.5 },
{ "criterion": "Battery", "direction": "benefit", "weight": 0.333333,
"raw_score": "6", "normalized_score": 0, "weighted_contribution": 0 }
] }
],
"methodology": { "method": "weighted_sum", "normalization": "min-max per criterion", "...": "..." },
"weights_used": [ { "criterion": "Price", "weight_normalized": 0.5 } ],
"explanation": "Using the Weighted Sum Model, 'Gamma' ranks #1 with a score of 0.666667 ..."
}Numeric scores are also provided full-precision as strings (score_exact) to guarantee no float loss.
Start free to evaluate. When your agent needs real volume,
upgrade in two clicks — pay by card, get an API key instantly, and send it as
X-API-Key. Every plan has all six tools and all three methods. Cancel anytime.
$0
For evaluation & low-volume testing.
$12/mo
Best for a single production agent.
$39/mo
For fleets & high-volume workloads.
Secure checkout by Stripe · cards & wallets · promo codes supported · manage anytime at the billing portal. Prices in USD.
{
"mcpServers": {
"decisionmatrix": {
"url": "https://decisionmatrix-mcp.pages.dev/mcp",
"headers": { "X-API-Key": "dmx_live_your_key_here" }
}
}
}Prefer to self-host? The engine is open-source (MIT) and fully stateless — run your own copy on Cloudflare Pages (or any Node/Deno/Bun runtime) with unlimited calls and no keys.