KnowMapped
Search, retrieve, create, and update visual knowledge maps in a user's KnowMapped account.
Should I use this
Quality & Safety
Findings (10)
- HIGH
- MEDIUMin create_knowmapped_map
- LOWin get_knowmapped_map_adjacency
- LOWin get_knowmapped_layout_summary
- LOWin get_knowmapped_map_creation_result
- LOWin preflight_knowmapped_map_creation
- LOWin confirm_knowmapped_map_creation
- LOWin get_knowmapped_map_creation_result
- LOWin get_knowmapped_publication_status
- INFOin create_knowmapped_map
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.knowmapped.com/mcp"
}
}
}Remote endpoints
https://mcp.knowmapped.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (16)
🟢get_knowmapped_update_schema
Return the authoritative, versioned schema, graph_type_operations and examples for atomic KnowMapped concept-map and Futures Wheel patches. Call this before constructing an update instead of guessing operation or field names.
Input Schema
{
"type": "object",
"properties": {},
"title": "get_knowmapped_update_schemaArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢search_knowmapped_maps(query, limit)
Search maps available to the connected KnowMapped account. Use this when a user refers to a saved map or wants to find prior concepts; existing ownership and sharing permissions are enforced server-side.
Input Schema
{
"type": "object",
"properties": {
"query": {
"default": "",
"title": "Query",
"type": "string"
},
"limit": {
"default": 20,
"title": "Limit",
"type": "integer"
}
},
"title": "search_knowmapped_mapsArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_map(map_id, include, include_nodes, include_edges, node_offset, ...)
Retrieve an authorized map with independent node_offset, edge_offset, and page_size parameters. Canonical IDs are always retained in projected nodes and edges even when include_nodes or include_edges omits id. Use summary for statistics without graph content or compact for token-efficient fields. Search results return copy-safe map references so UUIDs should not be typed manually.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"include": {
"default": "full",
"enum": [
"full",
"compact",
"summary"
],
"title": "Include",
"type": "string"
},
"include_nodes": {
"default": "",
"title": "Include Nodes",
"type": "string"
},
"include_edges": {
"default": "",
"title": "Include Edges",
"type": "string"
},
"node_offset": {
"default": 0,
"title": "Node Offset",
"type": "integer",
"description": "Zero-based offset for the independently paginated node collection.",
"minimum": 0,
"examples": [
0,
100
]
},
"edge_offset": {
"default": 0,
"title": "Edge Offset",
"type": "integer",
"description": "Zero-based offset for the independently paginated edge collection.",
"minimum": 0,
"examples": [
0,
100
]
},
"page_size": {
"default": 100,
"title": "Page Size",
"type": "integer",
"description": "Maximum nodes and maximum edges returned in this page (1-200).",
"minimum": 1,
"examples": [
100
],
"maximum": 200
}
},
"required": [
"map_id"
],
"title": "get_knowmapped_mapArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_map_adjacency(map_id, node_id, exact_label, offset, limit)
Return one concept and its directly connected concepts and relationships without retrieving the full graph. Provide node_id or an exact unique label.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"node_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Node Id"
},
"exact_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Exact Label"
},
"offset": {
"default": 0,
"title": "Offset",
"type": "integer"
},
"limit": {
"default": 100,
"title": "Limit",
"type": "integer"
}
},
"required": [
"map_id"
],
"title": "get_knowmapped_map_adjacencyArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_wheel_branch(map_id, node_id, exact_label, offset, limit, ...)
Read a wheel consequence, its ancestors, inherited domain and paginated descendants, including collapsed content. Omit the node reference to start at the central change. Compact keeps causal metadata; full adds descriptions, resources and provenance.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"node_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Node Id"
},
"exact_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Exact Label"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"limit": {
"default": 100,
"maximum": 200,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"include": {
"default": "compact",
"enum": [
"compact",
"full"
],
"title": "Include",
"type": "string"
}
},
"required": [
"map_id"
],
"title": "get_knowmapped_wheel_branchArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢export_knowmapped_map(map_id)
Return an import-ready .know JSON file for an authorized concept map or Futures Wheel. Serialize file as UTF-8 JSON under filename. Includes every node, including collapsed branches, presentation and provenance; does not publish or create a map. Visual exports remain in the app.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
}
},
"required": [
"map_id"
],
"title": "export_knowmapped_mapArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_layout_summary(map_id)
Return layout bounds and graph statistics without returning graph content.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
}
},
"required": [
"map_id"
],
"title": "get_knowmapped_layout_summaryArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢preflight_knowmapped_map_creation(graph, idempotency_key)
Check eligibility and credits for concept maps or Futures Wheels (graph_type), or retain a fully validated graph as a short-lived draft. The exact creation layout field is top-level graph.layout_intent, for example left-to-right. For concept maps, omission records Smart intent and complete explicit coordinates are preserved. Futures Wheels default to radial, derive positions with the wheel renderer, and reject other intents. Fields named layout, layout_type, or strategy are rejected. Drafts do not reserve credits and can be confirmed by draft ID without resending the graph.
Input Schema
{
"type": "object",
"properties": {
"graph": {
"anyOf": [
{
"type": "object",
"properties": {
"graph_type": {
"type": "string",
"enum": [
"concept",
"futures_wheel"
],
"default": "concept",
"description": "Choose a graph type explicitly. Futures wheels require exactly one order-0 center, parent_id/order metadata on every consequence, and causal edges forming one tree through five orders. Only radial layout is supported for wheels."
},
"title": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string"
},
"layout_intent": {
"type": "string",
"enum": [
"smart",
"left-to-right",
"top-to-bottom",
"radial",
"clustered",
"grid",
"hierarchical",
"declutter",
"manual"
],
"default": "smart",
"description": "Requested semantic layout. Use this exact top-level field. If omitted, KnowMapped automatically applies Smart layout unless every node supplies explicit x/y coordinates; complete explicit coordinates are preserved as manual positioning. For futures_wheel the default is radial, positions are always derived, and non-radial intent is rejected."
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"position": {
"type": "object"
},
"importance": {
"type": "string"
},
"is_core": {
"type": "boolean"
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged. For futures_wheel: futures_wheel.order is 0 for the unique center or 1–5 for consequences; futures_wheel.parent_id is null for the center, otherwise the source node ID. Center futures_wheel.domains contains up to 32 {id,label} entries; only order 1 may set domain_id. collapsed is a boolean beside futures_wheel. status is possible/assumption/evidence (not a fact check)."
}
},
"required": [
"id",
"label"
],
"additionalProperties": false
}
},
"edges": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"source": {
"type": "string"
},
"target": {
"type": "string"
},
"label": {
"type": "string"
},
"style": {
"type": "object"
},
"routing": {
"type": "string"
},
"strength": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"id",
"source",
"target"
],
"additionalProperties": false
}
},
"presentation": {
"type": "object",
"description": "Non-layout visual settings. Layout belongs in top-level layout_intent.",
"additionalProperties": true
}
},
"required": [
"nodes",
"edges"
],
"additionalProperties": false,
"examples": [
{
"title": "Research flow",
"layout_intent": "left-to-right",
"nodes": [
{
"id": "source",
"label": "Source"
},
{
"id": "review",
"label": "Review"
}
],
"edges": [
{
"id": "source-review",
"source": "source",
"target": "review",
"label": "informs"
}
]
},
{
"title": "Possible consequences",
"graph_type": "futures_wheel",
"layout_intent": "radial",
"nodes": [
{
"id": "change",
"label": "A central change",
"semantic_data": {
"collapsed": false,
"futures_wheel": {
"order": 0,
"parent_id": null,
"status": "assumption",
"domains": [
{
"id": "health",
"label": "Public health"
}
]
}
}
},
{
"id": "effect",
"label": "A possible consequence",
"semantic_data": {
"collapsed": false,
"futures_wheel": {
"order": 1,
"parent_id": "change",
"domain_id": "health",
"status": "possible"
}
}
}
],
"edges": [
{
"id": "cause",
"source": "change",
"target": "effect",
"label": ""
}
]
}
]
},
{
"type": "null"
}
],
"default": null,
"title": "Graph"
},
"idempotency_key": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Idempotency Key"
}
},
"title": "preflight_knowmapped_map_creationArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟡create_knowmapped_map(graph, idempotency_key, validate_only, confirm_credit_use)
Validate or create a concept map or Futures Wheel. Set graph.graph_type explicitly. Wheels require causal parent/order metadata and use the same radial geometry as the editor; only radial layout is allowed. Manual wheel creation is included in Free; MCP creation uses the normal MCP entitlement and credit policy. Concept maps: Specify requested layout only as top-level graph.layout_intent. When omitted, requested_layout and resolved_strategy are smart, but [0,0] placeholders are retained for the map client to lay out on first draw; layout_application is client-first-draw. Complete explicit coordinates are preserved instead. Set validate_only=true to check the exact final graph schema, layout, capacity, links, and credits without creating a map, charging credits, or reserving the idempotency key. For credit-bearing creation, show the quoted charge, then confirm the retained draft only after explicit approval.
Input Schema
{
"type": "object",
"properties": {
"graph": {
"type": "object",
"properties": {
"graph_type": {
"type": "string",
"enum": [
"concept",
"futures_wheel"
],
"default": "concept",
"description": "Choose a graph type explicitly. Futures wheels require exactly one order-0 center, parent_id/order metadata on every consequence, and causal edges forming one tree through five orders. Only radial layout is supported for wheels."
},
"title": {
"type": "string",
"minLength": 1
},
"description": {
"type": "string"
},
"layout_intent": {
"type": "string",
"enum": [
"smart",
"left-to-right",
"top-to-bottom",
"radial",
"clustered",
"grid",
"hierarchical",
"declutter",
"manual"
],
"default": "smart",
"description": "Requested semantic layout. Use this exact top-level field. If omitted, KnowMapped automatically applies Smart layout unless every node supplies explicit x/y coordinates; complete explicit coordinates are preserved as manual positioning. For futures_wheel the default is radial, positions are always derived, and non-radial intent is rejected."
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"position": {
"type": "object"
},
"importance": {
"type": "string"
},
"is_core": {
"type": "boolean"
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged. For futures_wheel: futures_wheel.order is 0 for the unique center or 1–5 for consequences; futures_wheel.parent_id is null for the center, otherwise the source node ID. Center futures_wheel.domains contains up to 32 {id,label} entries; only order 1 may set domain_id. collapsed is a boolean beside futures_wheel. status is possible/assumption/evidence (not a fact check)."
}
},
"required": [
"id",
"label"
],
"additionalProperties": false
}
},
"edges": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"source": {
"type": "string"
},
"target": {
"type": "string"
},
"label": {
"type": "string"
},
"style": {
"type": "object"
},
"routing": {
"type": "string"
},
"strength": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"id",
"source",
"target"
],
"additionalProperties": false
}
},
"presentation": {
"type": "object",
"description": "Non-layout visual settings. Layout belongs in top-level layout_intent.",
"additionalProperties": true
}
},
"required": [
"nodes",
"edges"
],
"additionalProperties": false,
"examples": [
{
"title": "Research flow",
"layout_intent": "left-to-right",
"nodes": [
{
"id": "source",
"label": "Source"
},
{
"id": "review",
"label": "Review"
}
],
"edges": [
{
"id": "source-review",
"source": "source",
"target": "review",
"label": "informs"
}
]
},
{
"title": "Possible consequences",
"graph_type": "futures_wheel",
"layout_intent": "radial",
"nodes": [
{
"id": "change",
"label": "A central change",
"semantic_data": {
"collapsed": false,
"futures_wheel": {
"order": 0,
"parent_id": null,
"status": "assumption",
"domains": [
{
"id": "health",
"label": "Public health"
}
]
}
}
},
{
"id": "effect",
"label": "A possible consequence",
"semantic_data": {
"collapsed": false,
"futures_wheel": {
"order": 1,
"parent_id": "change",
"domain_id": "health",
"status": "possible"
}
}
}
],
"edges": [
{
"id": "cause",
"source": "change",
"target": "effect",
"label": ""
}
]
}
]
},
"idempotency_key": {
"title": "Idempotency Key",
"type": "string"
},
"validate_only": {
"default": false,
"title": "Validate Only",
"type": "boolean"
},
"confirm_credit_use": {
"default": false,
"title": "Confirm Credit Use",
"type": "boolean"
}
},
"required": [
"graph",
"idempotency_key"
],
"title": "create_knowmapped_mapArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢confirm_knowmapped_map_creation(draft_id, confirm_credit_use)
Transactionally confirm a preflighted creation by draft ID. Success definitively returns map_id and revision. A failed transaction preserves the draft for retry, and retrying a committed success returns the same result without charging again. Use get_knowmapped_map_creation_result after a timeout or malformed response.
Input Schema
{
"type": "object",
"properties": {
"draft_id": {
"title": "Draft Id",
"type": "string"
},
"confirm_credit_use": {
"default": false,
"title": "Confirm Credit Use",
"type": "boolean"
}
},
"required": [
"draft_id"
],
"title": "confirm_knowmapped_map_creationArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_map_creation_result(draft_id, idempotency_key)
Recover the definitive state of a map creation without creating a map or charging credits. Provide exactly one draft_id or the original idempotency_key. A succeeded result includes the canonical map ID and revision.
Input Schema
{
"type": "object",
"properties": {
"draft_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Draft Id"
},
"idempotency_key": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Idempotency Key"
}
},
"title": "get_knowmapped_map_creation_resultArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🔴update_knowmapped_map(map_id, expected_revision, operations, idempotency_key, validate_only)
Validate or atomically update an editable concept map or Futures Wheel. For wheels use add_consequence, update_consequence, move_branch, remove_branch (confirmed cascade), set_branch_collapsed, upsert_domain, remove_domain, assign_domain and layout_wheel. Orders, causal edges and radial geometry are derived; concept operations are rejected. For concept maps: Accepted operations are update_map, add_node, update_node, remove_node, add_edge, update_edge, remove_edge, replace_edges, and layout_nodes; get_knowmapped_update_schema is the authoritative versioned contract. Use id for identifiers, title for the map title, and layout_nodes with strategy, spacing, groups, and optional flow. Node references accept IDs, earlier temp_id values, or exact unique labels. Edge references accept IDs or semantic source/target/current-relationship matches. validate_only returns a corrected executable normalized_patch, all detectable errors and warnings, layout positions and bounds, a patch summary, publication state, and current revision without changing data. On a stale write, revalidate the same patch at current_revision, then submit the returned normalized_patch.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"expected_revision": {
"title": "Expected Revision",
"type": "integer"
},
"operations": {
"description": "One atomic patch. Node references accept IDs, declared temp IDs, or {\"label\":\"Exact unique label\"}.",
"examples": [
[
{
"label": "New finding",
"op": "add_node",
"position": {
"x": 100,
"y": 200
},
"temp_id": "finding-1"
},
{
"label": "supports",
"op": "add_edge",
"source": {
"label": "Existing concept"
},
"target": "finding-1"
}
],
[
{
"op": "layout_nodes",
"spacing": 220,
"strategy": "hierarchical"
}
],
[
{
"confirm": true,
"id": {
"label": "Obsolete concept"
},
"op": "remove_node"
}
]
],
"items": {
"$id": "https://knowmapped.com/schemas/mcp/map-patch/2026-10-26.1",
"schema_version": "2026-10-26.1",
"oneOf": [
{
"type": "object",
"properties": {
"op": {
"const": "add_consequence"
},
"temp_id": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"parent": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"domain_id": {
"type": [
"string",
"null"
],
"maxLength": 80
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"description": {
"type": "string",
"maxLength": 20000
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"status": {
"enum": [
"possible",
"assumption",
"evidence"
],
"description": "Evidence is a user assertion, not an automated fact check."
},
"semantic_data": {
"type": "object",
"description": "Provenance/assertion metadata only; structural wheel fields use typed operations."
}
},
"required": [
"op",
"label",
"parent",
"temp_id"
],
"additionalProperties": false,
"examples": [
{
"op": "add_consequence",
"temp_id": "new-effect",
"parent": {
"label": "Central change"
},
"label": "A possible consequence",
"status": "possible"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "add_edge"
},
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"label": {
"type": "string"
},
"style": {
"type": "object"
},
"routing": {
"type": "string"
},
"strength": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"op",
"source",
"target"
],
"additionalProperties": false,
"examples": [
{
"op": "add_edge",
"source": {
"label": "Source material"
},
"target": "new-concept",
"label": "supports"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "add_node"
},
"temp_id": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"importance": {
"type": "string"
},
"is_core": {
"type": "boolean"
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"op",
"label",
"temp_id"
],
"additionalProperties": false,
"examples": [
{
"op": "add_node",
"temp_id": "new-concept",
"label": "New concept"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "assign_domain"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"domain_id": {
"type": [
"string",
"null"
],
"maxLength": 80
}
},
"required": [
"op",
"domain_id",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "assign_domain",
"id": "first-order-id",
"domain_id": "health"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "layout_nodes"
},
"strategy": {
"type": "string",
"enum": [
"smart",
"left-to-right",
"top-to-bottom",
"manual",
"grid",
"radial",
"hierarchical",
"clustered",
"declutter"
]
},
"spacing": {
"type": "number",
"minimum": 80,
"maximum": 800
},
"groups": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
}
}
},
"flow": {
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
}
}
],
"description": "Optional reading order, either concept references or labels separated by → or ->."
}
},
"required": [
"op",
"strategy"
],
"additionalProperties": false,
"examples": [
{
"op": "layout_nodes",
"strategy": "hierarchical",
"spacing": 220,
"groups": {
"Evidence": [
{
"label": "Source material"
}
]
},
"flow": "Source → Draft → Concepts → Review"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "layout_wheel"
}
},
"required": [
"op"
],
"additionalProperties": false,
"examples": [
{
"op": "layout_wheel"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "move_branch"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"parent": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"domain_id": {
"type": [
"string",
"null"
],
"maxLength": 80
}
},
"required": [
"op",
"id",
"parent"
],
"additionalProperties": false,
"examples": [
{
"op": "move_branch",
"id": "consequence-id",
"parent": "new-parent-id"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove_branch"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"confirm": {
"const": true
}
},
"required": [
"op",
"confirm",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "remove_branch",
"id": "consequence-id",
"confirm": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove_domain"
},
"id": {
"type": "string"
},
"confirm": {
"const": true
}
},
"required": [
"op",
"confirm",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "remove_domain",
"id": "health",
"confirm": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove_edge"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"relationship": {
"type": "string"
}
},
"required": [
"source",
"target"
],
"additionalProperties": false,
"description": "Semantic relationship match. relationship matches the current edge label when supplied."
}
]
},
"confirm": {
"const": true
}
},
"required": [
"op",
"confirm",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "remove_edge",
"id": "relationship-id",
"confirm": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "remove_node"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"confirm": {
"const": true
}
},
"required": [
"op",
"confirm",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "remove_node",
"id": {
"label": "Obsolete concept"
},
"confirm": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "replace_edges"
},
"remove": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"relationship": {
"type": "string"
}
},
"required": [
"source",
"target"
],
"additionalProperties": false,
"description": "Semantic relationship match. relationship matches the current edge label when supplied."
}
]
}
},
"add": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"label": {
"type": "string"
},
"style": {
"type": "object"
},
"routing": {
"type": "string"
},
"strength": {
"type": "string"
},
"semantic_data": {
"type": "object"
}
},
"required": [
"source",
"target"
],
"additionalProperties": false
}
},
"confirm": {
"const": true
}
},
"required": [
"op",
"add",
"confirm",
"remove"
],
"additionalProperties": false,
"examples": [
{
"op": "replace_edges",
"remove": [
{
"source": {
"label": "Draft"
},
"target": {
"label": "Review"
},
"relationship": "precedes"
}
],
"add": [
{
"source": {
"label": "Draft"
},
"target": {
"label": "Concepts"
},
"label": "produces"
}
],
"confirm": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "set_branch_collapsed"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"collapsed": {
"type": "boolean"
}
},
"required": [
"op",
"collapsed",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "set_branch_collapsed",
"id": "consequence-id",
"collapsed": true
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update_consequence"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"description": {
"type": "string",
"maxLength": 20000
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"status": {
"enum": [
"possible",
"assumption",
"evidence"
],
"description": "Evidence is a user assertion, not an automated fact check."
},
"semantic_data": {
"type": "object",
"description": "Provenance/assertion metadata only; structural wheel fields use typed operations."
}
},
"required": [
"op",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "update_consequence",
"id": "consequence-id",
"description": "Context and source reasoning"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update_edge"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1
},
{
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"relationship": {
"type": "string"
}
},
"required": [
"source",
"target"
],
"additionalProperties": false,
"description": "Semantic relationship match. relationship matches the current edge label when supplied."
}
]
},
"source": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"target": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"label": {
"type": "string"
},
"style": {
"type": "object"
},
"routing": {
"type": "string"
},
"strength": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"op",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "update_edge",
"id": "relationship-id",
"label": "strengthens"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update_map"
},
"color_mode": {
"type": "string"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"view_settings": {
"type": "object"
}
},
"required": [
"op"
],
"additionalProperties": false,
"examples": [
{
"op": "update_map",
"title": "Revised map title"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "update_node"
},
"id": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"description": "Canonical node ID or a temp_id declared by add_node."
},
{
"type": "object",
"properties": {
"label": {
"type": "string",
"minLength": 1
}
},
"required": [
"label"
],
"additionalProperties": false
}
]
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"position": {
"type": "object",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
},
"importance": {
"type": "string"
},
"is_core": {
"type": "boolean"
},
"resources": {
"type": "array"
},
"icon": {
"type": "string"
},
"semantic_data": {
"type": "object",
"description": "Knowledge/concept maps do not expose Evidence and classification fields. Do not ask users for or invent semantic roles, node tags, relationship type, basis/assertion status, review status, supporting evidence, or source-reference classifications for concept maps. Use clear labels, node descriptions and resource links for context and sources. Existing semantic metadata remains supported for compatibility: preserve it when editing, without adding classification defaults. Structural metadata such as grouping and map links remains supported. Futures Wheel evidence controls and typed causal metadata are unchanged."
}
},
"required": [
"op",
"id"
],
"additionalProperties": false,
"examples": [
{
"op": "update_node",
"id": {
"label": "Source material"
},
"description": "Revised description"
}
]
},
{
"type": "object",
"properties": {
"op": {
"const": "upsert_domain"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"required": [
"op",
"id",
"label"
],
"additionalProperties": false,
"examples": [
{
"op": "upsert_domain",
"id": "health",
"label": "Public health"
}
]
}
],
"discriminator": {
"propertyName": "op"
}
},
"title": "Operations",
"type": "array"
},
"idempotency_key": {
"title": "Idempotency Key",
"type": "string"
},
"validate_only": {
"default": false,
"title": "Validate Only",
"type": "boolean"
}
},
"required": [
"map_id",
"expected_revision",
"operations",
"idempotency_key"
],
"title": "update_knowmapped_mapArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🔴set_knowmapped_map_visibility(map_id, expected_revision, is_public, idempotency_key, copyright_acknowledged)
Make a map public or private at its current revision. Obtain the user's explicit permission to publish and confirmation that they have the right to publish before setting copyright_acknowledged=true; never infer it from map content. Initial publication creates a moderated public snapshot and generated preview. Making private removes the snapshot and disables live viewing. Setting an already-public map public does not publish edits: use publish_knowmapped_map. Reuse the same idempotency_key and identical arguments after a dropped response; a different request needs a new key. A pending_review result means publication has not succeeded. On a revision conflict, retrieve the map and reconsider before retrying.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"expected_revision": {
"minimum": 1,
"title": "Expected Revision",
"type": "integer"
},
"is_public": {
"title": "Is Public",
"type": "boolean"
},
"idempotency_key": {
"maxLength": 200,
"minLength": 1,
"title": "Idempotency Key",
"type": "string"
},
"copyright_acknowledged": {
"default": false,
"title": "Copyright Acknowledged",
"type": "boolean"
}
},
"required": [
"map_id",
"expected_revision",
"is_public",
"idempotency_key"
],
"title": "set_knowmapped_map_visibilityArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🔴set_knowmapped_live_view(map_id, expected_revision, live_enabled, idempotency_key)
Enable or disable public live viewing for an owned published concept map or Futures Wheel. Enable only at the user's explicit request: live viewers see ongoing saved edits, not just the published snapshot. Requires the existing account entitlement and maps:publish permission. Does not publish a private map or invite collaborators. Reuse an identical idempotency key after a dropped response.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"expected_revision": {
"minimum": 1,
"title": "Expected Revision",
"type": "integer"
},
"live_enabled": {
"title": "Live Enabled",
"type": "boolean"
},
"idempotency_key": {
"maxLength": 200,
"minLength": 1,
"title": "Idempotency Key",
"type": "string"
}
},
"required": [
"map_id",
"expected_revision",
"live_enabled",
"idempotency_key"
],
"title": "set_knowmapped_live_viewArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🔴publish_knowmapped_map(map_id, expected_revision, idempotency_key)
Publish or republish completed edits to an already-public map when the user requests it. Use the revision returned by the final edit or a fresh retrieval. Applies the same permissions, locks, moderation, and restrictions as browser publishing and generates the public preview. Reuse the same idempotency_key and identical arguments after a dropped response. Returns published revision and sync state; pending review or sync must not be reported as a fully delivered publication. On a revision conflict, retrieve the map and reconsider before retrying. To publish a private map first use set_knowmapped_map_visibility with explicit copyright acknowledgement.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
},
"expected_revision": {
"minimum": 1,
"title": "Expected Revision",
"type": "integer"
},
"idempotency_key": {
"maxLength": 200,
"minLength": 1,
"title": "Idempotency Key",
"type": "string"
}
},
"required": [
"map_id",
"expected_revision",
"idempotency_key"
],
"title": "publish_knowmapped_mapArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}🟢get_knowmapped_publication_status(map_id)
Check public snapshot revision, moderation and delivery without loading graph content. Requires maps:publish and editable-map access. Revision differences mean content may have changed, since operational changes also advance revisions. After a timeout retry the original publication with the same idempotency_key; use this tool to check current delivery separately.
Input Schema
{
"type": "object",
"properties": {
"map_id": {
"title": "Map Id",
"type": "string"
}
},
"required": [
"map_id"
],
"title": "get_knowmapped_publication_statusArguments"
}Output Schema
{
"type": "object",
"additionalProperties": true
}Community
Evidence