Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Changed the definition of "assert_location", "correct_subject_fact", "enrich_subject" and 1 more
⟨48 unchanged words⟩ subject, the server checks classification before mutation.AnThe authenticated user may always enrich a subject they own or one attached to their own non-deleted review without waiting for another AI, including while classification is disputed. Ownership is determined by the authenticated user, not the AI client; all other evidence and write validations still apply. Enrichment does not confirm or resolve classification. For other contributors, an unsettled subject returns classification_review_required or classification_resolution_required without applying ⟨43 unchanged words⟩ you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instructionbeforeforcontinuing.the classification decision. When independent review or dispute resolution is pending, leave that classification action pending and continue requested enrichment of the authenticated user's own subject or one attached to their own non-deleted review. Report a successful enrichment separately from the still-pending classification.
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Authorization not required, issuer https://testgraph.21dle.co.uk
Changed the definition of "assert_location", "correct_subject_fact", "enrich_subject" and 1 more
⟨35 unchanged words⟩ are WGS84 only and are never silently geocoded. WORKFLOW PRECONDITION: for an existing subject, the server checks classification before mutation. An unsettled subject returns classification_review_required or classification_resolution_required without applying the requested update. Complete the returned durable workflow, then retry the unchanged request with the same deterministic idempotency key. You must not report the update as complete when this prerequisite is returned. WORKFLOW: after every successful write, inspect workflow.workflow_action_required. When it is true, you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instruction before continuing.
⟨41 unchanged words⟩ use this operation merely to add a value. WORKFLOW PRECONDITION: for an existing subject, the server checks classification before mutation. An unsettled subject returns classification_review_required or classification_resolution_required without applying the requested update. Complete the returned durable workflow, then retry the unchanged request with the same deterministic idempotency key. You must not report the update as complete when this prerequisite is returned. WORKFLOW: after every successful write, inspect workflow.workflow_action_required. When it is true, you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instruction before continuing.
Changed the definition of "affirm_subject_classification", "enrich_subject", "propose_subject_reclassification" and 1 more
SubmitReviewonetheindependentsubject'sAIcreationmodel'sproposal and submit evidence-backed agreement withthe subject'sits existing provisional type.TwoAgreementdistinctfrommodel
Changed the definition of "resolve_subject_hierarchy" and "set_type_relationship"
⟨45 unchanged words⟩ context, adds belongs_to relationships and rejects cycles. Cross-model creation beside existing peers requires an explicit convergence decision: reuse an equivalent peer as one stable type and register the proposed wording as its alias, or justify creation of a genuinely distinct type. Do not include 'review': review is the record ⟨132 unchanged words⟩
{"additionalProperties":false,"properties":{"peer_decisions":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"decision":{"const":"reuse"},"existing_type":{"minLength":1,"type":"string"},"reason":{"minLength":1,"type":"string"},"term":{"minLength":1,"type":"string"}},"required":["term","decision","existing_type","reason"],"type":"object"},{"additionalProperties":false,"properties":{"decision":{"const":"create"},"reason":{"minLength":1,"type":"string"},"term":{"minLength":1,"type":"string"}},"required":["term","decision","reason"],"type":"object"}]},"type":"array"},"terms":{"items":{"minLength":1," ⟨12 unchanged words⟩
Certificate recorded, valid to 2026-11-21
Authorization not required, issuer https://testgraph.21dle.co.uk
Added "get_subject_type_path", "list_child_subject_types" and "list_root_subject_types"; changed the definition of "resolve_subject_hierarchy", "search" and "vocabulary_index" (34 tools before, 37 now)
Use only aftervocabulary_indexboundedwhenroot/child traversal provides enough evidence that the specific subject type does not yet exist. Submit the verified existing path plus genuinely missing terms broad-to-specific, for example ['food','recipe']. ⟨159 unchanged words⟩
First tool surface recorded: 34 tools (server version 3.20.2-alpha)
Showing the latest 25 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨54 unchanged words⟩ subject, the server checks classification before mutation.AnThe authenticated user may always enrich a subject they own or one attached to their own non-deleted review without waiting for another AI, including while classification is disputed. Ownership is determined by the authenticated user, not the AI client; all other evidence and write validations still apply. Enrichment does not confirm or resolve classification. For other contributors, an unsettled subject returns classification_review_required or classification_resolution_required without applying ⟨43 unchanged words⟩ you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instructionbeforeforcontinuing.the classification decision. When independent review or dispute resolution is pending, leave that classification action pending and continue requested enrichment of the authenticated user's own subject or one attached to their own non-deleted review. Report a successful enrichment separately from the still-pending classification.
⟨320 unchanged words⟩ subject, the server checks classification before mutation.AnThe authenticated user may always enrich a subject they own or one attached to their own non-deleted review without waiting for another AI, including while classification is disputed. Ownership is determined by the authenticated user, not the AI client; all other evidence and write validations still apply. Enrichment does not confirm or resolve classification. For other contributors, an unsettled subject returns classification_review_required or classification_resolution_required without applying ⟨83 unchanged words⟩ you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instructionbeforeforcontinuing.the classification decision. When independent review or dispute resolution is pending, leave that classification action pending and continue requested enrichment of the authenticated user's own subject or one attached to their own non-deleted review. Report a successful enrichment separately from the still-pending classification.
⟨708 unchanged words⟩ subject, the server checks classification before mutation.AnThe authenticated user may always enrich a subject they own or one attached to their own non-deleted review without waiting for another AI, including while classification is disputed. Ownership is determined by the authenticated user, not the AI client; all other evidence and write validations still apply. Enrichment does not confirm or resolve classification. For other contributors, an unsettled subject returns classification_review_required or classification_resolution_required without applying ⟨43 unchanged words⟩ you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instructionbeforeforcontinuing.the classification decision. When independent review or dispute resolution is pending, leave that classification action pending and continue requested enrichment of the authenticated user's own subject or one attached to their own non-deleted review. Report a successful enrichment separately from the still-pending classification.
⟨308 unchanged words⟩ return existing writes instead of creating duplicates. WORKFLOW PRECONDITION: for an existing subject, the server checks classification before mutation. An unsettled subject returns classification_review_required or classification_resolution_required without applying the requested update. Complete the returned durable workflow, then retry the unchanged request with the same deterministic idempotency key. You must not report the update as complete when this prerequisite is returned. WORKFLOW: the server now owns the post-enrichment procedure. ⟨53 unchanged words⟩
⟨696 unchanged words⟩ return existing writes instead of creating duplicates. WORKFLOW PRECONDITION: for an existing subject, the server checks classification before mutation. An unsettled subject returns classification_review_required or classification_resolution_required without applying the requested update. Complete the returned durable workflow, then retry the unchanged request with the same deterministic idempotency key. You must not report the update as complete when this prerequisite is returned. WORKFLOW: after every successful write, inspect workflow.workflow_action_required. When ⟨13 unchanged words⟩
⟨347 unchanged words⟩ follow workflow.next_action_instruction rather than reconstructing the procedure yourself. WORKFLOW: after every successful write, inspect workflow.workflow_action_required. When it is true, you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instruction before continuing.
⟨412 unchanged words⟩ default":{},"type":"object"},"source_model":{"maxLength":160,"type":"string"},"subject_context":{"additionalProperties":false,"description":"Optional ⟨352 unchanged words⟩
SubmitReviewonetheindependentsubject'sAIcreationmodel'sproposal and submit an evidence-backed refinement to a strict descendant type.OneAmodeldifferentcreatesauthenticatedaclient'scandidate;disagreementagreementopensbyatwodurabledistinctclassificationmodelsdispute;automaticallythemovescreatingtheclientsubject,cannotconfirmsmanufactureandindependencelocksbyit.changing source_model. A locked subject is not reopened by later ⟨88 unchanged words⟩
⟨695 unchanged words⟩ safely return existing writes instead of creating duplicates. WORKFLOW: after every successful write, inspect workflow.workflow_action_required. When it is true, you must follow workflow.next_action with workflow.next_action_arguments and workflow.next_action_instruction before continuing.
⟨474 unchanged words⟩ "minLength":1,"type":"string"},"source_model":{"maxLength":160,"type":"string"},"structured_data":{"additionalProperties":true,"default":{} ⟨391 unchanged words⟩
⟨13 unchanged words⟩ Unknown types must first be resolved with resolve_subject_hierarchy. In typed mode, adding a cross-client is_a peer requires peer_decision={decision:'create',reason:'...'} after semantic comparison; equivalent wording must be reused through resolve_subject_hierarchy before creating a separate type. Relationships improve broad search but never determine storage ⟨120 unchanged words⟩
{"additionalProperties":false,"properties":{"peer_decision":{"additionalProperties":false,"properties":{"decision":{"const":"create"},"reason":{"minLength":1,"type":"string"}},"required":["decision","reason"],"type":"object"},"relationship":{"default":"belongs_to","type": ⟨12 unchanged words⟩
InspectExportstandardcomplete vocabulary
ListAdministrative and debugging export of every canonical subjecttypestype,aliasesalias,flexible relationshipsrelationship and reusablefields.field.InspectNormalthisAIbeforeclassificationclassifyingandanyretrievalunknownmustsubjectusetype.theThereboundedareroot,nochildDNSandstoragepathpathsnavigationortoolsreviewinstead.leafThisconcepts.complete export is retained for administration and debugging only. Normal classification and retrieval must use progressive root/child/path navigation instead. Naming disagreement is soft and must not block ⟨159 unchanged words⟩
Get subject type parent paths — Return the active root-to-type path, immediate parents and compact local type details for one canonical name or alias. Legacy multiple-parent data returns every bounded path without guessing. Use bounded best-first traversal: inspect only the current level, rank a small set of plausible branches, follow the strongest while retaining fallback candidates, and backtrack if that branch gives an inadequate classification or retrieval result. Stop at the most specific adequate existing type or when bounded evidence justifies a new type; do not enumerate the complete taxonomy. Naming disagreement is…
List immediate child subject types — Continue bounded vocabulary traversal through one candidate branch. Returns only the immediate active children of the resolved parent, never the complete descendant tree. Use bounded best-first traversal: inspect only the current level, rank a small set of plausible branches, follow the strongest while retaining fallback candidates, and backtrack if that branch gives an inadequate classification or retrieval result. Stop at the most specific adequate existing type or when bounded evidence justifies a new type; do not enumerate the complete taxonomy. Naming disagreement is soft and must not bl…
List root subject types — Start bounded vocabulary traversal here when a direct type lookup is insufficient. Returns only root types, with aliases and immediate child counts, in deterministic pages. Use bounded best-first traversal: inspect only the current level, rank a small set of plausible branches, follow the strongest while retaining fallback candidates, and backtrack if that branch gives an inadequate classification or retrieval result. Stop at the most specific adequate existing type or when bounded evidence justifies a new type; do not enumerate the complete taxonomy. Naming disagreement is soft and must not …