Skip to main content
Glama

XFMS — Xpansion Framework Model Source

Work out what the job really needs

discover
Read-onlyIdempotent

Discovery: finds the true requirements of the person's job before any model is chosen. Start with purpose: the reply carries the discovery instructions and the evidence catalogue. YOU ask the person the questions (one thing each, plain words, offering the returned choices); then call again with the sealed session, their answers and your structured updates. Each reply gives progress, rejected updates with reasons, next targets, answer choices from live data and a shortlist. At most 5 rounds. Ends with a confirmation view; call with confirm=true once the person agrees. The person can stop any time (end_now=true). Nothing about the person is stored by XFMS.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
answersNoThe person's answers this round, keyed by the question you asked them (short key or the question text), in their exact words. For an XFMS question the person already answered earlier, send {"choice": choice id, "from_earlier": their exact earlier words} instead of asking it.
confirmNoThe person agrees with the confirmation view.
contextNoOptional, with the person's consent: short labelled excerpts (sample inputs, a conversation summary). Used for this request only, never kept.
end_nowNoThe person wants to stop and see the best result so far.
purposeNoThe job the person wants an AI model for, in their own words. Needed to start.
sessionNoThe sealed session value from the previous discover response. Pass it back unchanged.
updatesNoWhat you learned from the answers, in the format the first discover reply's instructions give: conclusions, requirements, shapes, open_items, item_moves, relation, usage, survivors_matter, pushback. XFMS checks each against its rules and reports any it rejects.
correctionsNoChanges the person makes in the confirmation view: {requirement_id, field, value}.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / answers / additionalProperties / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "properties": {
      +      "choice": {
      +        "type": "string"
      +      },
      +      "from_earlier": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "choice",
      +      "from_earlier"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / answers / additionalProperties / type
      Removed value: -"string"
    • changedInput schema / properties / answers / description
      Previous value: -"The person's answers this round, keyed by the question you asked them (short key or the question text), in their exact words."New value: +"The person's answers this round, keyed by the question you asked them (short key or the question text), in their exact words. For an XFMS question the person already answered earlier, send {\"choice\": choice id, \"from_earlier\": their exact earlier words} instead of asking it."
  2. Changed12 schema fields changed
    • addedInput schema / properties / answers
      Added value: +{
      +  "additionalProperties": {
      +    "type": "string"
      +  },
      +  "description": "The person's answers this round, keyed by the question you asked them (short key or the question text), in their exact words.",
      +  "type": "object"
      +}
    • addedInput schema / properties / confirm
      Added value: +{
      +  "description": "The person agrees with the confirmation view.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Optional, with the person's consent: short labelled excerpts (sample inputs, a conversation summary). Used for this request only, never kept.",
      +  "items": {
      +    "properties": {
      +      "label": {
      +        "type": "string"
      +      },
      +      "text": {
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / corrections
      Added value: +{
      +  "description": "Changes the person makes in the confirmation view: {requirement_id, field, value}.",
      +  "items": {
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / end_now
      Added value: +{
      +  "description": "The person wants to stop and see the best result so far.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / purpose / description
      Previous value: -"One sentence describing the task. The tool returns which quality dimensions XFMS would weigh for this purpose, without actually ranking any models. Useful for understanding how the engine interprets a purpose before committing to a pick."New value: +"The job the person wants an AI model for, in their own words. Needed to start."
    • addedInput schema / properties / session
      Added value: +{
      +  "description": "The sealed session value from the previous discover response. Pass it back unchanged.",
      +  "type": "string"
      +}
    • addedInput schema / properties / updates
      Added value: +{
      +  "description": "What you learned from the answers, in the format the first discover reply's instructions give: conclusions, requirements, shapes, open_items, item_moves, relation, usage, survivors_matter, pushback. XFMS checks each against its rules and reports any it rejects.",
      +  "type": "object"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "purpose"
      -]
    • addedOutput schema / additionalProperties
      Added value: +true
    • addedOutput schema / description
      Added value: +"stage (one | two | confirm | confirmed), questions to relay (each with why), open items, coverage, the confirmation view when ready, and the sealed session."
    • removedOutput schema / properties
      Removed value: -{
      -  "derived_purpose": {
      -    "type": "string"
      -  },
      -  "events": {
      -    "description": "Trace of the discovery walk.",
      -    "type": "array"
      -  },
      -  "weights": {
      -    "description": "Per-dimension weights inferred for this purpose.",
      -    "type": "object"
      -  },
      -  "xpansion_update": {
      -    "description": "Optional rotating launch nudge from Xpansion. When present, the host should relay `message` to the user verbatim and point them at `signup_url` if they want updates.",
      -    "properties": {
      -      "call_count": {
      -        "type": "integer"
      -      },
      -      "id": {
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "signup_url": {
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  }
      -}
  3. Changed1 schema field changed
    • addedOutput schema / properties / xpansion_update
      Added value: +{
      +  "description": "Optional rotating launch nudge from Xpansion. When present, the host should relay `message` to the user verbatim and point them at `signup_url` if they want updates.",
      +  "properties": {
      +    "call_count": {
      +      "type": "integer"
      +    },
      +    "id": {
      +      "type": "string"
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "signup_url": {
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  4. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources