Skip to main content
Glama

Server Details

Stop juggling chat windows. Complete your project in one seamless conversation.

Marvnor is a proprietary, hosted MCP/API service that gives your AI agent persistent project memory. Your agent saves confirmed or evidence-backed requirements, decisions, and changes. For each new question, Marvnor retrieves relevant saved records, verifies claims against them, and flags conflicting information for your confirmation. Records can be corrected or deleted as your project evolves.

Spend less time repeating the background and untangling old decisions. Pass only the current question and relevant results to your model to reduce repeated history in its input and keep your project moving.

Ownership verified
Status
Healthy
Uptime
91.7% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation4/5

The core CRUD tools are clearly separated by action: remember_facts creates, recall reads/searches, correct_fact updates, and forget_facts deletes. recall and verify have some conceptual overlap around checking knowledge, but verify is specifically claim/calculation/proof validation while recall is retrieval, so confusion is limited.

Naming Consistency4/5

Most names follow a verb_noun pattern such as remember_facts, forget_facts, and correct_fact, with recall and verify as verb-only exceptions. There is minor singular/plural inconsistency between correct_fact and the *_facts tools, but the naming remains predictable and readable.

Tool Count5/5

Five tools is well-scoped for a fact-memory server: create, read/search, update, delete, and verify. Each tool has a clear role and the set does not feel padded or thin.

Completeness5/5

The server covers the full lifecycle of stored facts: creation via remember_facts, retrieval/search and pagination via recall, correction via correct_fact, deletion via forget_facts, and validation via verify. Connection/status is also addressed through recall with an empty object, leaving no obvious dead ends.

Available Tools

5 tools
correct_factB
DestructiveIdempotent
Inspect

Edit recall(source)'s record_id via changes; use returned record_id. Dependents may change.

NameRequiredDescriptionDefault
changesYesReplacements; other fields unchanged.
record_idNomr_ answer key from recall(source).

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description adds real value beyond that by warning that 'Dependents may change', disclosing ripple effects the annotations don't capture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with no filler, but the terseness crosses into under-specification: 'Edit recall(source)'s record_id' is compressed to the point of ambiguity, and the chaining hint trails the mutation claim rather than leading with it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description hints that a record_id is returned and that dependents may shift, which is useful for a destructive mutation with no output schema. It still leaves the identifier oneOf and the scope of the 'changes' object unexplained, which matters for a nested-object, additionalProperties-allowed payload.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents 'changes', 'target', and 'record_id'. The description adds no detail on the oneOf alternatives (fact, record_id, client_record_id), which is the one parameter behavior the schema doesn't make self-evident.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The verb 'Edit' and resource 'record_id via changes' identify a mutation, and the reference to recall(source) ties it to a sibling. But the phrasing is cryptic shorthand, and the tool name 'correct_fact' never appears in the description, so an agent has to infer that this corrects an existing fact record rather than, say, renaming a record.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'use returned record_id' gives a concrete chaining instruction from recall(source), which is genuine usage context. It never says when to prefer this over verify or forget_facts, and it doesn't cover the fact/client_record_id identification paths allowed by the schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

forget_factsB
Destructive
Inspect

Permanently delete recall(source)'s record_ids; check deleted_count. Key remains; dependents may change/become UNKNOWN.

NameRequiredDescriptionDefault
rule_idsNoSaved definition IDs.
proof_idsNoSaved definition IDs.
record_idsNomr_ answer keys from recall(source).
computation_idsNoSaved definition IDs.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and idempotentHint=false, so the description is not carrying the safety burden alone. It does add real value by disclosing cascade behavior ('Key remains; dependents may change/become UNKNOWN') and pointing at deleted_count as a verification field, but it says nothing about permissions, partial failures, or what happens to the three other ID categories.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely compact and front-loaded: the destructive action, the required verification step, and the cascade caveat come in order. It is dense to the point of being cryptic ('recall(source)'), but no clause is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with four mutually exclusive ID families (maxProperties=1, minProperties=1), the description never says only one category may be supplied per call, and it doesn't explain the differing semantics of deleting rule_ids, proof_ids or computation_ids. Cascade effects are covered, but the one-of constraint that determines whether a call validates at all is not.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline 3 applies. The description adds the provenance of record_ids ('from recall(source)'), but rule_ids, proof_ids and computation_ids are only documented in the schema, and their descriptions are identical boilerplate ('Saved definition IDs'), so the description adds nothing for them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Permanently delete') and a specific resource (record_ids obtained from recall(source)), which lets an agent distinguish it from correct_fact or remember_facts. It doesn't name those siblings explicitly, so the differentiation is inferential rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the reference to 'recall(source)'s record_ids' – recall first, then forget – and 'check deleted_count' gives post-call guidance. However, there is no statement of when to use forget versus correct_fact for amending a fact, and no warnings about prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recallC
Read-onlyIdempotent
Inspect

source OR text: verified records keyed by record_id OR question search (not exhaustive). {}: connection. Pages: complete/next_cursor.

NameRequiredDescriptionDefault
textNoQuestion; known entity: use source.
limitNotext: 1-20 (default 12); source: 1-100 (default 20).
cursorNosource: next_cursor; keep filters.
schemaNoParameters: tool name, compute, computations, rules, proof, proofs, capabilities.
sourceNoExact saved entity/project name.

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds useful behavioral context that question search is not exhaustive and that results are paginated via 'complete/next_cursor', but '{}: connection' is cryptic and no return shape or permission context is given.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and somewhat front-loaded around the source/text distinction. However, the fragment '{}: connection.' is unexplained and does not earn its place, making the structure less useful than a clean two-sentence statement would be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex retrieval tool with a oneOf schema, five parameters, and no output schema, so the description should clarify return values and mode selection more fully. It mentions paging but does not explain record shape, what the empty-object mode returns, or how the schema mode differs from source/text; '{}: connection' is insufficient for an agent to predict the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all five parameters in detail. The description adds only high-level mode language ('source OR text', record_id keying, question search) and pagination wording, without explaining limits, cursor retention, or the schema mode beyond what the schema already says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a resource ('verified records') and two access modes ('source' keyed by record_id, and 'text' question search), but it never states the verb explicitly and the phrase '{}: connection' is opaque. It does not distinguish the tool from siblings such as verify or correct_fact, leaving the agent to infer that this is a retrieval operation from the name 'recall'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives only the terse 'source OR text' distinction and '(not exhaustive)' caveat. It provides no explicit guidance on when to use recall versus siblings like verify, correct_fact, forget_facts, or remember_facts, and no prerequisites or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

remember_factsAInspect

Save facts/definitions; returns accepted, record_ids. Duplicates reuse records; new values add (edit: correct_fact).

NameRequiredDescriptionDefault
rulesNo
proofsNo
relationsNo
computationsNo

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds useful behavior beyond the annotations: it returns accepted and record_ids, and duplicate facts reuse existing records rather than creating new ones. It does not discuss failure modes or permission requirements, but annotations already establish the write/non-destructive safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with no wasted words. The core action and deduplication behavior are front-loaded, and the edit alternative is correctly placed in parentheses.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The input schema is complex, with multiple mutually exclusive input modes and nested relation fields, yet the description does not explain those modes. It covers return values and duplicate handling, but leaves too much of the parameter structure unexplained for a tool with four input arrays and no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Top-level schema description coverage is 0%, and the description does not mention relations, computations, rules, or proofs at all. It says 'facts/definitions' but gives no mapping to the four input parameters or their selection rules.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: saving facts/definitions. It also distinguishes itself from the sibling correct_fact for edits and hints at its return values. An agent can tell what this tool does without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly points to correct_fact for editing, which is a useful alternative. It gives clear context for when to save new facts, but does not explicitly contrast with recall, verify, or forget_facts beyond the obvious save-vs-read distinction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verifyC
Read-onlyIdempotent
Inspect

Check exact claims/calculations/proofs; unknown fields: recall. Six fields: conclusion (TRUE/FALSE/UNKNOWN), conflict, reason, path, decision, evidence_kind.

