Marvnor
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.
- Status
- Healthy
- Uptime
- 91.7% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 5 tools
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.
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.
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.
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 toolscorrect_factBDestructiveIdempotentInspect
Edit recall(source)'s record_id via changes; use returned record_id. Dependents may change.
| Name | Required | Description | Default |
|---|---|---|---|
| changes | Yes | Replacements; other fields unchanged. | |
| record_id | No | mr_ answer key from recall(source). |
TDQS
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.
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.
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.
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.
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.
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_factsBDestructiveInspect
Permanently delete recall(source)'s record_ids; check deleted_count. Key remains; dependents may change/become UNKNOWN.
| Name | Required | Description | Default |
|---|---|---|---|
| rule_ids | No | Saved definition IDs. | |
| proof_ids | No | Saved definition IDs. | |
| record_ids | No | mr_ answer keys from recall(source). | |
| computation_ids | No | Saved definition IDs. |
TDQS
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.
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.
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.
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.
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.
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.
recallCRead-onlyIdempotentInspect
source OR text: verified records keyed by record_id OR question search (not exhaustive). {}: connection. Pages: complete/next_cursor.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Question; known entity: use source. | |
| limit | No | text: 1-20 (default 12); source: 1-100 (default 20). | |
| cursor | No | source: next_cursor; keep filters. | |
| schema | No | Parameters: tool name, compute, computations, rules, proof, proofs, capabilities. | |
| source | No | Exact saved entity/project name. |
TDQS
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.
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.
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.
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.
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.
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).
| Name | Required | Description | Default |
|---|---|---|---|
| rules | No | ||
| proofs | No | ||
| relations | No | ||
| computations | No |
TDQS
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.
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.
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.
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.
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.
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.
verifyCRead-onlyIdempotentInspect
Check exact claims/calculations/proofs; unknown fields: recall. Six fields: conclusion (TRUE/FALSE/UNKNOWN), conflict, reason, path, decision, evidence_kind.
| Name | Required | Description | Default |
|---|---|---|---|
| questions | Yes |
TDQS
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.
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.
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.
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.
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.
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.
4 tool updates
- Changed
correct_fact3 fields changed- changed
Input schema / properties / changes / descriptionPrevious value: -"Replacement fields; others unchanged."New value: +"Replacements; other fields unchanged." - changed
Input schema / properties / changes / properties / target / descriptionPrevious value: -"New value, including status/name/amount."New value: +"New value (status/name/amount)." - changed
Input schema / properties / record_id / descriptionPrevious value: -"Copy an mr_ answer key from recall(source)."New value: +"mr_ answer key from recall(source)."
- Changed
forget_facts1 field changed- changed
Input schema / properties / record_ids / descriptionPrevious value: -"Copy mr_ answer keys from recall(source)."New value: +"mr_ answer keys from recall(source)."
- Changed
recall4 fields changed- changed
Input schema / properties / cursor / descriptionPrevious value: -"Source mode: next_cursor; keep filters unchanged."New value: +"source: next_cursor; keep filters." - changed
Input schema / properties / schema / descriptionPrevious value: -"Full parameters: tool name, compute, computations, rules, proof, proofs, capabilities."New value: +"Parameters: tool name, compute, computations, rules, proof, proofs, capabilities." - changed
Input schema / properties / source / descriptionPrevious value: -"Exact saved entity/project name; lists its records."New value: +"Exact saved entity/project name." - changed
Input schema / properties / text / descriptionPrevious value: -"Full question to search; for a known entity use source."New value: +"Question; known entity: use source."
- Changed
verify2 fields changed- changed
Input schema / properties / questions / items / descriptionPrevious value: -"Use exactly one mode: source+relation (+optional target), claim, compute, or proof."New value: +"One mode: source+relation (+target), claim, compute or proof." - changed
Input schema / properties / questions / items / properties / relation / descriptionPrevious value: -"Exact saved property; recall source first if unknown."New value: +"Exact property; unknown: recall source."
7 tool updates
- Removed
browse_candidates - Removed
check_connection - Changed
correct_fact4 fields changed- added
Input schema / properties / changes / descriptionAdded value: +"Replacement fields; others unchanged." - added
Input schema / properties / changes / properties / target / descriptionAdded value: +"New value, including status/name/amount." - removed
Input schema / properties / factRemoved 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" -} - added
Input schema / properties / record_idAdded value: +{ + "description": "Copy an mr_ answer key from recall(source).", + "type": "string" +}
- Changed
forget_facts5 fields changed- added
Input schema / properties / computation_ids / descriptionAdded value: +"Saved definition IDs." - removed
Input schema / properties / factRemoved 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" -} - added
Input schema / properties / proof_ids / descriptionAdded value: +"Saved definition IDs." - added
Input schema / properties / record_idsAdded value: +{ + "description": "Copy mr_ answer keys from recall(source).", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / rule_ids / descriptionAdded value: +"Saved definition IDs."
- Changed
recall9 fields changed- added
Input schema / oneOfAdded value: +[ + { + "maxProperties": 0 + }, + { + "required": [ + "text" + ] + }, + { + "required": [ + "source" + ] + }, + { + "required": [ + "schema" + ] + } +] - added
Input schema / properties / cursorAdded value: +{ + "description": "Source mode: next_cursor; keep filters unchanged.", + "type": "string" +} - removed
Input schema / properties / limit / defaultRemoved value: -12 - added
Input schema / properties / limit / descriptionAdded value: +"text: 1-20 (default 12); source: 1-100 (default 20)." - changed
Input schema / properties / limit / maximumPrevious value: -20New value: +100 - added
Input schema / properties / schemaAdded value: +{ + "description": "Full parameters: tool name, compute, computations, rules, proof, proofs, capabilities.", + "type": "string" +} - added
Input schema / properties / sourceAdded value: +{ + "description": "Exact saved entity/project name; lists its records.", + "type": "string" +} - added
Input schema / properties / text / descriptionAdded value: +"Full question to search; for a known entity use source." - changed
Input schema / requiredPrevious value: -[ - "text" -]New value: +[]
- Changed
remember_facts17 fields changed- added
Input schema / descriptionAdded value: +"Send relations OR computations OR (rules and/or proofs)." - changed
Input schema / oneOfPrevious 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 + } + } + } +] - changed
Input schema / properties / computations / items / descriptionPrevious value: -"check_connection({\"schema\":\"computations\"})"New value: +"recall({\"schema\":\"computations\"})" - changed
Input schema / properties / computations / minItemsPrevious value: -1New value: +0 - changed
Input schema / properties / proofs / items / descriptionPrevious value: -"check_connection({\"schema\":\"proofs\"})"New value: +"recall({\"schema\":\"proofs\"})" - changed
Input schema / properties / proofs / minItemsPrevious value: -1New value: +0 - added
Input schema / properties / relations / items / properties / context / properties / qualifiers / descriptionAdded value: +"Conditions: JSON scalars/lists." - added
Input schema / properties / relations / items / properties / context / properties / scope / descriptionAdded value: +"Project name/ID." - added
Input schema / properties / relations / items / properties / polarity / descriptionAdded value: +"1=assert (default); -1=explicit denial." - added
Input schema / properties / relations / items / properties / property_type / descriptionAdded value: +"Custom default: single. set=multiple; ordered/rules: full schema." - added
Input schema / properties / relations / items / properties / relation / descriptionAdded value: +"Property." - added
Input schema / properties / relations / items / properties / source / descriptionAdded value: +"Subject, not evidence source." - added
Input schema / properties / relations / items / properties / target / descriptionAdded value: +"Value." - added
Input schema / properties / relations / items / properties / validity / descriptionAdded value: +"ISO timestamps; interval uses valid_from/valid_to." - changed
Input schema / properties / relations / minItemsPrevious value: -1New value: +0 - changed
Input schema / properties / rules / items / descriptionPrevious value: -"check_connection({\"schema\":\"rules\"})"New value: +"recall({\"schema\":\"rules\"})" - changed
Input schema / properties / rules / minItemsPrevious value: -1New value: +0
- Changed
verify11 fields changed- changed
Input schema / properties / questions / items / descriptionPrevious value: -"Use exactly one mode."New value: +"Use exactly one mode: source+relation (+optional target), claim, compute, or proof." - added
Input schema / properties / questions / items / properties / as_of / descriptionAdded value: +"ISO query time." - added
Input schema / properties / questions / items / properties / claim / descriptionAdded value: +"Expression: recall({\"schema\":\"verify\"})." - changed
Input schema / properties / questions / items / properties / compute / descriptionPrevious value: -"check_connection({\"schema\":\"compute\"})"New value: +"recall({\"schema\":\"compute\"})" - added
Input schema / properties / questions / items / properties / context / properties / qualifiers / descriptionAdded value: +"Conditions: JSON scalars/lists." - added
Input schema / properties / questions / items / properties / context / properties / scope / descriptionAdded value: +"Project name/ID." - added
Input schema / properties / questions / items / properties / id / descriptionAdded value: +"Unique within questions." - changed
Input schema / properties / questions / items / properties / proof / descriptionPrevious value: -"check_connection({\"schema\":\"proof\"})"New value: +"recall({\"schema\":\"proof\"})" - added
Input schema / properties / questions / items / properties / relation / descriptionAdded value: +"Exact saved property; recall source first if unknown." - added
Input schema / properties / questions / items / properties / source / descriptionAdded value: +"Subject, not evidence source." - added
Input schema / properties / questions / items / properties / target / descriptionAdded value: +"Value. Omit to find known values."
7 tool updates
- Changed
browse_candidates15 fields changed- removed
Input schema / properties / as_of / maxLengthRemoved value: -80 - removed
Input schema / properties / as_of / minLengthRemoved value: -1 - changed
Input schema / properties / claim_statuses / descriptionPrevious value: -"Default established; select proposed/reported when requested."New value: +"Default: established." - removed
Input schema / properties / claim_statuses / maxItemsRemoved value: -3 - removed
Input schema / properties / claim_statuses / minItemsRemoved value: -1 - removed
Input schema / properties / claim_statuses / uniqueItemsRemoved value: -true - removed
Input schema / properties / cursor / maxLengthRemoved value: -512 - removed
Input schema / properties / cursor / minLengthRemoved value: -1 - removed
Input schema / properties / project / maxLengthRemoved value: -200 - removed
Input schema / properties / project / minLengthRemoved value: -1 - removed
Input schema / properties / relation / maxLengthRemoved value: -200 - removed
Input schema / properties / relation / minLengthRemoved value: -1 - removed
Input schema / properties / source / maxLengthRemoved value: -2000 - removed
Input schema / properties / source / minLengthRemoved value: -1 - changed
Input schema / requiredPrevious value: -[ - "project", - "source" -]New value: +[ + "source" +]
- Changed
check_connection1 field changed- changed
Input schema / properties / schema / enumPrevious value: -[ - "compute", - "computations", - "rules", - "proof", - "proofs" -]New value: +[ + "compute", + "computations", + "rules", + "proof", + "proofs", + "remember_facts", + "verify", + "recall", + "browse_candidates", + "correct_fact", + "forget_facts" +]
- Changed
correct_fact42 fields changed- changed
Input schema / additionalPropertiesPrevious value: -falseNew value: +true - changed
Input schema / oneOfPrevious value: -[ - { - "required": [ - "record_id" - ] - }, - { - "required": [ - "client_record_id" - ] - }, - { - "required": [ - "fact" - ] - } -]New value: +[ + { + "required": [ + "fact" + ] + }, + { + "required": [ + "record_id" + ] + }, + { + "required": [ + "client_record_id" + ] + } +] - changed
Input schema / properties / changes / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / changes / properties / confidenceRemoved value: -{ - "maximum": 1, - "minimum": 0.01, - "type": "number" -} - removed
Input schema / properties / changes / properties / contextRemoved 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" -} - removed
Input schema / properties / changes / properties / entity_idRemoved value: -{ - "description": "Canonical subject ID across evidence sources.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / evidence_refsRemoved 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" -} - removed
Input schema / properties / changes / properties / evidence_sourceRemoved value: -{ - "description": "Evidence label, not subject identity.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / polarityRemoved value: -{ - "enum": [ - 1, - -1 - ], - "type": "integer" -} - removed
Input schema / properties / changes / properties / positionRemoved value: -{ - "maximum": 1000000, - "minimum": 0, - "type": "integer" -} - removed
Input schema / properties / changes / properties / property_typeRemoved value: -{ - "enum": [ - "single", - "set", - "ordered", - "rules" - ], - "type": "string" -} - removed
Input schema / properties / changes / properties / provenanceRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / relationRemoved value: -{ - "description": "Property; custom properties default to single-valued.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / search_aliasesRemoved value: -{ - "items": { - "description": "Field aliases for recall, not evidence or answer text.", - "maxLength": 80, - "minLength": 1, - "type": "string" - }, - "maxItems": 16, - "minItems": 0, - "type": "array" -} - removed
Input schema / properties / changes / properties / sourceRemoved value: -{ - "description": "Subject name/ID.", - "maxLength": 10000, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / source_kindRemoved value: -{ - "description": "Subject type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / changes / properties / target / descriptionRemoved value: -"Value/object, distinct from source." - removed
Input schema / properties / changes / properties / target / maxLengthRemoved value: -10000 - removed
Input schema / properties / changes / properties / target / minLengthRemoved value: -1 - removed
Input schema / properties / changes / properties / target_kindRemoved value: -{ - "description": "Value type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / changes / properties / unitRemoved value: -{ - "description": "Value unit, e.g. hour or bed/nurse.", - "maxLength": 100, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / changes / properties / validityRemoved 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" -} - removed
Input schema / properties / client_record_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - changed
Input schema / properties / fact / additionalPropertiesPrevious value: -falseNew value: +true - added
Input schema / properties / fact / descriptionAdded value: +"Exact old values; retrieve first if missing." - removed
Input schema / properties / fact / properties / contextRemoved 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" -} - removed
Input schema / properties / fact / properties / entity_idRemoved value: -{ - "description": "Canonical subject ID across evidence sources.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / fact / properties / evidence_sourceRemoved value: -{ - "description": "Evidence label, not subject identity.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / fact / properties / polarityRemoved value: -{ - "enum": [ - 1, - -1 - ], - "type": "integer" -} - removed
Input schema / properties / fact / properties / positionRemoved value: -{ - "maximum": 1000000, - "minimum": 0, - "type": "integer" -} - removed
Input schema / properties / fact / properties / property_typeRemoved value: -{ - "enum": [ - "single", - "set", - "ordered", - "rules" - ], - "type": "string" -} - removed
Input schema / properties / fact / properties / relation / descriptionRemoved value: -"Property; custom properties default to single-valued." - removed
Input schema / properties / fact / properties / relation / maxLengthRemoved value: -200 - removed
Input schema / properties / fact / properties / source / descriptionRemoved value: -"Subject name/ID." - removed
Input schema / properties / fact / properties / source / maxLengthRemoved value: -10000 - removed
Input schema / properties / fact / properties / source_kindRemoved value: -{ - "description": "Subject type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / fact / properties / target / descriptionRemoved value: -"Value/object, distinct from source." - removed
Input schema / properties / fact / properties / target / maxLengthRemoved value: -10000 - removed
Input schema / properties / fact / properties / target_kindRemoved value: -{ - "description": "Value type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / fact / properties / unitRemoved value: -{ - "description": "Value unit, e.g. hour or bed/nurse.", - "maxLength": 100, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / fact / properties / validityRemoved 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" -} - removed
Input schema / properties / record_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -}
- Changed
forget_facts12 fields changed- changed
Input schema / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / batch_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / client_record_idsRemoved value: -{ - "items": { - "maxLength": 200, - "minLength": 1, - "type": "string" - }, - "maxItems": 10000, - "minItems": 1, - "type": "array" -} - removed
Input schema / properties / computation_ids / items / maxLengthRemoved value: -100 - removed
Input schema / properties / computation_ids / items / minLengthRemoved value: -1 - added
Input schema / properties / factAdded 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" +} - removed
Input schema / properties / proof_ids / items / maxLengthRemoved value: -100 - removed
Input schema / properties / proof_ids / items / minLengthRemoved value: -1 - removed
Input schema / properties / record_idsRemoved value: -{ - "items": { - "maxLength": 200, - "minLength": 1, - "type": "string" - }, - "maxItems": 10000, - "minItems": 1, - "type": "array" -} - removed
Input schema / properties / relationsRemoved 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" -} - removed
Input schema / properties / rule_ids / items / maxLengthRemoved value: -100 - removed
Input schema / properties / rule_ids / items / minLengthRemoved value: -1
- Changed
recall9 fields changed- changed
Input schema / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / as_ofRemoved value: -{ - "maxLength": 100, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / contextRemoved 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" -} - removed
Input schema / properties / facetsRemoved 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" -} - removed
Input schema / properties / include_source_contextRemoved value: -{ - "default": false, - "description": "Include attributed excerpts, not full history.", - "type": "boolean" -} - removed
Input schema / properties / source_kindRemoved value: -{ - "maxLength": 80, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / target_kindRemoved value: -{ - "maxLength": 80, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / text / maxLengthRemoved value: -2000 - removed
Input schema / properties / text / minLengthRemoved value: -1
- Changed
remember_facts48 fields changed- changed
Input schema / additionalPropertiesPrevious value: -falseNew value: +true - changed
Input schema / oneOfPrevious 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" + ] + } + ] + } +] - removed
Input schema / properties / batch_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - changed
Input schema / properties / computations / items / descriptionPrevious value: -"Parameter schema: check_connection({\"schema\":\"computations\"})."New value: +"check_connection({\"schema\":\"computations\"})" - added
Input schema / properties / computations / maxItemsAdded value: +10000 - removed
Input schema / properties / offsetRemoved value: -{ - "minimum": 0, - "type": "integer" -} - changed
Input schema / properties / proofs / items / descriptionPrevious value: -"Parameter schema: check_connection({\"schema\":\"proofs\"})."New value: +"check_connection({\"schema\":\"proofs\"})" - added
Input schema / properties / proofs / maxItemsAdded value: +10000 - changed
Input schema / properties / relations / items / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / relations / items / properties / client_record_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / confidenceRemoved value: -{ - "maximum": 1, - "minimum": 0.01, - "type": "number" -} - changed
Input schema / properties / relations / items / properties / context / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / relations / items / properties / context / properties / domain_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / context / properties / qualifiers / descriptionRemoved value: -"Conditions: JSON scalars/lists, no nested objects." - removed
Input schema / properties / relations / items / properties / context / properties / qualifiers / maxPropertiesRemoved value: -64 - removed
Input schema / properties / relations / items / properties / context / properties / scope / maxLengthRemoved value: -200 - removed
Input schema / properties / relations / items / properties / context / properties / scope / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / context / properties / subdomain_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / context / properties / subject_versionRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / entity_idRemoved value: -{ - "description": "Canonical subject ID across evidence sources.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / evidence_refsRemoved 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" -} - removed
Input schema / properties / relations / items / properties / evidence_sourceRemoved value: -{ - "description": "Evidence label, not subject identity.", - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / positionRemoved value: -{ - "maximum": 1000000, - "minimum": 0, - "type": "integer" -} - removed
Input schema / properties / relations / items / properties / provenanceRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / relation / descriptionRemoved value: -"Property; custom properties default to single-valued." - removed
Input schema / properties / relations / items / properties / relation / maxLengthRemoved value: -200 - removed
Input schema / properties / relations / items / properties / relation / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / search_aliasesRemoved value: -{ - "items": { - "description": "Field aliases for recall, not evidence or answer text.", - "maxLength": 80, - "minLength": 1, - "type": "string" - }, - "maxItems": 16, - "minItems": 0, - "type": "array" -} - removed
Input schema / properties / relations / items / properties / source / descriptionRemoved value: -"Subject name/ID." - removed
Input schema / properties / relations / items / properties / source / maxLengthRemoved value: -10000 - removed
Input schema / properties / relations / items / properties / source / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / source_kindRemoved value: -{ - "description": "Subject type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / target / descriptionRemoved value: -"Value/object, distinct from source." - removed
Input schema / properties / relations / items / properties / target / maxLengthRemoved value: -10000 - removed
Input schema / properties / relations / items / properties / target / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / target_kindRemoved value: -{ - "description": "Value type; disambiguates names.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / unitRemoved value: -{ - "description": "Value unit, e.g. hour or bed/nurse.", - "maxLength": 100, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / relations / items / properties / validity / properties / observed_at / maxLengthRemoved value: -100 - removed
Input schema / properties / relations / items / properties / validity / properties / observed_at / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / validity / properties / recorded_at / maxLengthRemoved value: -100 - removed
Input schema / properties / relations / items / properties / validity / properties / recorded_at / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / validity / properties / valid_from / maxLengthRemoved value: -100 - removed
Input schema / properties / relations / items / properties / validity / properties / valid_from / minLengthRemoved value: -1 - removed
Input schema / properties / relations / items / properties / validity / properties / valid_to / maxLengthRemoved value: -100 - removed
Input schema / properties / relations / items / properties / validity / properties / valid_to / minLengthRemoved value: -1 - changed
Input schema / properties / rules / items / descriptionPrevious value: -"Parameter schema: check_connection({\"schema\":\"rules\"})."New value: +"check_connection({\"schema\":\"rules\"})" - added
Input schema / properties / rules / maxItemsAdded value: +10000 - removed
Input schema / properties / totalRemoved value: -{ - "minimum": 1, - "type": "integer" -}
- Changed
verify29 fields changed- changed
Input schema / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / include_source_contextRemoved value: -{ - "default": false, - "type": "boolean" -} - changed
Input schema / properties / questions / items / additionalPropertiesPrevious value: -falseNew value: +true - changed
Input schema / properties / questions / items / descriptionPrevious 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." - removed
Input schema / properties / questions / items / properties / as_of / maxLengthRemoved value: -100 - removed
Input schema / properties / questions / items / properties / as_of / minLengthRemoved value: -1 - added
Input schema / properties / questions / items / properties / claim / additionalPropertiesAdded value: +true - removed
Input schema / properties / questions / items / properties / claim / descriptionRemoved value: -"Nodes use op: atom {source,relation,target}; and/or {claims:[...]}; not {claim}; implies {if,then}; scope {claim,context and/or as_of}." - changed
Input schema / properties / questions / items / properties / compute / descriptionPrevious value: -"Parameter schema: check_connection({\"schema\":\"compute\"})."New value: +"check_connection({\"schema\":\"compute\"})" - changed
Input schema / properties / questions / items / properties / context / additionalPropertiesPrevious value: -falseNew value: +true - removed
Input schema / properties / questions / items / properties / context / properties / domain_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / questions / items / properties / context / properties / qualifiers / descriptionRemoved value: -"Conditions: JSON scalars/lists, no nested objects." - removed
Input schema / properties / questions / items / properties / context / properties / qualifiers / maxPropertiesRemoved value: -64 - removed
Input schema / properties / questions / items / properties / context / properties / scope / maxLengthRemoved value: -200 - removed
Input schema / properties / questions / items / properties / context / properties / scope / minLengthRemoved value: -1 - removed
Input schema / properties / questions / items / properties / context / properties / subdomain_idRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / questions / items / properties / context / properties / subject_versionRemoved value: -{ - "maxLength": 200, - "minLength": 1, - "type": "string" -} - removed
Input schema / properties / questions / items / properties / id / maxLengthRemoved value: -2000 - removed
Input schema / properties / questions / items / properties / id / minLengthRemoved value: -1 - changed
Input schema / properties / questions / items / properties / proof / descriptionPrevious value: -"Parameter schema: check_connection({\"schema\":\"proof\"})."New value: +"check_connection({\"schema\":\"proof\"})" - removed
Input schema / properties / questions / items / properties / relation / maxLengthRemoved value: -2000 - removed
Input schema / properties / questions / items / properties / relation / minLengthRemoved value: -1 - removed
Input schema / properties / questions / items / properties / source / maxLengthRemoved value: -2000 - removed
Input schema / properties / questions / items / properties / source / minLengthRemoved value: -1 - removed
Input schema / properties / questions / items / properties / source_kindRemoved value: -{ - "description": "Direct-query subject type.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / questions / items / properties / target / maxLengthRemoved value: -2000 - removed
Input schema / properties / questions / items / properties / target / minLengthRemoved value: -1 - removed
Input schema / properties / questions / items / properties / target_kindRemoved value: -{ - "description": "Direct-query value type.", - "maxLength": 80, - "minLength": 2, - "type": "string" -} - removed
Input schema / properties / relationsRemoved 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" -}
7 tool updates
- Added
browse_candidates - Changed
check_connection2 fields changed- added
Input schema / properties / include_capabilitiesAdded value: +{ + "default": false, + "type": "boolean" +} - added
Input schema / properties / schemaAdded value: +{ + "enum": [ + "compute", + "computations", + "rules", + "proof", + "proofs" + ], + "type": "string" +}
- Changed
correct_fact15 fields changed- added
Input schema / oneOfAdded value: +[ + { + "required": [ + "record_id" + ] + }, + { + "required": [ + "client_record_id" + ] + }, + { + "required": [ + "fact" + ] + } +] - changed
Input schema / properties / changes / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - changed
Input schema / properties / changes / properties / entity_id / descriptionPrevious value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources." - added
Input schema / properties / changes / properties / evidence_refs / items / properties / recorded_atAdded value: +{ + "maxLength": 200, + "minLength": 1, + "type": "string" +} - changed
Input schema / properties / changes / properties / evidence_source / descriptionPrevious value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity." - changed
Input schema / properties / changes / properties / relation / descriptionPrevious value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued." - added
Input schema / properties / changes / properties / search_aliasesAdded value: +{ + "items": { + "description": "Field aliases for recall, not evidence or answer text.", + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "maxItems": 16, + "minItems": 0, + "type": "array" +} - changed
Input schema / properties / changes / properties / source / descriptionPrevious value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID." - added
Input schema / properties / changes / properties / source_kindAdded value: +{ + "description": "Subject type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / changes / properties / target / descriptionPrevious value: -"Value or object, different from source."New value: +"Value/object, distinct from source." - added
Input schema / properties / changes / properties / target_kindAdded value: +{ + "description": "Value type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / changes / properties / unit / descriptionPrevious value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse." - added
Input schema / properties / client_record_idAdded value: +{ + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / factAdded 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" +} - changed
Input schema / requiredPrevious value: -[ - "record_id", - "changes" -]New value: +[ + "changes" +]
- Changed
forget_facts11 fields changed- added
Input schema / properties / computation_idsAdded value: +{ + "items": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / proof_idsAdded value: +{ + "items": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / properties / relations / items / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - added
Input schema / properties / relations / items / properties / entity_idAdded value: +{ + "description": "Canonical subject ID across evidence sources.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / evidence_sourceAdded value: +{ + "description": "Evidence label, not subject identity.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / positionAdded value: +{ + "maximum": 1000000, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / relations / items / properties / property_typeAdded value: +{ + "enum": [ + "single", + "set", + "ordered", + "rules" + ], + "type": "string" +} - changed
Input schema / properties / relations / items / properties / relation / descriptionPrevious value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued." - changed
Input schema / properties / relations / items / properties / source / descriptionPrevious value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID." - changed
Input schema / properties / relations / items / properties / target / descriptionPrevious value: -"Value or object, different from source."New value: +"Value/object, distinct from source." - added
Input schema / properties / rule_idsAdded value: +{ + "items": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" +}
- Changed
recall7 fields changed- changed
Input schema / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - changed
Input schema / properties / facets / items / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - added
Input schema / properties / facets / items / properties / source_kindAdded value: +{ + "maxLength": 80, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / facets / items / properties / target_kindAdded value: +{ + "maxLength": 80, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / include_source_contextAdded value: +{ + "default": false, + "description": "Include attributed excerpts, not full history.", + "type": "boolean" +} - added
Input schema / properties / source_kindAdded value: +{ + "maxLength": 80, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / target_kindAdded value: +{ + "maxLength": 80, + "minLength": 1, + "type": "string" +}
- Changed
remember_facts16 fields changed- added
Input schema / oneOfAdded 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" + ] + } + ] + } + } +] - added
Input schema / properties / computationsAdded value: +{ + "items": { + "additionalProperties": true, + "description": "Parameter schema: check_connection({\"schema\":\"computations\"}).", + "type": "object" + }, + "minItems": 1, + "type": "array" +} - added
Input schema / properties / proofsAdded value: +{ + "items": { + "additionalProperties": true, + "description": "Parameter schema: check_connection({\"schema\":\"proofs\"}).", + "type": "object" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / properties / relations / items / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - changed
Input schema / properties / relations / items / properties / entity_id / descriptionPrevious value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources." - added
Input schema / properties / relations / items / properties / evidence_refs / items / properties / recorded_atAdded value: +{ + "maxLength": 200, + "minLength": 1, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / evidence_source / descriptionPrevious value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity." - changed
Input schema / properties / relations / items / properties / relation / descriptionPrevious value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued." - added
Input schema / properties / relations / items / properties / search_aliasesAdded value: +{ + "items": { + "description": "Field aliases for recall, not evidence or answer text.", + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "maxItems": 16, + "minItems": 0, + "type": "array" +} - changed
Input schema / properties / relations / items / properties / source / descriptionPrevious value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID." - added
Input schema / properties / relations / items / properties / source_kindAdded value: +{ + "description": "Subject type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / target / descriptionPrevious value: -"Value or object, different from source."New value: +"Value/object, distinct from source." - added
Input schema / properties / relations / items / properties / target_kindAdded value: +{ + "description": "Value type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / unit / descriptionPrevious value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse." - added
Input schema / properties / rulesAdded value: +{ + "items": { + "additionalProperties": true, + "description": "Parameter schema: check_connection({\"schema\":\"rules\"}).", + "type": "object" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / requiredPrevious value: -[ - "relations" -]New value: +[]
- Changed
verify20 fields changed- added
Input schema / properties / include_source_contextAdded value: +{ + "default": false, + "type": "boolean" +} - changed
Input schema / properties / questions / items / descriptionPrevious 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." - changed
Input schema / properties / questions / items / properties / claim / descriptionPrevious 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}." - changed
Input schema / properties / questions / items / properties / compute / additionalPropertiesPrevious value: -falseNew value: +true - changed
Input schema / properties / questions / items / properties / compute / descriptionPrevious 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\"})." - removed
Input schema / properties / questions / items / properties / compute / propertiesRemoved 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" - } -} - removed
Input schema / properties / questions / items / properties / compute / requiredRemoved value: -[ - "facts", - "plan" -] - changed
Input schema / properties / questions / items / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - added
Input schema / properties / questions / items / properties / proofAdded value: +{ + "additionalProperties": true, + "description": "Parameter schema: check_connection({\"schema\":\"proof\"}).", + "type": "object" +} - added
Input schema / properties / questions / items / properties / source_kindAdded value: +{ + "description": "Direct-query subject type.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - added
Input schema / properties / questions / items / properties / target_kindAdded value: +{ + "description": "Direct-query value type.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / context / properties / qualifiers / descriptionPrevious value: -"Conditions accepted by normalize_context: JSON scalars or lists, no nested objects."New value: +"Conditions: JSON scalars/lists, no nested objects." - changed
Input schema / properties / relations / items / properties / entity_id / descriptionPrevious value: -"Explicit canonical subject ID, shared across its evidence sources."New value: +"Canonical subject ID across evidence sources." - changed
Input schema / properties / relations / items / properties / evidence_source / descriptionPrevious value: -"Source document or record label; does not change the subject identity."New value: +"Evidence label, not subject identity." - changed
Input schema / properties / relations / items / properties / relation / descriptionPrevious value: -"Property such as status; custom properties are single-valued by default."New value: +"Property; custom properties default to single-valued." - changed
Input schema / properties / relations / items / properties / source / descriptionPrevious value: -"Stable subject name or ID. Prefer short names shared with queries."New value: +"Subject name/ID." - added
Input schema / properties / relations / items / properties / source_kindAdded value: +{ + "description": "Subject type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / target / descriptionPrevious value: -"Value or object, different from source."New value: +"Value/object, distinct from source." - added
Input schema / properties / relations / items / properties / target_kindAdded value: +{ + "description": "Value type; disambiguates names.", + "maxLength": 80, + "minLength": 2, + "type": "string" +} - changed
Input schema / properties / relations / items / properties / unit / descriptionPrevious value: -"Unit of the saved value, such as hour, bed or bed/nurse."New value: +"Value unit, e.g. hour or bed/nurse."
1 tool update
- Changed
verify3 fields changed- added
Input schema / properties / questions / items / descriptionAdded 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." - added
Input schema / properties / questions / items / properties / compute / descriptionAdded 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." - changed
Input schema / properties / questions / items / properties / compute / properties / plan / descriptionPrevious 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."
3 tool updates
- Changed
correct_fact5 fields changed- added
Input schema / properties / changes / properties / entity_idAdded value: +{ + "description": "Explicit canonical subject ID, shared across its evidence sources.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / changes / properties / evidence_sourceAdded value: +{ + "description": "Source document or record label; does not change the subject identity.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / changes / properties / positionAdded value: +{ + "maximum": 1000000, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / changes / properties / property_typeAdded value: +{ + "enum": [ + "single", + "set", + "ordered", + "rules" + ], + "type": "string" +} - added
Input schema / properties / changes / properties / unitAdded value: +{ + "description": "Unit of the saved value, such as hour, bed or bed/nurse.", + "maxLength": 100, + "minLength": 1, + "type": "string" +}
- Changed
remember_facts5 fields changed- added
Input schema / properties / relations / items / properties / entity_idAdded value: +{ + "description": "Explicit canonical subject ID, shared across its evidence sources.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / evidence_sourceAdded value: +{ + "description": "Source document or record label; does not change the subject identity.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / positionAdded value: +{ + "maximum": 1000000, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / relations / items / properties / property_typeAdded value: +{ + "enum": [ + "single", + "set", + "ordered", + "rules" + ], + "type": "string" +} - added
Input schema / properties / relations / items / properties / unitAdded value: +{ + "description": "Unit of the saved value, such as hour, bed or bed/nurse.", + "maxLength": 100, + "minLength": 1, + "type": "string" +}
- Changed
verify6 fields changed- added
Input schema / properties / questions / items / properties / computeAdded 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" +} - added
Input schema / properties / relations / items / properties / entity_idAdded value: +{ + "description": "Explicit canonical subject ID, shared across its evidence sources.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / evidence_sourceAdded value: +{ + "description": "Source document or record label; does not change the subject identity.", + "maxLength": 200, + "minLength": 1, + "type": "string" +} - added
Input schema / properties / relations / items / properties / positionAdded value: +{ + "maximum": 1000000, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / relations / items / properties / property_typeAdded value: +{ + "enum": [ + "single", + "set", + "ordered", + "rules" + ], + "type": "string" +} - added
Input schema / properties / relations / items / properties / unitAdded value: +{ + "description": "Unit of the saved value, such as hour, bed or bed/nurse.", + "maxLength": 100, + "minLength": 1, + "type": "string" +}
6 tool updates
- First observed
check_connection - First observed
correct_fact - First observed
forget_facts - First observed
recall - First observed
remember_facts - First observed
verify
Related MCP Connectors
Give your AI agent persistent, governed memory for every project. At task start it recalls the approved decisions, conventions, risks and architecture (semantic search, ranked by importance); at close it proposes what was learned as typed memories that you review and approve — governance, not a notes dump. Agents propose, humans govern: edits go back to pending and deletion is human-only by design. Connect Claude Code, Cursor, Claude Desktop or any MCP client in two minutes with just your API key — hosted (nothing to install) or locally via `uvx solucortex-mcp`. Built by SoluAI and dogfooded daily: SoluCortex is developed using its own living memory.
Persistent, inspectable memory for AI agents with lineage, correction, and a hosted MCP endpoint.
Persistent personal memory for AI assistants — save, search, and recall across every MCP client.
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
Related MCP Servers
- AlicenseAqualityAmaintenanceMARM MCP provides persistent memory and structured session context beneath any AI tool, so your agents learn, remember, and collaborate across all your workflows.16428Apache 2.0
- FlicenseNot gradedqualityCmaintenanceProvides 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-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to maintain and query project memory independently of the underlying model, with versioned, auditable storage and multi-stage retrieval through a single MCP gateway.MIT
- AlicenseNot gradedqualityAmaintenanceGives 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.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.