Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Authorization not required, issuer https://xfms.xpansion.dev
Authorization not required, issuer https://xfms.xpansion.dev
Changed the definition of "benchmark"
⟨27 unchanged words⟩ their key.","type":"boolean"},"jobs_wanted":{"description":"How many AI jobs the person would want watched, if they said; sizes the Model Watch plan.","type":"integer"},"offer":{"description":"The offer from the ⟨158 unchanged words⟩
Changed the definition of "benchmark"
⟨27 unchanged words⟩ their key.","type":"boolean"},"jobs_wanted":{"description":"How many AI jobs the person would want watched, if they said; sizes the Model Watch plan.","type":"integer"},"offer":{"description":"The offer from the ⟨158 unchanged words⟩
Changed the definition of "watch_job"
⟨72 unchanged words⟩ the tasks, plus the model they use now. The first check runs as soon as the job is saved. To re-check a job the person already watches, pass check_now with the job's id or title instead (once a day per job; the result is emailed and shown at /account).
{"additionalProperties":false,"properties":{"check_now":{"description":"Check a job they already watch now: its id or title. Leave out when saving a job.","type":["integer","string"]},"consent":{"description":"The person agreed to ⟨77 unchanged words⟩ ,"type":"string"}},"required":["session","consent"],"type":"object"}
Changed the definition of "watch_job"
⟨72 unchanged words⟩ the tasks, plus the model they use now. The first check runs as soon as the job is saved. To re-check a job the person already watches, pass check_now with the job's id or title instead (once a day per job; the result is emailed and shown at /account).
{"additionalProperties":false,"properties":{"check_now":{"description":"Check a job they already watch now: its id or title. Leave out when saving a job.","type":["integer","string"]},"consent":{"description":"The person agreed to ⟨77 unchanged words⟩ ,"type":"string"}},"required":["session","consent"],"type":"object"}
Certificate recorded, valid to 2026-12-19
Authorization not required, issuer https://xfms.xpansion.dev
First tool surface recorded: 7 tools (server version 1.30.0)
https://xfms.xpansion.dev/mcp (mcp_streamable_http) — from mcp_registry
Changed the definition of "watch_job"
⟨33 unchanged words⟩ a signed-in subscriber. Ask the person first: Model Watch keeps the job and its example tasks ⟨31 unchanged words⟩
⟨4 unchanged words⟩ ":{"description":"The person agreed to Model Watch keeping this job.","type":"boolean" ⟨77 unchanged words⟩
Added "watch_job"; changed the definition of "benchmark" and "compare" (6 tools before, 7 now)
{"additionalProperties":false,"properties":{"current_model":{"description":"OpenRouter id of the model the job uses now, if any.","type":"string"},"go":{"description":"The person approved the ⟨44 unchanged words⟩ good|ok|poor}}, with test_session.","type":"object"},"runs_per_month":{"description":"Roughly how many times a month the job runs, if known.","type":"number"},"session":{"description":"The sealed ⟨103 unchanged words⟩
{"additionalProperties":false,"properties":{"current_model":{"description":"OpenRouter id of the model the job uses now, if any.","type":"string"},"go":{"description":"The person approved the ⟨62 unchanged words⟩
Added "field_results"; changed the definition of "discover" (5 tools before, 6 now)
{"additionalProperties":false,"properties":{"answers":{"additionalProperties":{"anyOf":[{"type":"string"},{"properties":{"choice":{"type":"string"},"from_earlier":{"type":"string"}},"required":["choice","from_earlier"],"type":"object"}]},"description":"The person's answers this round, keyed ⟨9 unchanged words⟩ 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.","type":"object"},"confirm":{ ⟨158 unchanged words⟩
What has worked for jobs like this — Results from real comparisons on Model Source for one kind of job (call with no job_type for the list): which models passed, how often, which won, typical cost per task and the most common failure. Counted without anyone's job details. A starting point; test on the person's own work before choosing.
Changed the definition of "benchmark", "compare", "discover" and 2 more
BenchmarkTest theengine's topshortlistpicksonwiththerealperson'stestownquerieswork
Run aThe
Recently observed → Live
Changed the definition of "benchmark", "compare", "pick" and 1 more
{"additionalProperties":false,"properties":{"capabilities":{"description":"Required capabilities the model MUST support. Models missing any listed capability are filtered out before ranking. 'vision' = image input, 'audio_in' = audio input, 'tool_use' = function calling, 'structured_outputs' = JSON schema-constrained output. Omit when the task is plain text with no tool use.","items":{"enum":["vision","audio_in","tool_use","structured_outputs"],"type":"string"},"type":"array"},"primary":{"description":"Ordered priorities, highest first, for example quality then cost. Later dimensions break exact ties; unspecified dimensions do not decide the winner.","items":{"enum":["cost","quality","latency","privacy"],"type":"string"},"type":"array"},"purpose":{"description":"One sentence describing what ⟨16 unchanged words⟩ be concrete, not vague.","type":"string"},"test_queries":{"description":"Optional actual task prompts including source facts. Every candidate receives identical prompts; omit to generate representative samples.","items":{"minLength":1,"type":"string"},"maxItems":15,"minItems":1,"type":"array"},"top_n":{"default":5,"description":"How many models to return in the ranked list. Defaults to 5. Use 1 if you only want the single best pick; use 10+ if you want to see deeper alternatives.","maximum":25,"minimum":1,"type":"integer"}},"required":["purpose"],"type":"object"}
Live → Recently observed
Certificate recorded, valid to 2026-11-27
Authorization not required
First tool surface recorded: 5 tools (server version 1.27.2)
Showing the latest 20 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
Watch this job (XF Model Watch subscribers) — Saves a finished job for XF Model Watch, which re-tests it as new models arrive and emails the person only when a model passes every must-have and ranks higher on their priorities. Needs a signed-in subscriber. Ask the person first: Watch keeps the job and its example tasks (encrypted, deletable any time). Pass consent=true only if they agree. Pass the discover session, and either test_session from a finished comparison or the tasks, plus the model they use now.
{"additionalProperties":false,"properties":{"capabilitiesgo":{"description":"Required capabilities the model MUST support. Models missing any listed capability areThefilteredpersonoutapprovedbeforetheranking.estimate.'vision'Spends=onimagetheirinputkey.",'audio_in' = audio input"type":"boolean"},'tool_use'"offer":{"description":"The=offerfunctionfromcalling,the'structured_outputs'estimate.=PassJSONitschema-constrainedwithoutput.go=trueOmittowhenrun.","type":"string"},"overruled":{"description":"Failures thetask is plainpersontextaccepts,withasno'modeltoolid|requirementuse.words'.","items":{"enumtype":["visionstring"},"audio_intype",:"tool_usearray"},"structured_outputsratings"]:{"description":"Blind ratings: {task id: {letter: good|ok|poor}}, with test_session.","type":"stringobject"},"session":{"description":"The sealed session from a finished discover conversation.","type":"arraystring"},"primarytasks":{"description":"OrderedThepriorities,person'shighestrealfirstwork to test on,forrealexampleexamplesqualityfirst.thenWritecost.extraLatertasksdimensionsyourselfbreakonlyexactforties;theunspecifiedgapsdimensionsXFMSdonames,notwithdecidesourcethe'madewinner.up'. Images as data URLs.","items":{"enumproperties":[{"costcovers",:{"qualitydescription",:"latencyids of the requirements this task tests","privacyitems"],:{"type":"string"},"type":"array"},"purposegroup":{"description":"One sentence describing what the model will be used for. The benchmark generates representative test queriesoptionalfromkindthisof—task,soe.g.be'shortconcretecaptions'",not vague."type":"string"},"image_urls":{"items":{"type":"string"},"test_queriestype":"array"},"source":{"description":"Optional actual task prompts including source facts. Every candidate receives identical prompts; omit torealgenerate|representativemadesamples.up","itemstype":{"minLengthstring":1},"text":{"type":"string"}},"maxItemstype":15,"minItemsobject":1},"type":"array"},"top_ntest_session":{"default":5,"description":"How many models to return in theFromrankedalist.finishedDefaultsrun, to5. Use 1 if you only want the single best pick; use 10+ if you want tooverruleseefailuresdeeperwithoutalternatives.","maximum":25,"minimumrerunning.":1,"type":"integerstring"}},"required":["purposesession"],"type":"object"}
{"description":"Rank response with ab_result populated — same shape as `rank` plus live performance data from the probe runs.","properties":{"ab_result":{"properties":{"aggregates":{"description":"Per-model stats across the runs.","items":{"properties":{"avg_accuracy":{"type":["number","null"]},"avg_completion_tokens":{"type":"number"},"avg_latency_ms":{"type":"number"},"model_id":{"type":"string"},"model_name":{"type":"string"},"runs":{"description":"The actual generated answer for every test query this model ran, for human review — not just the score.","items":{"properties":{"error":{"type":["string","null"]},"response_text":{"type":"string"},"test_query":{"type":"string"}},"type":"object"},"type":"array"},"success_count":{"type":"integer"},"total_cost_usd":{"type":"number"}},"type":"object"},"type":"array"},"commentary":{"type":"string"},"cost_winner_id":{"type":["string","null"]},"incongruity_detected":{"type":"boolean"},"latency_winner_id":{"type":["string","null"]},"overall_winner_id":{"type":["string","null"]},"queries_executed":{"typeadditionalProperties":"integer"}true,"test_queries":{"description":"The generated test prompts that wereWithoutrun.","items":{"type":"string"},"type":"array"}},"type":"object"},"catalog_size":{"type":"integer"},"filtered_out":{"type":"integer"},"frontier_filtered_out":{"description"go:"Howmany models in models[] are neither recent nor top-tier on quality (informational — none are removed fromthelist, this just means they weren't eligible to be the recommendation).","type":"integer"},"models":{"description":"Ranked shortlist ofestimatemodels,andhighestoffer.scoreWithfirst.","items":{"properties":{"model_id":{"type":"string"},"name":{"type":"string"},"provider":{"type":["string","null"]},"rationale":{"type":"string"},"total_score":{"type":"number"}},"type":"object"},"type":"array"},"quality_floor_reason":{"type":["string","null"]},"status":{"description"go:"'ranked'(normal), 'low_confidence' (capability requirements were relaxed to find any match), or 'quality_floor_refused' (candidates were found butthebest one scored too low to recommend — see quality_floor_reason; models[] still lists what was considered).","type":"string"}outcome,"xpansion_update":{"description":"Optionalrotating launch nudgeeveryfrommodelXpansion.onWheneverypresentrequirement, thehost 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":"objectreport."}},"type":"object"}
Compare specificTest modelshead-to-headthewithpersonrealnamedtestonqueriestheir own work
Run aSame liveA/Btestbetween 2–5 user-specified models for a stated purpose. NO ranking step — the supplied model_ids ARE the candidate set. Generates 5 representative test queries from the purpose, runs them through every named model in parallel, and returns real cost,aslatencybenchmark,and plain-English commentarybut onwho won what. Unknown IDs are dropped with a note; if fewer than 2 IDs resolve,thecall refuses. Use this whenevermodels theuserperson namesspecific models to compare(e.g. 'A/B test X and Y'). For engine-chosen candidates, use `benchmark` instead. Costs more than `rank` (10+ live LLM callsmodel_ids).Free-tier note: whenNeedsanyacandidatefinishedendsdiscoverinsession':free',sotheeveryproberequirement iscapped at 3 queries (no adaptive expansion) because free-tier rate limits often push longer probes past the deploy's 5-minute ceiling — evidence will be shallower. The commentary surfacesjudged.thisEstimatewhenfirst,itthenhappens.go=true.
{"additionalProperties":false,"properties":{"model_idsgo":{"description":"Exact model IDs to testThehead-to-head,personinapprovedcaller-chosentheorder.estimate.2–5SpendsIDs.onExamples:their'nvidia/nemotron-3-super-120b-a12bkey.","type":free'"boolean"},'openai/gpt-oss-120b"model_ids":free'. Unknown IDs are dropped with a note; if fewer{"description":"ThethanOpenRouter
{"description":"Result of a head-to-head A/B between user-named models. NOT a rank response — no ranking happened, so no scores or rationale. Just probe evidence plus a record of which IDs were resolvable.","properties":{"ab_result":{"properties":{"aggregates":{"description":"Per-model stats across the runs.","items":{"properties":{"avg_accuracy":{"type":["number","null"]},"avg_completion_tokens":{"type":"number"},"avg_latency_ms":{"type":"number"},"model_id":{"type":"string"},"model_name":{"typeadditionalProperties":"string"}true,"runs":{"description":"The actual generated answer for every test query thisSamemodelasranbenchmark, forhuman review — not justthescore.","items":{"properties":{"error":{"type":["string","null"]},"response_text":{"type":"string"},"test_query":{"type":"string"}},"type":"object"},"type":"array"},"success_count":{"type":"integer"},"total_cost_usd":{"type":"number"}},"type":"object"},"type":"array"},"commentary":{"type":"string"},"cost_winner_id":{"type":["string","null"]},"incongruity_detected":{"type":"boolean"},"latency_winner_id":{"type":["string","null"]},"overall_winner_id":{"type":["string","null"]},"queries_executed":{"type":"integer"},"test_queries":{"description":"The generated test prompts that were run.","items":{"type":"string"},"type":"array"}},"type":"object"},"invalid_model_ids":{"items":{"type":"string"},"type":"array"},"model_ids_requested":{"items":{"type":"string"},"type":"array"},"model_ids_tested":{"items":{"type":"string"},"type":"array"},"purpose":{"type":"string"},"refusal_reason":{"type":["string","null"]},"status":{"enum":["compared","refused"],"type":"string"},"xpansion_update":{"description":"Optional rotating launch nudge from Xpansion. When present, the host should relay `message` to
DiscoverWorkqualityoutdimensionswhat the job really needs
Show whichDiscovery:qualityfindsdimensionsthemattertrueforrequirementsaofstatedthepurpose,person'sWITHOUTjobrankingbefore anymodels.modelReturnsis chosen. Start with purpose: theinferredreplyweightscarries the discovery instructions and thediscovery-walkevidencetrace.catalogue.UsefulYOUforaskunderstandingthehowpersonXFMStheinterpretsquestions (one thing each, plain words, offering thepurposereturnedbeforechoices);committingthentocall 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 apick.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.
{"additionalProperties":false,"properties":{"purposeanswers":{"additionalProperties":{"type":"string"},"description":"OneThesentenceperson'sdescribinganswers this round, keyed by thetask.question you asked them (short key or the question text), in their exact words.","type":"object"},"confirm":{"description":"ThetoolpersonreturnsagreeswhichwithqualitythedimensionsconfirmationXFMSview.","type":"boolean"},"context":{"description":"Optional,wouldwith
{"properties":{"derived_purpose":{"typeadditionalProperties":"string"}true,"events":{"description":"Trace of thestagediscovery(onewalk.","type":"array"},"weights":{"description":"Per-dimension|weightstwoinferred|forconfirmthis|purpose.","type":"object"}confirmed),"xpansion_update":{"description":"Optionalrotating launchquestionsnudgetofromrelay
Pick the bestLLMmodel for a discovered job
Return theThe single bestLLMproven model for astatedjobpurpose.workedConciseoutoutput,withnodiscover,list.withUsewhywhenand theuser has settledrunners-up.onPass thecriteria and just wants onediscoveranswer.session.
{"additionalProperties":false,"properties":{"purposesession":{"description":"OneThesentencesealeddescribingsessionwhatfromtheamodeldiscoverwillconversation.beRankingusedisfor.builtBefromconcrete,whatnotdiscoveryvague:
{"description":"The single best model — same shape as rank's models[0]. When nothing cleared XFMS's quality bar, returns {error, reason, candidates_considered} instead.","properties":{"model_id":{"type":"string"},"name":{"type":"string"},"provider":{"type":["string","null"]},"rationale":{"type":"string"},"total_score":{"typeadditionalProperties":"number"}true,"xpansion_update":{"description":"Optional rotating launchThenudgetopfromprovenXpansion.pickWhenwithpresentwhy,the host should relay `message` toplus theuser 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":"objectrunners-up."}},"type":"object"}
RankLLMsmodels for a discovered job
RankTheLLMsfull shortlist for astatedjobpurpose.workedReturnsoutawithshortlistdiscover:with5weights,provenscores,models andplain-English1rationalepromisingpernewcomer,pick.eachUsewithwhenitsthestandinguseronwantseverytorequirement,seeplus near misses andcomparewhatalternatives,wouldnotchangejusttheoneorder.answer.Pass the discover session.
{"additionalProperties":false,"properties":{"capabilitiessession":{"description":"Required capabilities the model MUST support. Models missing any listed capability are filtered out before ranking. 'vision' = image input, 'audio_in' = audio input, 'tool_use' = function calling, 'structured_outputs' =TheJSONsealedschema-constrainedsessionoutput.fromOmitawhendiscovertheconversation.taskRanking isplain text with no tool use.","items":{"enum":["vision","audio_in","tool_use","structured_outputs"],"type":"string"},"type":"array"},"primary":{"description":"Ordered priorities, highest first, for example quality then cost. Later dimensions break exact ties; unspecified dimensions do not decide the winner.","items":{"enum":["cost","quality","latency","privacy"],"type":"string"},"type":"array"},"purpose":{"description":"One sentencebuiltdescribingfrom what
{"properties":{"catalog_size":{"type":"integer"},"filtered_out":{"typeadditionalProperties":"integer"}true,"frontier_filtered_out":{"description":"How many models in models[] are neither recent nor top-tier onprovenqualitypicks (informational — none are removed from the list, this just means theyeachweren'twitheligibleitstostandingbeontheeveryrecommendationrequirement).","type":"integer"},"models":{"description":"Rankedshortlist of models, highest score
⟨27 unchanged words⟩ the runs.","items":{"properties":{"avg_accuracy":{"type":["number","null"]},"avg_completion_tokens":{"type":"number"},"avg_latency_ms" ⟨5 unchanged words⟩ ,"model_name":{"type":"string"},"runs":{"description":"The actual generated answer for every test query this model ran, for human review — not just the score.","items":{"properties":{"error":{"type":["string","null"]},"response_text":{"type":"string"},"test_query":{"type":"string"}},"type":"object"},"type":"array"},"success_count":{"type":"integer"},"total_cost_usd" ⟨46 unchanged words⟩ ,"filtered_out":{"type":"integer"},"frontier_filtered_out":{"description":"How many models in models[] are neither recent nor top-tier on quality (informational — none are removed from the list, this just means they weren't eligible to be the recommendation).","type":"integer"},"models":{"description":"Ranked shortlist of models, highest ⟨21 unchanged words⟩ :"object"},"type":"array"},"quality_floor_reason":{"type":["string","null"]},"status":{"description":"'ranked' (normal), 'low_confidence' (capability requirements were relaxed to find any match), or 'quality_floor_refused' (candidates were found but the best one scored too low to recommend — see quality_floor_reason; models[] still lists what was considered).","type":"string"},"xpansion_update":{"description ⟨43 unchanged words⟩
⟨62 unchanged words⟩ :"array"},"primary":{"description":"Optional. Only affects the plain-English commentary at theOrderedendpriorities,—highestdoesfirst,notforchangeexamplewhichqualitymodelsthenarecost.tested.LaterMarksdimensionsthebreakdimensionexacttheties;userunspecifiedcaresdimensionsmostdoaboutnotsodecide thecommentary calls out that winner first.winner.","items":{"enum":["cost", ⟨35 unchanged words⟩ Be concrete, not vague.","type":"string"},"test_queries":{"description":"Optional actual task prompts including source facts. Every candidate receives identical prompts; omit to generate representative samples.","items":{"minLength":1,"type":"string"},"maxItems":15,"minItems":1,"type":"array"}},"required":["purpose","model_ids" ⟨2 unchanged words⟩
⟨41 unchanged words⟩ the runs.","items":{"properties":{"avg_accuracy":{"type":["number","null"]},"avg_completion_tokens":{"type":"number"},"avg_latency_ms" ⟨4 unchanged words⟩ "string"},"model_name":{"type":"string"},"runs":{"description":"The actual generated answer for every test query this model ran, for human review — not just the score.","items":{"properties":{"error":{"type":["string","null"]},"response_text":{"type":"string"},"test_query":{"type":"string"}},"type":"object"},"type":"array"},"success_count":{"type":"integer"} ⟨120 unchanged words⟩
{"description":"The single bestmodel.modelSame— same shape as rank's models[0]. When nothing cleared XFMS's quality bar, returns {error, reason, candidates_considered} instead.","properties":{"model_id":{"type": ⟨59 unchanged words⟩
⟨58 unchanged words⟩ :"array"},"primary":{"description":"Mark dimensions as primary tier. WhenOrderedsetpriorities,the engine switches from weighted-sum blending to lexicographic ordering: the primary dimensionhighestisfirst,theforsoleexamplerankingqualityaxis,thenandcost.otherLater dimensionsonlybreakties. Use when the user says 'cheapest model, period'exactorties;similarunspecified—dimensionstheirdostatednotpreferencedecidebecomesthesacrosanct.winner.","items":{"enum":["cost", ⟨94 unchanged words⟩
⟨4 unchanged words⟩ ,"filtered_out":{"type":"integer"},"frontier_filtered_out":{"description":"How many models in models[] are neither recent nor top-tier on quality (informational — none are removed from the list, this just means they weren't eligible to be the recommendation).","type":"integer"},"models":{"description":"Ranked shortlist of models, highest ⟨21 unchanged words⟩ :"object"},"type":"array"},"quality_floor_reason":{"type":["string","null"]},"status":{"description":"'ranked' (normal), 'low_confidence' (capability requirements were relaxed to find any match), or 'quality_floor_refused' (candidates were found but the best one scored too low to recommend — see quality_floor_reason; models[] still lists what was considered).","type":"string"},"xpansion_update":{"description ⟨43 unchanged words⟩