NameRequiredDescriptionDefault
questionsYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered structurally. The description adds output-shape information with no output schema backing it: six fields including conclusion values TRUE/FALSE/UNKNOWN, plus conflict, reason, path, decision and evidence_kind. That is useful disclosure, but the fields are named without explaining what any of them mean or how conflict/decision are populated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and front-loads the purpose, which is good, but the compression goes too far: "unknown fields: recall" and the bare "Six fields:" list are telegraphic to the point of ambiguity. Brevity here costs comprehension rather than earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a complex tool: a nested array of question objects, mutually exclusive verification modes, a batch cap of 20, and no output schema. The description should explain the modes and the meaning of the six output fields, but instead it names them opaquely. An agent could form the call shape from the schema but would not understand what comes back or which mode to choose.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is reported at 0%, so the description carries the burden, and it does not explain the questions array, the required id, as_of, source/target, context.scope/qualifiers, or relation semantics at all. The only nod toward parameters is "unknown fields: recall," which hints at a lookup path but leaves the structure and modes (source+relation, claim, compute, proof) undescribed in the description text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Check exact claims/calculations/proofs" gives a verb (check) and a class of resource (claims/calculations/proofs), so the agent knows this is a verification tool. But it never contrasts itself with correct_fact or recall, so the boundary with siblings stays fuzzy. Purpose is inferable but not crisp.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"unknown fields: recall" is a real routing hint to a sibling for the case where the agent doesn't know a field, which is genuinely useful. However, there is no guidance on when to verify vs. correct_fact, no mention that this is read-only checking versus mutation, and no statement of prerequisites or the one-mode-per-question constraint that appears only in the schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedcorrect_fact3 fields changed
      • changedInput schema / properties / changes / description
        Previous value: -"Replacement fields; others unchanged."New value: +"Replacements; other fields unchanged."
      • changedInput schema / properties / changes / properties / target / description
        Previous value: -"New value, including status/name/amount."New value: +"New value (status/name/amount)."
      • changedInput schema / properties / record_id / description
        Previous value: -"Copy an mr_ answer key from recall(source)."New value: +"mr_ answer key from recall(source)."
    • Changedforget_facts1 field changed
      • changedInput schema / properties / record_ids / description
        Previous value: -"Copy mr_ answer keys from recall(source)."New value: +"mr_ answer keys from recall(source)."
    • Changedrecall4 fields changed
      • changedInput schema / properties / cursor / description
        Previous value: -"Source mode: next_cursor; keep filters unchanged."New value: +"source: next_cursor; keep filters."
      • changedInput schema / properties / schema / description
        Previous value: -"Full parameters: tool name, compute, computations, rules, proof, proofs, capabilities."New value: +"Parameters: tool name, compute, computations, rules, proof, proofs, capabilities."
      • changedInput schema / properties / source / description
        Previous value: -"Exact saved entity/project name; lists its records."New value: +"Exact saved entity/project name."
      • changedInput schema / properties / text / description
        Previous value: -"Full question to search; for a known entity use source."New value: +"Question; known entity: use source."
    • Changedverify2 fields changed
      • changedInput schema / properties / questions / items / description
        Previous value: -"Use exactly one mode: source+relation (+optional target), claim, compute, or proof."New value: +"One mode: source+relation (+target), claim, compute or proof."
      • changedInput schema / properties / questions / items / properties / relation / description
        Previous value: -"Exact saved property; recall source first if unknown."New value: +"Exact property; unknown: recall source."
  2. 7 tool updates
    • Removedbrowse_candidates
    • Removedcheck_connection
    • Changedcorrect_fact4 fields changed
      • addedInput schema / properties / changes / description
        Added value: +"Replacement fields; others unchanged."
      • addedInput schema / properties / changes / properties / target / description
        Added value: +"New value, including status/name/amount."
      • removedInput schema / properties / fact
        Removed value: -{
        -  "additionalProperties": true,
        -  "description": "Exact old values; retrieve first if missing.",
        -  "properties": {
        -    "relation": {
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "source": {
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "target": {
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [
        -    "source",
        -    "relation",
        -    "target"
        -  ],
        -  "type": "object"
        -}
      • addedInput schema / properties / record_id
        Added value: +{
        +  "description": "Copy an mr_ answer key from recall(source).",
        +  "type": "string"
        +}
    • Changedforget_facts5 fields changed
      • addedInput schema / properties / computation_ids / description
        Added value: +"Saved definition IDs."
      • removedInput schema / properties / fact
        Removed value: -{
        -  "additionalProperties": true,
        -  "description": "Exact old values; retrieve first if missing.",
        -  "properties": {
        -    "relation": {
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "source": {
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "target": {
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [
        -    "source",
        -    "relation",
        -    "target"
        -  ],
        -  "type": "object"
        -}
      • addedInput schema / properties / proof_ids / description
        Added value: +"Saved definition IDs."
      • addedInput schema / properties / record_ids
        Added value: +{
        +  "description": "Copy mr_ answer keys from recall(source).",
        +  "items": {
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • addedInput schema / properties / rule_ids / description
        Added value: +"Saved definition IDs."
    • Changedrecall9 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "maxProperties": 0
        +  },
        +  {
        +    "required": [
        +      "text"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "source"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "schema"
        +    ]
        +  }
        +]
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Source mode: next_cursor; keep filters unchanged.",
        +  "type": "string"
        +}
      • removedInput schema / properties / limit / default
        Removed value: -12
      • addedInput schema / properties / limit / description
        Added value: +"text: 1-20 (default 12); source: 1-100 (default 20)."
      • changedInput schema / properties / limit / maximum
        Previous value: -20New value: +100
      • addedInput schema / properties / schema
        Added value: +{
        +  "description": "Full parameters: tool name, compute, computations, rules, proof, proofs, capabilities.",
        +  "type": "string"
        +}
      • addedInput schema / properties / source
        Added value: +{
        +  "description": "Exact saved entity/project name; lists its records.",
        +  "type": "string"
        +}
      • addedInput schema / properties / text / description
        Added value: +"Full question to search; for a known entity use source."
      • changedInput schema / required
        Previous value: -[
        -  "text"
        -]New value: +[]
    • Changedremember_facts17 fields changed
      • addedInput schema / description
        Added value: +"Send relations OR computations OR (rules and/or proofs)."
      • changedInput schema / oneOf
        Previous value: -[
        -  {
        -    "required": [
        -      "relations"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "computations"
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "rules"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "proofs"
        -        ]
        -      }
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "properties": {
        +          "relations": {
        +            "minItems": 1
        +          }
        +        },
        +        "required": [
        +          "relations"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "computations": {
        +        "maxItems": 0
        +      },
        +      "proofs": {
        +        "maxItems": 0
        +      },
        +      "rules": {
        +        "maxItems": 0
        +      }
        +    }
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "properties": {
        +          "computations": {
        +            "minItems": 1
        +          }
        +        },
        +        "required": [
        +          "computations"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "proofs": {
        +        "maxItems": 0
        +      },
        +      "relations": {
        +        "maxItems": 0
        +      },
        +      "rules": {
        +        "maxItems": 0
        +      }
        +    }
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "properties": {
        +          "rules": {
        +            "minItems": 1
        +          }
        +        },
        +        "required": [
        +          "rules"
        +        ]
        +      },
        +      {
        +        "properties": {
        +          "proofs": {
        +            "minItems": 1
        +          }
        +        },
        +        "required": [
        +          "proofs"
        +        ]
        +      }
        +    ],
        +    "properties": {
        +      "computations": {
        +        "maxItems": 0
        +      },
        +      "relations": {
        +        "maxItems": 0
        +      }
        +    }
        +  }
        +]
      • changedInput schema / properties / computations / items / description
        Previous value: -"check_connection({\"schema\":\"computations\"})"New value: +"recall({\"schema\":\"computations\"})"
      • changedInput schema / properties / computations / minItems
        Previous value: -1New value: +0
      • changedInput schema / properties / proofs / items / description
        Previous value: -"check_connection({\"schema\":\"proofs\"})"New value: +"recall({\"schema\":\"proofs\"})"
      • changedInput schema / properties / proofs / minItems
        Previous value: -1New value: +0
      • addedInput schema / properties / relations / items / properties / context / properties / qualifiers / description
        Added value: +"Conditions: JSON scalars/lists."
      • addedInput schema / properties / relations / items / properties / context / properties / scope / description
        Added value: +"Project name/ID."
      • addedInput schema / properties / relations / items / properties / polarity / description
        Added value: +"1=assert (default); -1=explicit denial."
      • addedInput schema / properties / relations / items / properties / property_type / description
        Added value: +"Custom default: single. set=multiple; ordered/rules: full schema."
      • addedInput schema / properties / relations / items / properties / relation / description
        Added value: +"Property."
      • addedInput schema / properties / relations / items / properties / source / description
        Added value: +"Subject, not evidence source."
      • addedInput schema / properties / relations / items / properties / target / description
        Added value: +"Value."
      • addedInput schema / properties / relations / items / properties / validity / description
        Added value: +"ISO timestamps; interval uses valid_from/valid_to."
      • changedInput schema / properties / relations / minItems
        Previous value: -1New value: +0
      • changedInput schema / properties / rules / items / description
        Previous value: -"check_connection({\"schema\":\"rules\"})"New value: +"recall({\"schema\":\"rules\"})"
      • changedInput schema / properties / rules / minItems
        Previous value: -1New value: +0
    • Changedverify11 fields changed
      • changedInput schema / properties / questions / items / description
        Previous value: -"Use exactly one mode."New value: +"Use exactly one mode: source+relation (+optional target), claim, compute, or proof."
      • addedInput schema / properties / questions / items / properties / as_of / description
        Added value: +"ISO query time."
      • addedInput schema / properties / questions / items / properties / claim / description
        Added value: +"Expression: recall({\"schema\":\"verify\"})."
      • changedInput schema / properties / questions / items / properties / compute / description
        Previous value: -"check_connection({\"schema\":\"compute\"})"New value: +"recall({\"schema\":\"compute\"})"
      • addedInput schema / properties / questions / items / properties / context / properties / qualifiers / description
        Added value: +"Conditions: JSON scalars/lists."
      • addedInput schema / properties / questions / items / properties / context / properties / scope / description
        Added value: +"Project name/ID."
      • addedInput schema / properties / questions / items / properties / id / description
        Added value: +"Unique within questions."
      • changedInput schema / properties / questions / items / properties / proof / description
        Previous value: -"check_connection({\"schema\":\"proof\"})"New value: +"recall({\"schema\":\"proof\"})"
      • addedInput schema / properties / questions / items / properties / relation / description
        Added value: +"Exact saved property; recall source first if unknown."
      • addedInput schema / properties / questions / items / properties / source / description
        Added value: +"Subject, not evidence source."
      • addedInput schema / properties / questions / items / properties / target / description
        Added value: +"Value. Omit to find known values."
  3. 7 tool updates
    • Changedbrowse_candidates15 fields changed
      • removedInput schema / properties / as_of / maxLength
        Removed value: -80
      • removedInput schema / properties / as_of / minLength
        Removed value: -1
      • changedInput schema / properties / claim_statuses / description
        Previous value: -"Default established; select proposed/reported when requested."New value: +"Default: established."
      • removedInput schema / properties / claim_statuses / maxItems
        Removed value: -3
      • removedInput schema / properties / claim_statuses / minItems
        Removed value: -1
      • removedInput schema / properties / claim_statuses / uniqueItems
        Removed value: -true
      • removedInput schema / properties / cursor / maxLength
        Removed value: -512
      • removedInput schema / properties / cursor / minLength
        Removed value: -1
      • removedInput schema / properties / project / maxLength
        Removed value: -200
      • removedInput schema / properties / project / minLength
        Removed value: -1
      • removedInput schema / properties / relation / maxLength
        Removed value: -200
      • removedInput schema / properties / relation / minLength
        Removed value: -1
      • removedInput schema / properties / source / maxLength
        Removed value: -2000
      • removedInput schema / properties / source / minLength
        Removed value: -1
      • changedInput schema / required
        Previous value: -[
        -  "project",
        -  "source"
        -]New value: +[
        +  "source"
        +]
    • Changedcheck_connection1 field changed
      • changedInput schema / properties / schema / enum
        Previous value: -[
        -  "compute",
        -  "computations",
        -  "rules",
        -  "proof",
        -  "proofs"
        -]New value: +[
        +  "compute",
        +  "computations",
        +  "rules",
        +  "proof",
        +  "proofs",
        +  "remember_facts",
        +  "verify",
        +  "recall",
        +  "browse_candidates",
        +  "correct_fact",
        +  "forget_facts"
        +]
    • Changedcorrect_fact42 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • changedInput schema / oneOf
        Previous value: -[
        -  {
        -    "required": [
        -      "record_id"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "client_record_id"
        -    ]
        -  },
        -  {
        -    "required": [
        -      "fact"
        -    ]
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "fact"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "record_id"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "client_record_id"
        +    ]
        +  }
        +]
      • changedInput schema / properties / changes / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / changes / properties / confidence
        Removed value: -{
        -  "maximum": 1,
        -  "minimum": 0.01,
        -  "type": "number"
        -}
      • removedInput schema / properties / changes / properties / context
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "domain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "qualifiers": {
        -      "description": "Conditions: JSON scalars/lists, no nested objects.",
        -      "maxProperties": 64,
        -      "type": "object"
        -    },
        -    "scope": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subdomain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subject_version": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [],
        -  "type": "object"
        -}
      • removedInput schema / properties / changes / properties / entity_id
        Removed value: -{
        -  "description": "Canonical subject ID across evidence sources.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / evidence_refs
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "claim_hash": {
        -        "maxLength": 64,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "content_hash": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "excerpt": {
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "locator": {
        -        "maxLength": 500,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "observed_at": {
        -        "maxLength": 100,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "recorded_at": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "role": {
        -        "maxLength": 80,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "source_id": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "source_id",
        -      "locator"
        -    ],
        -    "type": "object"
        -  },
        -  "maxItems": 64,
        -  "minItems": 0,
        -  "type": "array"
        -}
      • removedInput schema / properties / changes / properties / evidence_source
        Removed value: -{
        -  "description": "Evidence label, not subject identity.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / polarity
        Removed value: -{
        -  "enum": [
        -    1,
        -    -1
        -  ],
        -  "type": "integer"
        -}
      • removedInput schema / properties / changes / properties / position
        Removed value: -{
        -  "maximum": 1000000,
        -  "minimum": 0,
        -  "type": "integer"
        -}
      • removedInput schema / properties / changes / properties / property_type
        Removed value: -{
        -  "enum": [
        -    "single",
        -    "set",
        -    "ordered",
        -    "rules"
        -  ],
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / provenance
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / relation
        Removed value: -{
        -  "description": "Property; custom properties default to single-valued.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / search_aliases
        Removed value: -{
        -  "items": {
        -    "description": "Field aliases for recall, not evidence or answer text.",
        -    "maxLength": 80,
        -    "minLength": 1,
        -    "type": "string"
        -  },
        -  "maxItems": 16,
        -  "minItems": 0,
        -  "type": "array"
        -}
      • removedInput schema / properties / changes / properties / source
        Removed value: -{
        -  "description": "Subject name/ID.",
        -  "maxLength": 10000,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / source_kind
        Removed value: -{
        -  "description": "Subject type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / target / description
        Removed value: -"Value/object, distinct from source."
      • removedInput schema / properties / changes / properties / target / maxLength
        Removed value: -10000
      • removedInput schema / properties / changes / properties / target / minLength
        Removed value: -1
      • removedInput schema / properties / changes / properties / target_kind
        Removed value: -{
        -  "description": "Value type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / unit
        Removed value: -{
        -  "description": "Value unit, e.g. hour or bed/nurse.",
        -  "maxLength": 100,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / changes / properties / validity
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "kind": {
        -      "enum": [
        -        "persistent",
        -        "interval"
        -      ],
        -      "type": "string"
        -    },
        -    "observed_at": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "recorded_at": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "valid_from": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "valid_to": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [],
        -  "type": "object"
        -}
      • removedInput schema / properties / client_record_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • changedInput schema / properties / fact / additionalProperties
        Previous value: -falseNew value: +true
      • addedInput schema / properties / fact / description
        Added value: +"Exact old values; retrieve first if missing."
      • removedInput schema / properties / fact / properties / context
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "domain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "qualifiers": {
        -      "description": "Conditions: JSON scalars/lists, no nested objects.",
        -      "maxProperties": 64,
        -      "type": "object"
        -    },
        -    "scope": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subdomain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subject_version": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [],
        -  "type": "object"
        -}
      • removedInput schema / properties / fact / properties / entity_id
        Removed value: -{
        -  "description": "Canonical subject ID across evidence sources.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / evidence_source
        Removed value: -{
        -  "description": "Evidence label, not subject identity.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / polarity
        Removed value: -{
        -  "enum": [
        -    1,
        -    -1
        -  ],
        -  "type": "integer"
        -}
      • removedInput schema / properties / fact / properties / position
        Removed value: -{
        -  "maximum": 1000000,
        -  "minimum": 0,
        -  "type": "integer"
        -}
      • removedInput schema / properties / fact / properties / property_type
        Removed value: -{
        -  "enum": [
        -    "single",
        -    "set",
        -    "ordered",
        -    "rules"
        -  ],
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / relation / description
        Removed value: -"Property; custom properties default to single-valued."
      • removedInput schema / properties / fact / properties / relation / maxLength
        Removed value: -200
      • removedInput schema / properties / fact / properties / source / description
        Removed value: -"Subject name/ID."
      • removedInput schema / properties / fact / properties / source / maxLength
        Removed value: -10000
      • removedInput schema / properties / fact / properties / source_kind
        Removed value: -{
        -  "description": "Subject type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / target / description
        Removed value: -"Value/object, distinct from source."
      • removedInput schema / properties / fact / properties / target / maxLength
        Removed value: -10000
      • removedInput schema / properties / fact / properties / target_kind
        Removed value: -{
        -  "description": "Value type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / unit
        Removed value: -{
        -  "description": "Value unit, e.g. hour or bed/nurse.",
        -  "maxLength": 100,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / fact / properties / validity
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "kind": {
        -      "enum": [
        -        "persistent",
        -        "interval"
        -      ],
        -      "type": "string"
        -    },
        -    "observed_at": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "recorded_at": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "valid_from": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "valid_to": {
        -      "maxLength": 100,
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [],
        -  "type": "object"
        -}
      • removedInput schema / properties / record_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
    • Changedforget_facts12 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / batch_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / client_record_ids
        Removed value: -{
        -  "items": {
        -    "maxLength": 200,
        -    "minLength": 1,
        -    "type": "string"
        -  },
        -  "maxItems": 10000,
        -  "minItems": 1,
        -  "type": "array"
        -}
      • removedInput schema / properties / computation_ids / items / maxLength
        Removed value: -100
      • removedInput schema / properties / computation_ids / items / minLength
        Removed value: -1
      • addedInput schema / properties / fact
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Exact old values; retrieve first if missing.",
        +  "properties": {
        +    "relation": {
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "source": {
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "target": {
        +      "minLength": 1,
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "source",
        +    "relation",
        +    "target"
        +  ],
        +  "type": "object"
        +}
      • removedInput schema / properties / proof_ids / items / maxLength
        Removed value: -100
      • removedInput schema / properties / proof_ids / items / minLength
        Removed value: -1
      • removedInput schema / properties / record_ids
        Removed value: -{
        -  "items": {
        -    "maxLength": 200,
        -    "minLength": 1,
        -    "type": "string"
        -  },
        -  "maxItems": 10000,
        -  "minItems": 1,
        -  "type": "array"
        -}
      • removedInput schema / properties / relations
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "context": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "domain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "qualifiers": {
        -            "description": "Conditions: JSON scalars/lists, no nested objects.",
        -            "maxProperties": 64,
        -            "type": "object"
        -          },
        -          "scope": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subdomain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subject_version": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          }
        -        },
        -        "required": [],
        -        "type": "object"
        -      },
        -      "entity_id": {
        -        "description": "Canonical subject ID across evidence sources.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "evidence_source": {
        -        "description": "Evidence label, not subject identity.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "polarity": {
        -        "enum": [
        -          1,
        -          -1
        -        ],
        -        "type": "integer"
        -      },
        -      "position": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "property_type": {
        -        "enum": [
        -          "single",
        -          "set",
        -          "ordered",
        -          "rules"
        -        ],
        -        "type": "string"
        -      },
        -      "relation": {
        -        "description": "Property; custom properties default to single-valued.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "source": {
        -        "description": "Subject name/ID.",
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Value/object, distinct from source.",
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "validity": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "kind": {
        -            "enum": [
        -              "persistent",
        -              "interval"
        -            ],
        -            "type": "string"
        -          },
        -          "observed_at": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "recorded_at": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "valid_from": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "valid_to": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          }
        -        },
        -        "required": [],
        -        "type": "object"
        -      }
        -    },
        -    "required": [
        -      "source",
        -      "relation",
        -      "target"
        -    ],
        -    "type": "object"
        -  },
        -  "maxItems": 10000,
        -  "minItems": 1,
        -  "type": "array"
        -}
      • removedInput schema / properties / rule_ids / items / maxLength
        Removed value: -100
      • removedInput schema / properties / rule_ids / items / minLength
        Removed value: -1
    • Changedrecall9 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / as_of
        Removed value: -{
        -  "maxLength": 100,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / context
        Removed value: -{
        -  "additionalProperties": false,
        -  "properties": {
        -    "domain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "qualifiers": {
        -      "description": "Conditions: JSON scalars/lists, no nested objects.",
        -      "maxProperties": 64,
        -      "type": "object"
        -    },
        -    "scope": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subdomain_id": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "subject_version": {
        -      "maxLength": 200,
        -      "minLength": 1,
        -      "type": "string"
        -    }
        -  },
        -  "required": [],
        -  "type": "object"
        -}
      • removedInput schema / properties / facets
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "as_of": {
        -        "maxLength": 100,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "context": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "domain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "qualifiers": {
        -            "description": "Conditions: JSON scalars/lists, no nested objects.",
        -            "maxProperties": 64,
        -            "type": "object"
        -          },
        -          "scope": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subdomain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subject_version": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          }
        -        },
        -        "required": [],
        -        "type": "object"
        -      },
        -      "source_kind": {
        -        "maxLength": 80,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "target_kind": {
        -        "maxLength": 80,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "text": {
        -        "maxLength": 2000,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "text"
        -    ],
        -    "type": "object"
        -  },
        -  "maxItems": 8,
        -  "minItems": 1,
        -  "type": "array"
        -}
      • removedInput schema / properties / include_source_context
        Removed value: -{
        -  "default": false,
        -  "description": "Include attributed excerpts, not full history.",
        -  "type": "boolean"
        -}
      • removedInput schema / properties / source_kind
        Removed value: -{
        -  "maxLength": 80,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / target_kind
        Removed value: -{
        -  "maxLength": 80,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / text / maxLength
        Removed value: -2000
      • removedInput schema / properties / text / minLength
        Removed value: -1
    • Changedremember_facts48 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • changedInput schema / oneOf
        Previous value: -[
        -  {
        -    "not": {
        -      "anyOf": [
        -        {
        -          "required": [
        -            "computations"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "rules"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "proofs"
        -          ]
        -        }
        -      ]
        -    },
        -    "required": [
        -      "relations"
        -    ]
        -  },
        -  {
        -    "not": {
        -      "anyOf": [
        -        {
        -          "required": [
        -            "relations"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "rules"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "proofs"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "batch_id"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "offset"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "total"
        -          ]
        -        }
        -      ]
        -    },
        -    "required": [
        -      "computations"
        -    ]
        -  },
        -  {
        -    "anyOf": [
        -      {
        -        "required": [
        -          "rules"
        -        ]
        -      },
        -      {
        -        "required": [
        -          "proofs"
        -        ]
        -      }
        -    ],
        -    "not": {
        -      "anyOf": [
        -        {
        -          "required": [
        -            "relations"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "computations"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "batch_id"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "offset"
        -          ]
        -        },
        -        {
        -          "required": [
        -            "total"
        -          ]
        -        }
        -      ]
        -    }
        -  }
        -]New value: +[
        +  {
        +    "required": [
        +      "relations"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "computations"
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "rules"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "proofs"
        +        ]
        +      }
        +    ]
        +  }
        +]
      • removedInput schema / properties / batch_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • changedInput schema / properties / computations / items / description
        Previous value: -"Parameter schema: check_connection({\"schema\":\"computations\"})."New value: +"check_connection({\"schema\":\"computations\"})"
      • addedInput schema / properties / computations / maxItems
        Added value: +10000
      • removedInput schema / properties / offset
        Removed value: -{
        -  "minimum": 0,
        -  "type": "integer"
        -}
      • changedInput schema / properties / proofs / items / description
        Previous value: -"Parameter schema: check_connection({\"schema\":\"proofs\"})."New value: +"check_connection({\"schema\":\"proofs\"})"
      • addedInput schema / properties / proofs / maxItems
        Added value: +10000
      • changedInput schema / properties / relations / items / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / relations / items / properties / client_record_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / confidence
        Removed value: -{
        -  "maximum": 1,
        -  "minimum": 0.01,
        -  "type": "number"
        -}
      • changedInput schema / properties / relations / items / properties / context / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / relations / items / properties / context / properties / domain_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / context / properties / qualifiers / description
        Removed value: -"Conditions: JSON scalars/lists, no nested objects."
      • removedInput schema / properties / relations / items / properties / context / properties / qualifiers / maxProperties
        Removed value: -64
      • removedInput schema / properties / relations / items / properties / context / properties / scope / maxLength
        Removed value: -200
      • removedInput schema / properties / relations / items / properties / context / properties / scope / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / context / properties / subdomain_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / context / properties / subject_version
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / entity_id
        Removed value: -{
        -  "description": "Canonical subject ID across evidence sources.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / evidence_refs
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "claim_hash": {
        -        "maxLength": 64,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "content_hash": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "excerpt": {
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "locator": {
        -        "maxLength": 500,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "observed_at": {
        -        "maxLength": 100,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "recorded_at": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "role": {
        -        "maxLength": 80,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "source_id": {
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "source_id",
        -      "locator"
        -    ],
        -    "type": "object"
        -  },
        -  "maxItems": 64,
        -  "minItems": 0,
        -  "type": "array"
        -}
      • removedInput schema / properties / relations / items / properties / evidence_source
        Removed value: -{
        -  "description": "Evidence label, not subject identity.",
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / position
        Removed value: -{
        -  "maximum": 1000000,
        -  "minimum": 0,
        -  "type": "integer"
        -}
      • removedInput schema / properties / relations / items / properties / provenance
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / relation / description
        Removed value: -"Property; custom properties default to single-valued."
      • removedInput schema / properties / relations / items / properties / relation / maxLength
        Removed value: -200
      • removedInput schema / properties / relations / items / properties / relation / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / search_aliases
        Removed value: -{
        -  "items": {
        -    "description": "Field aliases for recall, not evidence or answer text.",
        -    "maxLength": 80,
        -    "minLength": 1,
        -    "type": "string"
        -  },
        -  "maxItems": 16,
        -  "minItems": 0,
        -  "type": "array"
        -}
      • removedInput schema / properties / relations / items / properties / source / description
        Removed value: -"Subject name/ID."
      • removedInput schema / properties / relations / items / properties / source / maxLength
        Removed value: -10000
      • removedInput schema / properties / relations / items / properties / source / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / source_kind
        Removed value: -{
        -  "description": "Subject type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / target / description
        Removed value: -"Value/object, distinct from source."
      • removedInput schema / properties / relations / items / properties / target / maxLength
        Removed value: -10000
      • removedInput schema / properties / relations / items / properties / target / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / target_kind
        Removed value: -{
        -  "description": "Value type; disambiguates names.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / unit
        Removed value: -{
        -  "description": "Value unit, e.g. hour or bed/nurse.",
        -  "maxLength": 100,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations / items / properties / validity / properties / observed_at / maxLength
        Removed value: -100
      • removedInput schema / properties / relations / items / properties / validity / properties / observed_at / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / validity / properties / recorded_at / maxLength
        Removed value: -100
      • removedInput schema / properties / relations / items / properties / validity / properties / recorded_at / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / validity / properties / valid_from / maxLength
        Removed value: -100
      • removedInput schema / properties / relations / items / properties / validity / properties / valid_from / minLength
        Removed value: -1
      • removedInput schema / properties / relations / items / properties / validity / properties / valid_to / maxLength
        Removed value: -100
      • removedInput schema / properties / relations / items / properties / validity / properties / valid_to / minLength
        Removed value: -1
      • changedInput schema / properties / rules / items / description
        Previous value: -"Parameter schema: check_connection({\"schema\":\"rules\"})."New value: +"check_connection({\"schema\":\"rules\"})"
      • addedInput schema / properties / rules / maxItems
        Added value: +10000
      • removedInput schema / properties / total
        Removed value: -{
        -  "minimum": 1,
        -  "type": "integer"
        -}
    • Changedverify29 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / include_source_context
        Removed value: -{
        -  "default": false,
        -  "type": "boolean"
        -}
      • changedInput schema / properties / questions / items / additionalProperties
        Previous value: -falseNew value: +true
      • changedInput schema / properties / questions / items / description
        Previous value: -"Use exactly one mode: source/relation[/target], claim, compute, or proof. Kinds disambiguate direct queries. Separate fact checks and calculations into separate questions."New value: +"Use exactly one mode."
      • removedInput schema / properties / questions / items / properties / as_of / maxLength
        Removed value: -100
      • removedInput schema / properties / questions / items / properties / as_of / minLength
        Removed value: -1
      • addedInput schema / properties / questions / items / properties / claim / additionalProperties
        Added value: +true
      • removedInput schema / properties / questions / items / properties / claim / description
        Removed value: -"Nodes use op: atom {source,relation,target}; and/or {claims:[...]}; not {claim}; implies {if,then}; scope {claim,context and/or as_of}."
      • changedInput schema / properties / questions / items / properties / compute / description
        Previous value: -"Parameter schema: check_connection({\"schema\":\"compute\"})."New value: +"check_connection({\"schema\":\"compute\"})"
      • changedInput schema / properties / questions / items / properties / context / additionalProperties
        Previous value: -falseNew value: +true
      • removedInput schema / properties / questions / items / properties / context / properties / domain_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / questions / items / properties / context / properties / qualifiers / description
        Removed value: -"Conditions: JSON scalars/lists, no nested objects."
      • removedInput schema / properties / questions / items / properties / context / properties / qualifiers / maxProperties
        Removed value: -64
      • removedInput schema / properties / questions / items / properties / context / properties / scope / maxLength
        Removed value: -200
      • removedInput schema / properties / questions / items / properties / context / properties / scope / minLength
        Removed value: -1
      • removedInput schema / properties / questions / items / properties / context / properties / subdomain_id
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / questions / items / properties / context / properties / subject_version
        Removed value: -{
        -  "maxLength": 200,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedInput schema / properties / questions / items / properties / id / maxLength
        Removed value: -2000
      • removedInput schema / properties / questions / items / properties / id / minLength
        Removed value: -1
      • changedInput schema / properties / questions / items / properties / proof / description
        Previous value: -"Parameter schema: check_connection({\"schema\":\"proof\"})."New value: +"check_connection({\"schema\":\"proof\"})"
      • removedInput schema / properties / questions / items / properties / relation / maxLength
        Removed value: -2000
      • removedInput schema / properties / questions / items / properties / relation / minLength
        Removed value: -1
      • removedInput schema / properties / questions / items / properties / source / maxLength
        Removed value: -2000
      • removedInput schema / properties / questions / items / properties / source / minLength
        Removed value: -1
      • removedInput schema / properties / questions / items / properties / source_kind
        Removed value: -{
        -  "description": "Direct-query subject type.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / questions / items / properties / target / maxLength
        Removed value: -2000
      • removedInput schema / properties / questions / items / properties / target / minLength
        Removed value: -1
      • removedInput schema / properties / questions / items / properties / target_kind
        Removed value: -{
        -  "description": "Direct-query value type.",
        -  "maxLength": 80,
        -  "minLength": 2,
        -  "type": "string"
        -}
      • removedInput schema / properties / relations
        Removed value: -{
        -  "items": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "confidence": {
        -        "maximum": 1,
        -        "minimum": 0.01,
        -        "type": "number"
        -      },
        -      "context": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "domain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "qualifiers": {
        -            "description": "Conditions: JSON scalars/lists, no nested objects.",
        -            "maxProperties": 64,
        -            "type": "object"
        -          },
        -          "scope": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subdomain_id": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "subject_version": {
        -            "maxLength": 200,
        -            "minLength": 1,
        -            "type": "string"
        -          }
        -        },
        -        "required": [],
        -        "type": "object"
        -      },
        -      "entity_id": {
        -        "description": "Canonical subject ID across evidence sources.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "evidence_source": {
        -        "description": "Evidence label, not subject identity.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "polarity": {
        -        "enum": [
        -          1,
        -          -1
        -        ],
        -        "type": "integer"
        -      },
        -      "position": {
        -        "maximum": 1000000,
        -        "minimum": 0,
        -        "type": "integer"
        -      },
        -      "property_type": {
        -        "enum": [
        -          "single",
        -          "set",
        -          "ordered",
        -          "rules"
        -        ],
        -        "type": "string"
        -      },
        -      "relation": {
        -        "description": "Property; custom properties default to single-valued.",
        -        "maxLength": 200,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "source": {
        -        "description": "Subject name/ID.",
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "source_kind": {
        -        "description": "Subject type; disambiguates names.",
        -        "maxLength": 80,
        -        "minLength": 2,
        -        "type": "string"
        -      },
        -      "target": {
        -        "description": "Value/object, distinct from source.",
        -        "maxLength": 10000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "target_kind": {
        -        "description": "Value type; disambiguates names.",
        -        "maxLength": 80,
        -        "minLength": 2,
        -        "type": "string"
        -      },
        -      "unit": {
        -        "description": "Value unit, e.g. hour or bed/nurse.",
        -        "maxLength": 100,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "validity": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "kind": {
        -            "enum": [
        -              "persistent",
        -              "interval"
        -            ],
        -            "type": "string"
        -          },
        -          "observed_at": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "recorded_at": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "valid_from": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          },
        -          "valid_to": {
        -            "maxLength": 100,
        -            "minLength": 1,
        -            "type": "string"
        -          }
        -        },
        -        "required": [],
        -        "type": "object"
        -      }
        -    },
        -    "required": [
        -      "source",
        -      "relation",
        -      "target"
        -    ],
        -    "type": "object"
        -  },
        -  "maxItems": 200,
        -  "minItems": 0,
        -  "type": "array"
        -}
  4. 7 tool updates
    • Addedbrowse_candidates
    • Changedcheck_connection2 fields changed
      • addedInput schema / properties / include_capabilities
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • addedInput schema / properties / schema
        Added value: +{
        +  "enum": [
        +    "compute",
        +    "computations",
        +    "rules",
        +    "proof",
        +    "proofs"
        +  ],
        +  "type": "string"
        +}
    • Changedcorrect_fact15 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "required": [
        +      "record_id"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "client_record_id"
        +    ]
        +  },
        +  {
        +    "required": [
        +      "fact"
        +    ]
        +  }
        +]
      • changedInput schema / properties / changes / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • changedInput schema / properties / changes / properties / entity_id / description
        Previous value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources."
      • addedInput schema / properties / changes / properties / evidence_refs / items / properties / recorded_at
        Added value: +{
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / properties / changes / properties / evidence_source / description
        Previous value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity."
      • changedInput schema / properties / changes / properties / relation / description
        Previous value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued."
      • addedInput schema / properties / changes / properties / search_aliases
        Added value: +{
        +  "items": {
        +    "description": "Field aliases for recall, not evidence or answer text.",
        +    "maxLength": 80,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 16,
        +  "minItems": 0,
        +  "type": "array"
        +}
      • changedInput schema / properties / changes / properties / source / description
        Previous value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID."
      • addedInput schema / properties / changes / properties / source_kind
        Added value: +{
        +  "description": "Subject type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / changes / properties / target / description
        Previous value: -"Value or object, different from source."New value: +"Value/object, distinct from source."
      • addedInput schema / properties / changes / properties / target_kind
        Added value: +{
        +  "description": "Value type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / changes / properties / unit / description
        Previous value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse."
      • addedInput schema / properties / client_record_id
        Added value: +{
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / fact
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "context": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "domain_id": {
        +          "maxLength": 200,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "qualifiers": {
        +          "description": "Conditions: JSON scalars/lists, no nested objects.",
        +          "maxProperties": 64,
        +          "type": "object"
        +        },
        +        "scope": {
        +          "maxLength": 200,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "subdomain_id": {
        +          "maxLength": 200,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "subject_version": {
        +          "maxLength": 200,
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [],
        +      "type": "object"
        +    },
        +    "entity_id": {
        +      "description": "Canonical subject ID across evidence sources.",
        +      "maxLength": 200,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "evidence_source": {
        +      "description": "Evidence label, not subject identity.",
        +      "maxLength": 200,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "polarity": {
        +      "enum": [
        +        1,
        +        -1
        +      ],
        +      "type": "integer"
        +    },
        +    "position": {
        +      "maximum": 1000000,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "property_type": {
        +      "enum": [
        +        "single",
        +        "set",
        +        "ordered",
        +        "rules"
        +      ],
        +      "type": "string"
        +    },
        +    "relation": {
        +      "description": "Property; custom properties default to single-valued.",
        +      "maxLength": 200,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "source": {
        +      "description": "Subject name/ID.",
        +      "maxLength": 10000,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "source_kind": {
        +      "description": "Subject type; disambiguates names.",
        +      "maxLength": 80,
        +      "minLength": 2,
        +      "type": "string"
        +    },
        +    "target": {
        +      "description": "Value/object, distinct from source.",
        +      "maxLength": 10000,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "target_kind": {
        +      "description": "Value type; disambiguates names.",
        +      "maxLength": 80,
        +      "minLength": 2,
        +      "type": "string"
        +    },
        +    "unit": {
        +      "description": "Value unit, e.g. hour or bed/nurse.",
        +      "maxLength": 100,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "validity": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "kind": {
        +          "enum": [
        +            "persistent",
        +            "interval"
        +          ],
        +          "type": "string"
        +        },
        +        "observed_at": {
        +          "maxLength": 100,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "recorded_at": {
        +          "maxLength": 100,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "valid_from": {
        +          "maxLength": 100,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "valid_to": {
        +          "maxLength": 100,
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [],
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "source",
        +    "relation",
        +    "target"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "record_id",
        -  "changes"
        -]New value: +[
        +  "changes"
        +]
    • Changedforget_facts11 fields changed
      • addedInput schema / properties / computation_ids
        Added value: +{
        +  "items": {
        +    "maxLength": 100,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • addedInput schema / properties / proof_ids
        Added value: +{
        +  "items": {
        +    "maxLength": 100,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • changedInput schema / properties / relations / items / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • addedInput schema / properties / relations / items / properties / entity_id
        Added value: +{
        +  "description": "Canonical subject ID across evidence sources.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / evidence_source
        Added value: +{
        +  "description": "Evidence label, not subject identity.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / position
        Added value: +{
        +  "maximum": 1000000,
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedInput schema / properties / relations / items / properties / property_type
        Added value: +{
        +  "enum": [
        +    "single",
        +    "set",
        +    "ordered",
        +    "rules"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / relation / description
        Previous value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued."
      • changedInput schema / properties / relations / items / properties / source / description
        Previous value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID."
      • changedInput schema / properties / relations / items / properties / target / description
        Previous value: -"Value or object, different from source."New value: +"Value/object, distinct from source."
      • addedInput schema / properties / rule_ids
        Added value: +{
        +  "items": {
        +    "maxLength": 100,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
    • Changedrecall7 fields changed
      • changedInput schema / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • changedInput schema / properties / facets / items / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • addedInput schema / properties / facets / items / properties / source_kind
        Added value: +{
        +  "maxLength": 80,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / facets / items / properties / target_kind
        Added value: +{
        +  "maxLength": 80,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / include_source_context
        Added value: +{
        +  "default": false,
        +  "description": "Include attributed excerpts, not full history.",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / source_kind
        Added value: +{
        +  "maxLength": 80,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / target_kind
        Added value: +{
        +  "maxLength": 80,
        +  "minLength": 1,
        +  "type": "string"
        +}
    • Changedremember_facts16 fields changed
      • addedInput schema / oneOf
        Added value: +[
        +  {
        +    "not": {
        +      "anyOf": [
        +        {
        +          "required": [
        +            "computations"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "rules"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "proofs"
        +          ]
        +        }
        +      ]
        +    },
        +    "required": [
        +      "relations"
        +    ]
        +  },
        +  {
        +    "not": {
        +      "anyOf": [
        +        {
        +          "required": [
        +            "relations"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "rules"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "proofs"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "batch_id"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "offset"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "total"
        +          ]
        +        }
        +      ]
        +    },
        +    "required": [
        +      "computations"
        +    ]
        +  },
        +  {
        +    "anyOf": [
        +      {
        +        "required": [
        +          "rules"
        +        ]
        +      },
        +      {
        +        "required": [
        +          "proofs"
        +        ]
        +      }
        +    ],
        +    "not": {
        +      "anyOf": [
        +        {
        +          "required": [
        +            "relations"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "computations"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "batch_id"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "offset"
        +          ]
        +        },
        +        {
        +          "required": [
        +            "total"
        +          ]
        +        }
        +      ]
        +    }
        +  }
        +]
      • addedInput schema / properties / computations
        Added value: +{
        +  "items": {
        +    "additionalProperties": true,
        +    "description": "Parameter schema: check_connection({\"schema\":\"computations\"}).",
        +    "type": "object"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • addedInput schema / properties / proofs
        Added value: +{
        +  "items": {
        +    "additionalProperties": true,
        +    "description": "Parameter schema: check_connection({\"schema\":\"proofs\"}).",
        +    "type": "object"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • changedInput schema / properties / relations / items / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • changedInput schema / properties / relations / items / properties / entity_id / description
        Previous value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources."
      • addedInput schema / properties / relations / items / properties / evidence_refs / items / properties / recorded_at
        Added value: +{
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / evidence_source / description
        Previous value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity."
      • changedInput schema / properties / relations / items / properties / relation / description
        Previous value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued."
      • addedInput schema / properties / relations / items / properties / search_aliases
        Added value: +{
        +  "items": {
        +    "description": "Field aliases for recall, not evidence or answer text.",
        +    "maxLength": 80,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 16,
        +  "minItems": 0,
        +  "type": "array"
        +}
      • changedInput schema / properties / relations / items / properties / source / description
        Previous value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID."
      • addedInput schema / properties / relations / items / properties / source_kind
        Added value: +{
        +  "description": "Subject type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / target / description
        Previous value: -"Value or object, different from source."New value: +"Value/object, distinct from source."
      • addedInput schema / properties / relations / items / properties / target_kind
        Added value: +{
        +  "description": "Value type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / unit / description
        Previous value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse."
      • addedInput schema / properties / rules
        Added value: +{
        +  "items": {
        +    "additionalProperties": true,
        +    "description": "Parameter schema: check_connection({\"schema\":\"rules\"}).",
        +    "type": "object"
        +  },
        +  "minItems": 1,
        +  "type": "array"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "relations"
        -]New value: +[]
    • Changedverify20 fields changed
      • addedInput schema / properties / include_source_context
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • changedInput schema / properties / questions / items / description
        Previous value: -"Each question must use exactly one mode: direct source/relation/optional target, claim, or compute. For a calculation that also needs a separate fact check, send two question objects."New value: +"Use exactly one mode: source/relation[/target], claim, compute, or proof. Kinds disambiguate direct queries. Separate fact checks and calculations into separate questions."
      • changedInput schema / properties / questions / items / properties / claim / description
        Previous value: -"Composite claim instead of source/relation/target: atom {source,relation,target}; and/or {claims:[...]}; not {claim}; implies {if,then}; scope {claim,context and/or as_of}. Each node has op. Omit target in a normal question to retrieve known candidate values."New value: +"Nodes use op: atom {source,relation,target}; and/or {claims:[...]}; not {claim}; implies {if,then}; scope {claim,context and/or as_of}."
      • changedInput schema / properties / questions / items / properties / compute / additionalProperties
        Previous value: -falseNew value: +true
      • changedInput schema / properties / questions / items / properties / compute / description
        Previous value: -"Use this mode instead of a direct source/relation/target or claim query. When compute is present, the question object may contain only id, compute, context and as_of. Put all saved premises inside compute.facts; do not add source, relation, target or claim at the question level."New value: +"Parameter schema: check_connection({\"schema\":\"compute\"})."
      • removedInput schema / properties / questions / items / properties / compute / properties
        Removed value: -{
        -  "draft": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "unit": {
        -        "description": "Optional result unit or directed ratio unit."
        -      },
        -      "value": {
        -        "description": "Optional proposed result to check against the CPU result."
        -      }
        -    },
        -    "required": [
        -      "value"
        -    ],
        -    "type": "object"
        -  },
        -  "facts": {
        -    "items": {
        -      "additionalProperties": false,
        -      "properties": {
        -        "as_of": {
        -          "maxLength": 100,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "context": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "domain_id": {
        -              "maxLength": 200,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "qualifiers": {
        -              "description": "Conditions accepted by normalize_context: JSON scalars or lists, no nested objects.",
        -              "maxProperties": 64,
        -              "type": "object"
        -            },
        -            "scope": {
        -              "maxLength": 200,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "subdomain_id": {
        -              "maxLength": 200,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "subject_version": {
        -              "maxLength": 200,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [],
        -          "type": "object"
        -        },
        -        "id": {
        -          "description": "Short input name used by ref nodes in the plan.",
        -          "maxLength": 100,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "mode": {
        -          "enum": [
        -            "one",
        -            "all"
        -          ],
        -          "type": "string"
        -        },
        -        "relation": {
        -          "description": "Saved fact property.",
        -          "maxLength": 200,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "source": {
        -          "description": "Saved fact subject.",
        -          "maxLength": 2000,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "unit": {
        -          "description": "Optional unit assertion; must match the saved unit. Omit to use the saved unit.",
        -          "maxLength": 100,
        -          "minLength": 1,
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "id",
        -        "source",
        -        "relation"
        -      ],
        -      "type": "object"
        -    },
        -    "maxItems": 64,
        -    "minItems": 1,
        -    "type": "array"
        -  },
        -  "plan": {
        -    "description": "Evidence-bound operation tree. Supported ops: ref, add, subtract, multiply, divide, ceil, floor, round, sum, count, distinct, min, max, ratio, compare, and, or, not and date_diff. Use ref {op:'ref',id:'...'} for every input. Pass operation inputs with args:[...] (including binary ops); unary operations use arg. Subtract and divide take two ordered args. Never use left/right fields. Arbitrary code and literal evidence are rejected.",
        -    "type": "object"
        -  }
        -}
      • removedInput schema / properties / questions / items / properties / compute / required
        Removed value: -[
        -  "facts",
        -  "plan"
        -]
      • changedInput schema / properties / questions / items / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • addedInput schema / properties / questions / items / properties / proof
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Parameter schema: check_connection({\"schema\":\"proof\"}).",
        +  "type": "object"
        +}
      • addedInput schema / properties / questions / items / properties / source_kind
        Added value: +{
        +  "description": "Direct-query subject type.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • addedInput schema / properties / questions / items / properties / target_kind
        Added value: +{
        +  "description": "Direct-query value type.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / context / properties / qualifiers / description
        Previous value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects."
      • changedInput schema / properties / relations / items / properties / entity_id / description
        Previous value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources."
      • changedInput schema / properties / relations / items / properties / evidence_source / description
        Previous value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity."
      • changedInput schema / properties / relations / items / properties / relation / description
        Previous value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued."
      • changedInput schema / properties / relations / items / properties / source / description
        Previous value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID."
      • addedInput schema / properties / relations / items / properties / source_kind
        Added value: +{
        +  "description": "Subject type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / target / description
        Previous value: -"Value or object, different from source."New value: +"Value/object, distinct from source."
      • addedInput schema / properties / relations / items / properties / target_kind
        Added value: +{
        +  "description": "Value type; disambiguates names.",
        +  "maxLength": 80,
        +  "minLength": 2,
        +  "type": "string"
        +}
      • changedInput schema / properties / relations / items / properties / unit / description
        Previous value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse."
  5. 1 tool update
    • Changedverify3 fields changed
      • addedInput schema / properties / questions / items / description
        Added value: +"Each question must use exactly one mode: direct source/relation/optional target, claim, or compute. For a calculation that also needs a separate fact check, send two question objects."
      • addedInput schema / properties / questions / items / properties / compute / description
        Added value: +"Use this mode instead of a direct source/relation/target or claim query. When compute is present, the question object may contain only id, compute, context and as_of. Put all saved premises inside compute.facts; do not add source, relation, target or claim at the question level."
      • changedInput schema / properties / questions / items / properties / compute / properties / plan / description
        Previous value: -"Evidence-bound operation tree. Supported ops: ref, add, subtract, multiply, divide, ceil, floor, round, sum, count, distinct, min, max, ratio, compare, and, or, not and date_diff. Use ref {op:'ref',id:'...'} for every input; arbitrary code and literal evidence are rejected."New value: +"Evidence-bound operation tree. Supported ops: ref, add, subtract, multiply, divide, ceil, floor, round, sum, count, distinct, min, max, ratio, compare, and, or, not and date_diff. Use ref {op:'ref',id:'...'} for every input. Pass operation inputs with args:[...] (including binary ops); unary operations use arg. Subtract and divide take two ordered args. Never use left/right fields. Arbitrary code and literal evidence are rejected."
  6. 3 tool updates
    • Changedcorrect_fact5 fields changed
      • addedInput schema / properties / changes / properties / entity_id
        Added value: +{
        +  "description": "Explicit canonical subject ID, shared across its evidence sources.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / changes / properties / evidence_source
        Added value: +{
        +  "description": "Source document or record label; does not change the subject identity.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / changes / properties / position
        Added value: +{
        +  "maximum": 1000000,
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedInput schema / properties / changes / properties / property_type
        Added value: +{
        +  "enum": [
        +    "single",
        +    "set",
        +    "ordered",
        +    "rules"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / changes / properties / unit
        Added value: +{
        +  "description": "Unit of the saved value, such as hour, bed or bed/nurse.",
        +  "maxLength": 100,
        +  "minLength": 1,
        +  "type": "string"
        +}
    • Changedremember_facts5 fields changed
      • addedInput schema / properties / relations / items / properties / entity_id
        Added value: +{
        +  "description": "Explicit canonical subject ID, shared across its evidence sources.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / evidence_source
        Added value: +{
        +  "description": "Source document or record label; does not change the subject identity.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / position
        Added value: +{
        +  "maximum": 1000000,
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedInput schema / properties / relations / items / properties / property_type
        Added value: +{
        +  "enum": [
        +    "single",
        +    "set",
        +    "ordered",
        +    "rules"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / unit
        Added value: +{
        +  "description": "Unit of the saved value, such as hour, bed or bed/nurse.",
        +  "maxLength": 100,
        +  "minLength": 1,
        +  "type": "string"
        +}
    • Changedverify6 fields changed
      • addedInput schema / properties / questions / items / properties / compute
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "draft": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "unit": {
        +          "description": "Optional result unit or directed ratio unit."
        +        },
        +        "value": {
        +          "description": "Optional proposed result to check against the CPU result."
        +        }
        +      },
        +      "required": [
        +        "value"
        +      ],
        +      "type": "object"
        +    },
        +    "facts": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "as_of": {
        +            "maxLength": 100,
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "context": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "domain_id": {
        +                "maxLength": 200,
        +                "minLength": 1,
        +                "type": "string"
        +              },
        +              "qualifiers": {
        +                "description": "Conditions accepted by normalize_context: JSON scalars or lists, no nested objects.",
        +                "maxProperties": 64,
        +                "type": "object"
        +              },
        +              "scope": {
        +                "maxLength": 200,
        +                "minLength": 1,
        +                "type": "string"
        +              },
        +              "subdomain_id": {
        +                "maxLength": 200,
        +                "minLength": 1,
        +                "type": "string"
        +              },
        +              "subject_version": {
        +                "maxLength": 200,
        +                "minLength": 1,
        +                "type": "string"
        +              }
        +            },
        +            "required": [],
        +            "type": "object"
        +          },
        +          "id": {
        +            "description": "Short input name used by ref nodes in the plan.",
        +            "maxLength": 100,
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "mode": {
        +            "enum": [
        +              "one",
        +              "all"
        +            ],
        +            "type": "string"
        +          },
        +          "relation": {
        +            "description": "Saved fact property.",
        +            "maxLength": 200,
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "source": {
        +            "description": "Saved fact subject.",
        +            "maxLength": 2000,
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "unit": {
        +            "description": "Optional unit assertion; must match the saved unit. Omit to use the saved unit.",
        +            "maxLength": 100,
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "id",
        +          "source",
        +          "relation"
        +        ],
        +        "type": "object"
        +      },
        +      "maxItems": 64,
        +      "minItems": 1,
        +      "type": "array"
        +    },
        +    "plan": {
        +      "description": "Evidence-bound operation tree. Supported ops: ref, add, subtract, multiply, divide, ceil, floor, round, sum, count, distinct, min, max, ratio, compare, and, or, not and date_diff. Use ref {op:'ref',id:'...'} for every input; arbitrary code and literal evidence are rejected.",
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "facts",
        +    "plan"
        +  ],
        +  "type": "object"
        +}
      • addedInput schema / properties / relations / items / properties / entity_id
        Added value: +{
        +  "description": "Explicit canonical subject ID, shared across its evidence sources.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / evidence_source
        Added value: +{
        +  "description": "Source document or record label; does not change the subject identity.",
        +  "maxLength": 200,
        +  "minLength": 1,
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / position
        Added value: +{
        +  "maximum": 1000000,
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedInput schema / properties / relations / items / properties / property_type
        Added value: +{
        +  "enum": [
        +    "single",
        +    "set",
        +    "ordered",
        +    "rules"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / relations / items / properties / unit
        Added value: +{
        +  "description": "Unit of the saved value, such as hour, bed or bed/nurse.",
        +  "maxLength": 100,
        +  "minLength": 1,
        +  "type": "string"
        +}
  7. 6 tool updates
    • First observedcheck_connection
    • First observedcorrect_fact
    • First observedforget_facts
    • First observedrecall
    • First observedremember_facts
    • First observedverify

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MARM MCP provides persistent memory and structured session context beneath any AI tool, so your agents learn, remember, and collaborate across all your workflows.
    16
    428
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides a hosted remote MCP server that lets compatible AI clients retrieve and save durable context, checkpoints, operating rules, project notes, and permission-controlled templates for continuity across ChatGPT, Claude, IDEs, coding agents, and other AI tools. It enables token-efficient startup and resume handoffs so users can move projects between tools without rebuilding detailed prompts each session.
    1
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Gives AI coding agents a persistent memory that carries across sessions and projects, letting them save and search decisions, bug fixes, and discoveries through MCP tools. Each new session loads the recent memories of the current project so agents resume with the same context instead of re-explaining it.
    5
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources