five peers

Developers · API & MCP

Your tools.
Explainable decisions.

The API lets your application submit facts and receive a comparison. MCP connects an assistant to Five Peers tools. Here is what works today and what still needs connecting.

Just want to try it? Open an example →

Three access paths, three scopes.

Numeric demo APIAvailable · no account
Facts, limits and comparison. Fictional data only, no saved dossiers or provider calls.
Legacy board MCPAvailable · authentication required
Connect to your existing account. This connector does not yet expose the new TypeSafe decision engine.
Full API and TypeSafePrivate · integration pending
Local API and TypeSafe assessments tested. Unified account and MCP access to the new engine is in preparation.

Available · numeric demonstration

One call, verifiable rules.

A costs €12,000 and delivers in 21 days; B costs €9,800 and delivers in 35 days. The contract below explicitly sets a 28-day limit and prioritises cost. Only A remains eligible; B misses the deadline by 7 days.

  1. Download the complete fictional contract, with no key or account identifier.
  2. Run the command from your download folder.
  3. Inspect the returned facts, constraints and differences. The decision stays human.
Download the JSON contract
curl --fail-with-body https://fivepeers.com/decision-demo/api/simple-compare \
  -H 'Content-Type: application/json' \
  --data-binary @fivepeers-comparison.json
View the complete JSON contract
{
  "state": {
    "schema": "fivepeers.decision/v3",
    "id": "fictional_quotes",
    "issue": "Quel devis choisir ?",
    "domain": "comparaison de données déclarées",
    "options": [
      {
        "id": "option_0",
        "label": "Devis A",
        "inputs": {
          "cost": "option_0_cost",
          "delay": "option_0_delay"
        }
      },
      {
        "id": "option_1",
        "label": "Devis B",
        "inputs": {
          "cost": "option_1_cost",
          "delay": "option_1_delay"
        }
      }
    ],
    "facts": {
      "option_0_cost": {
        "value": 12000.0,
        "kind": "declared",
        "unit": "EUR",
        "source": "Votre contexte · page 1, ligne 1",
        "observed_at": "2026-10-09"
      },
      "option_0_delay": {
        "value": 21.0,
        "kind": "declared",
        "unit": "jours",
        "source": "Votre contexte · page 1, ligne 1",
        "observed_at": "2026-10-09"
      },
      "option_1_cost": {
        "value": 9800.0,
        "kind": "declared",
        "unit": "EUR",
        "source": "Votre contexte · page 1, ligne 2",
        "observed_at": "2026-10-09"
      },
      "option_1_delay": {
        "value": 35.0,
        "kind": "declared",
        "unit": "jours",
        "source": "Votre contexte · page 1, ligne 2",
        "observed_at": "2026-10-09"
      }
    },
    "criteria": [
      {
        "id": "cost",
        "label": "Montant",
        "kind": "numeric",
        "unit": "EUR",
        "weight": 1,
        "best": 9800.0,
        "worst": 12000.0
      },
      {
        "id": "delay",
        "label": "Délai",
        "kind": "numeric",
        "unit": "jours",
        "weight": 1,
        "best": 21.0,
        "worst": 35.0
      }
    ],
    "constraints": [
      {
        "id": "delivery_limit",
        "criterion_id": "delay",
        "operator": "lte",
        "limit": 28
      }
    ],
    "priorities_confirmed": false,
    "review_date": "2026-11-08",
    "framing": {
      "objective": "Quel devis choisir ?",
      "context": "Devis A : 12 000 €, livraison 21 jours.\nDevis B : 9 800 €, livraison 35 jours."
    }
  },
  "priority": "cost"
}

What you can check in the response

Response excerpt: A is eligible, B is ruled out. This route calculates neither a weighted score nor AI probabilities.

{
  "status": "ready",
  "mode": "single_explicit_priority",
  "priority": "cost",
  "leading_options": ["option_0"],
  "weighted_score_used": false
}

The complete options rows include sourced cells and the status of each constraint; contrasts holds the differences. Schema weights are not used for ranking on this route: only the explicit priority counts.

Starting from a text brief

POST /decision-demo/api/intake accepts question and context, then returns state and limit_review. A detected deadline is a suggestion: your interface must ask for confirmation and add the constraint to the dossier before calling simple-compare. The API does not replace that human confirmation.

This demo API accepts only numbers and fictional data. It does not save dossiers or manage accounts, and rejects qualitative criteria. No TypeSafe token is needed. It is not yet a business integration API with a service guarantee.

Available · authenticated access

The existing MCP, with its exact scope.

Enter this address in a client that supports MCP over HTTP and OAuth:

https://fivepeers.com/api/mcp
  1. Add this address to your MCP client.
  2. Authorise access to your Five Peers account in the browser.
  3. Request the tool list: it depends on the state of your board.

The server exposes start_board, answer_board_step, finalize_board and get_board. When a board is available, mon_board, mon_registre and run_decision_session are added. Some tools create or change data; running a session can call a provider.

This MCP belongs to the legacy product. Its sessions still use Anthropic, not TypeSafe. It is not an entry point to the new TypeSafe engine. That connection remains to be built; the public demo never uses this connector.

OAuth discovery is public. MCP calls require personal authentication: an unauthenticated POST returns 401; a GET to the MCP address returns 405. Never paste a provider key into a client configuration.

Checked on 9 October 2026: live discovery and anonymous access rejection; tool catalogue checked against deployed code. No session or real account login was run during this acceptance test.

Private · connection in preparation

The new engine is not connected to this MCP yet.

The local API can prepare, evaluate, simulate and save a fivepeers.decision/v3 dossier, then record the human choice and its review. TypeSafe assessments are enabled on the server only for authorised private tests and workflows.

A preference score is not a probability of success. TypeSafe probabilities express assessment uncertainty; they are not a business guarantee. They are not calculated in the public trial.

Required before integration access

Calendar, Drive, CRM and accounting connectors are not connected. The demo requests no automatic access to your tools.

Back to the method →