Servidor MCP

MemoStem

io.github.girapphe/memostem
Conocimiento y documentación Productividad Público y accesible MCP 2025-11-25

Qué hace este MCP

Creates, validates, previews, and stores user-approved general-knowledge cards and structured knowledge bundles.

check_memostem_connection
Check MemoStem connection
Verify the authenticated MemoStem connection and report only the currently granted knowledge permissions. This test does not read or write knowledge.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'granted_scopes', 'draft_review_path', 'settings_path'], 'properties': {'status': {'type': 'string', 'const': 'connected'}, 'settings_path': {'type': 'string', 'const': '/settings#ai-connections'}, 'granted_scopes': {'type': 'array', 'items': {'enum': ['knowledge:drafts:create', 'knowledge:context:read', 'knowledge:drafts:status'], 'type': 'string'}, 'maxItems': 3, 'minItems': 1}, 'draft_review_path': {'type': 'string', 'const': '/knowledge-inbox'}}, 'additionalProperties': False}
claim_guest_knowledge_workspace
Connect and keep a guest knowledge shelf
Transfer the temporary guest shelf identified by workspace_token to the authenticated MemoStem owner as private pending drafts. Call only after the person explicitly agrees to connect or after the guest shelf reports account_required. This tool never approves or publishes cards.
Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspace_token'], 'properties': {'workspace_token': {'type': 'string', 'pattern': '^mgw_[A-Za-z0-9_-]{43}$'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'claimed_draft_count', 'review_path'], 'properties': {'status': {'type': 'string', 'const': 'pending'}, 'review_path': {'type': 'string', 'pattern': '^\\/knowledge-inbox.*'}, 'claimed_draft_count': {'type': 'integer', 'maximum': 10, 'minimum': 0}}, 'additionalProperties': False}
connect_memostem
Connect MemoStem and show topics
Connect or grant knowledge read permission through the host OAuth flow, then show a page of the authenticated owner's topic labels. Never creates knowledge.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cursor': {'anyOf': [{'type': 'string', 'maxLength': 512, 'minLength': 1}, {'type': 'null'}]}, 'locale': {'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'locale', 'topics', 'next_cursor'], 'properties': {'locale': {'enum': ['ko', 'en'], 'type': 'string'}, 'status': {'enum': ['connection_required', 'permission_required', 'topics', 'empty'], 'type': 'string'}, 'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 20}, 'next_cursor': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}
create_card_drafts
Create knowledge-card drafts
Create pending, user-owned general-knowledge card drafts only after clear affirmative consent to specifically named, independently teachable knowledge in the current conversation. Every card must declare knowledge_scope as general_knowledge. Personal or company decisions, product principles or policies, pricing rationale, preferences, plans, tasks, reminders, meeting outcomes, project status, and autobiographical facts are ineligible. An assistant suggestion alone is not consent. This tool never accepts raw transcripts or historical-conversation data, and it cannot approve, publish, or modify public knowledge cards.
Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'request_id', 'provenance', 'cards'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['knowledge_scope', 'title'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'maxItems': 12}, 'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'topic': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'summary': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['target_kind', 'target_id', 'type'], 'properties': {'type': {'enum': ['related', 'prerequisite', 'generalizes', 'derived_from', 'equivalent_to', 'supersedes', 'answers', 'supports', 'contradicts', 'causes', 'contributes_to', 'enables', 'inhibits'], 'type': 'string'}, 'weight': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}, 'direction': {'enum': ['outgoing', 'incoming'], 'type': 'string'}, 'target_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'target_kind': {'enum': ['private', 'draft'], 'type': 'string', 'description': "Minimal-core drafts may relate only to the owner's private knowledge or another draft; public graph targets are unavailable."}, 'evidence_selector_indexes': {'type': 'array', 'items': {'type': 'integer', 'maximum': 23, 'minimum': 0}, 'maxItems': 24}}, 'additionalProperties': False}, 'maxItems': 12}, 'explanation': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'client_card_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'knowledge_scope': {'type': 'string', 'const': 'general_knowledge', 'description': 'Required assertion that this card teaches reusable knowledge independent of a person, company, product, preference, plan, task, or decision.'}, 'evidence_selectors': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['selector_type', 'message_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'message_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'message'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'source_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'source_ref': {'type': 'string', 'maxLength': 2048, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'external_ref'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'start', 'end'], 'properties': {'end': {'type': 'integer', 'maximum': 10000000, 'minimum': 1}, 'start': {'type': 'integer', 'maximum': 9999999, 'minimum': 0}, 'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'selector_type': {'type': 'string', 'const': 'text_position'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'line_start', 'line_end'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'line_end': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'line_start': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'selector_type': {'type': 'string', 'const': 'line_range'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}]}, 'maxItems': 24}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'provider': {'enum': ['chatgpt', 'claude', 'gemini', 'other'], 'type': 'string'}, 'provenance': {'type': 'object', 'required': ['type', 'conversation_ref'], 'properties': {'type': {'type': 'string', 'const': 'current_conversation'}, 'source_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'discussed_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'conversation_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'request_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'batch_id', 'created', 'draft_count', 'review_path', 'review_url'], 'properties': {'status': {'type': 'string', 'const': 'pending'}, 'created': {'type': 'boolean'}, 'batch_id': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'review_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'draft_count': {'type': 'integer', 'maximum': 50, 'minimum': 0}, 'review_path': {'type': 'string', 'pattern': '^\\/.*', 'maxLength': 512}}, 'additionalProperties': False}
create_knowledge_bundle_drafts
Create structured knowledge-bundle drafts
Create pending, user-owned concept, general procedure, comparison, mechanism, structure, claim/evidence, knowledge question, historical event, or language-expression drafts only after clear affirmative consent to specifically named, independently teachable general knowledge in the current conversation. Every bundle must declare knowledge_scope as general_knowledge; decisions and organization-specific material are not accepted. An assistant suggestion alone is not consent. It cannot approve drafts, retain transcripts, or modify public knowledge.
Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'request_id', 'provenance', 'bundles'], 'properties': {'bundles': {'type': 'array', 'items': {'type': 'object', 'required': ['knowledge_scope', 'title', 'central_question', 'knowledge_type', 'summary', 'structured_content', 'bundle_schema_version', 'topic', 'tags'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'maxItems': 12}, 'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'topic': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'summary': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tag_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 12}, 'topic_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['target_kind', 'target_id', 'type'], 'properties': {'type': {'enum': ['related', 'prerequisite', 'generalizes', 'derived_from', 'equivalent_to', 'supersedes', 'answers', 'supports', 'contradicts', 'causes', 'contributes_to', 'enables', 'inhibits'], 'type': 'string'}, 'weight': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}, 'direction': {'enum': ['outgoing', 'incoming'], 'type': 'string'}, 'target_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'target_kind': {'enum': ['private', 'draft'], 'type': 'string', 'description': "Minimal-core drafts may relate only to the owner's private knowledge or another draft; public graph targets are unavailable."}, 'evidence_selector_indexes': {'type': 'array', 'items': {'type': 'integer', 'maximum': 23, 'minimum': 0}, 'maxItems': 24}}, 'additionalProperties': False}, 'maxItems': 12}, 'knowledge_type': {'enum': ['concept', 'procedure', 'comparison', 'mechanism', 'structure', 'claim_evidence', 'question', 'event', 'expression'], 'type': 'string'}, 'knowledge_scope': {'type': 'string', 'const': 'general_knowledge', 'description': 'Required assertion that this bundle teaches reusable knowledge independent of a person, company, product, preference, plan, task, or decision.'}, 'central_question': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'client_bundle_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'evidence_selectors': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['selector_type', 'message_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'message_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'message'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'source_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'source_ref': {'type': 'string', 'maxLength': 2048, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'external_ref'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'start', 'end'], 'properties': {'end': {'type': 'integer', 'maximum': 10000000, 'minimum': 1}, 'start': {'type': 'integer', 'maximum': 9999999, 'minimum': 0}, 'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'selector_type': {'type': 'string', 'const': 'text_position'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'line_start', 'line_end'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'line_end': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'line_start': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'selector_type': {'type': 'string', 'const': 'line_range'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}]}, 'maxItems': 24}, 'structured_content': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'concept'}, 'examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Concrete instances of this concept; explain why each fits. Prefer one concise example supported by the selected material when useful; otherwise use an empty array.'}, 'definition': {'type': 'string', 'default': '', 'maxLength': 4000}, 'key_points': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'non_examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Nearby cases that do not meet the definition; explain the distinguishing boundary. Include only when supported by the selected material and useful; otherwise use an empty array.'}, 'misconceptions': {'type': 'array', 'items': {'type': 'object', 'required': ['claim', 'correction'], 'properties': {'claim': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 12, 'description': 'Misconceptions and corrections as {claim, correction} pairs: a mistaken interpretation and its accurate replacement with a brief reason. Include only when supported by the selected material; otherwise use an empty array. Never attribute a misconception to the user or fabricate evidence.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'goal': {'type': 'string', 'default': '', 'maxLength': 4000}, 'type': {'type': 'string', 'const': 'procedure'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'branches': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'action'], 'properties': {'action': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'done_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'failure_modes': {'type': 'array', 'items': {'type': 'object', 'required': ['symptom', 'response'], 'properties': {'symptom': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'response': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'prerequisites': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'comparison'}, 'targets': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 8}, 'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'values'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'maxItems': 8}}, 'additionalProperties': False}, 'default': [], 'maxItems': 20}, 'differences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'choice_guide': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'recommendation'], 'properties': {'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'recommendation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'commonalities': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'mechanism'}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'stages': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'results': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'conditions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'exceptions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'structure'}, 'purpose': {'type': 'string', 'default': '', 'maxLength': 4000}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['source_id', 'target_id', 'label'], 'properties': {'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'target_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 60}, 'boundaries': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'components': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label'], 'properties': {'id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}, 'role': {'type': 'string', 'default': '', 'maxLength': 4000}, 'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'parent_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 40}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'claim_evidence'}, 'claim': {'type': 'string', 'default': '', 'maxLength': 4000}, 'scope': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['statement'], 'properties': {'source': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'statement': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'confidence': {'enum': ['low', 'medium', 'high'], 'type': 'string'}, 'limitations': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'counterevidence': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'question'}, 'status': {'enum': ['open', 'answered'], 'type': 'string', 'default': 'open'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'question': {'type': 'string', 'default': '', 'maxLength': 4000}, 'hypotheses': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'next_steps': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'known_facts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'answer_summary': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'decision'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'options': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tradeoffs': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'outcome': {'type': 'string', 'default': '', 'maxLength': 4000}, 'criteria': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'decision': {'type': 'string', 'default': '', 'maxLength': 4000}, 'rationale': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'reconsider_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'event'}, 'event': {'type': 'string', 'default': '', 'maxLength': 4000}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'changes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'chronology': {'type': 'object', 'required': ['start', 'precision'], 'properties': {'end': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'start': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'precision': {'enum': ['exact', 'day', 'month', 'year', 'decade', 'century', 'approximate', 'range'], 'type': 'string'}}, 'additionalProperties': False}, 'occurred_at': {'type': 'string', 'default': '', 'maxLength': 500}, 'consequences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type', 'language'], 'properties': {'type': {'type': 'string', 'const': 'expression'}, 'nuance': {'type': 'string', 'default': '', 'maxLength': 4000}, 'examples': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'note': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'translation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}, 'meanings': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'register': {'type': 'string', 'default': '', 'maxLength': 500}, 'contrasts': {'type': 'array', 'items': {'type': 'object', 'required': ['expression', 'difference'], 'properties': {'difference': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'expression': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'expression': {'type': 'string', 'default': '', 'maxLength': 4000}, 'translations': {'type': 'array', 'items': {'type': 'object', 'required': ['language', 'text'], 'properties': {'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'pronunciation': {'type': 'string', 'default': '', 'maxLength': 500}, 'usage_contexts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'common_mistakes': {'type': 'array', 'items': {'type': 'object', 'required': ['incorrect', 'correction'], 'properties': {'incorrect': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}]}, 'resolution_proposal': {'type': 'object', 'required': ['action', 'source_item_ids', 'change_summary', 'reason'], 'properties': {'action': {'enum': ['save_new', 'merge', 'update'], 'type': 'string'}, 'reason': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'change_summary': {'type': 'object', 'properties': {'added': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'changed': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'conflicts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'preserved': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}}, 'additionalProperties': False}, 'target_item_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'source_item_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 50, 'minItems': 1}, 'expected_target_version': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}, 'bundle_schema_version': {'type': 'number', 'const': 1}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'provider': {'enum': ['chatgpt', 'claude', 'gemini', 'other'], 'type': 'string'}, 'provenance': {'type': 'object', 'required': ['type', 'conversation_ref'], 'properties': {'type': {'type': 'string', 'const': 'current_conversation'}, 'source_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'discussed_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'client_version': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_agent': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_model': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'conversation_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'request_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'batch_id', 'created', 'bundle_count', 'review_path', 'review_url'], 'properties': {'status': {'type': 'string', 'const': 'pending'}, 'created': {'type': 'boolean'}, 'batch_id': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'review_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'review_path': {'type': 'string', 'pattern': '^\\/.*', 'maxLength': 512}, 'bundle_count': {'type': 'integer', 'maximum': 50, 'minimum': 0}}, 'additionalProperties': False}
preview_knowledge_bundle
Preview one knowledge bundle
Return a transient preview of exactly one user-selected, independently teachable general-knowledge bundle without an account and without saving it. Call only at the person's direct request or after clear acceptance of a specific preview proposal. Use save_guest_knowledge_bundles only after the person explicitly asks to keep it; connected clients use create_knowledge_bundle_drafts.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'request_id', 'provenance', 'bundles'], 'properties': {'bundles': {'type': 'array', 'items': {'type': 'object', 'required': ['knowledge_scope', 'title', 'central_question', 'knowledge_type', 'summary', 'structured_content', 'bundle_schema_version', 'topic', 'tags'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'maxItems': 12}, 'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'topic': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'summary': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tag_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 12}, 'topic_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['target_kind', 'target_id', 'type'], 'properties': {'type': {'enum': ['related', 'prerequisite', 'generalizes', 'derived_from', 'equivalent_to', 'supersedes', 'answers', 'supports', 'contradicts', 'causes', 'contributes_to', 'enables', 'inhibits'], 'type': 'string'}, 'weight': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}, 'direction': {'enum': ['outgoing', 'incoming'], 'type': 'string'}, 'target_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'target_kind': {'enum': ['private', 'draft'], 'type': 'string', 'description': "Minimal-core drafts may relate only to the owner's private knowledge or another draft; public graph targets are unavailable."}, 'evidence_selector_indexes': {'type': 'array', 'items': {'type': 'integer', 'maximum': 23, 'minimum': 0}, 'maxItems': 24}}, 'additionalProperties': False}, 'maxItems': 12}, 'knowledge_type': {'enum': ['concept', 'procedure', 'comparison', 'mechanism', 'structure', 'claim_evidence', 'question', 'event', 'expression'], 'type': 'string'}, 'knowledge_scope': {'type': 'string', 'const': 'general_knowledge', 'description': 'Required assertion that this bundle teaches reusable knowledge independent of a person, company, product, preference, plan, task, or decision.'}, 'central_question': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'client_bundle_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'evidence_selectors': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['selector_type', 'message_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'message_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'message'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'source_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'source_ref': {'type': 'string', 'maxLength': 2048, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'external_ref'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'start', 'end'], 'properties': {'end': {'type': 'integer', 'maximum': 10000000, 'minimum': 1}, 'start': {'type': 'integer', 'maximum': 9999999, 'minimum': 0}, 'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'selector_type': {'type': 'string', 'const': 'text_position'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'line_start', 'line_end'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'line_end': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'line_start': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'selector_type': {'type': 'string', 'const': 'line_range'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}]}, 'maxItems': 24}, 'structured_content': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'concept'}, 'examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Concrete instances of this concept; explain why each fits. Prefer one concise example supported by the selected material when useful; otherwise use an empty array.'}, 'definition': {'type': 'string', 'default': '', 'maxLength': 4000}, 'key_points': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'non_examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Nearby cases that do not meet the definition; explain the distinguishing boundary. Include only when supported by the selected material and useful; otherwise use an empty array.'}, 'misconceptions': {'type': 'array', 'items': {'type': 'object', 'required': ['claim', 'correction'], 'properties': {'claim': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 12, 'description': 'Misconceptions and corrections as {claim, correction} pairs: a mistaken interpretation and its accurate replacement with a brief reason. Include only when supported by the selected material; otherwise use an empty array. Never attribute a misconception to the user or fabricate evidence.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'goal': {'type': 'string', 'default': '', 'maxLength': 4000}, 'type': {'type': 'string', 'const': 'procedure'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'branches': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'action'], 'properties': {'action': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'done_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'failure_modes': {'type': 'array', 'items': {'type': 'object', 'required': ['symptom', 'response'], 'properties': {'symptom': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'response': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'prerequisites': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'comparison'}, 'targets': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 8}, 'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'values'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'maxItems': 8}}, 'additionalProperties': False}, 'default': [], 'maxItems': 20}, 'differences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'choice_guide': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'recommendation'], 'properties': {'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'recommendation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'commonalities': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'mechanism'}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'stages': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'results': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'conditions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'exceptions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'structure'}, 'purpose': {'type': 'string', 'default': '', 'maxLength': 4000}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['source_id', 'target_id', 'label'], 'properties': {'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'target_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 60}, 'boundaries': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'components': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label'], 'properties': {'id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}, 'role': {'type': 'string', 'default': '', 'maxLength': 4000}, 'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'parent_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 40}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'claim_evidence'}, 'claim': {'type': 'string', 'default': '', 'maxLength': 4000}, 'scope': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['statement'], 'properties': {'source': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'statement': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'confidence': {'enum': ['low', 'medium', 'high'], 'type': 'string'}, 'limitations': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'counterevidence': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'question'}, 'status': {'enum': ['open', 'answered'], 'type': 'string', 'default': 'open'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'question': {'type': 'string', 'default': '', 'maxLength': 4000}, 'hypotheses': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'next_steps': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'known_facts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'answer_summary': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'decision'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'options': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tradeoffs': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'outcome': {'type': 'string', 'default': '', 'maxLength': 4000}, 'criteria': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'decision': {'type': 'string', 'default': '', 'maxLength': 4000}, 'rationale': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'reconsider_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'event'}, 'event': {'type': 'string', 'default': '', 'maxLength': 4000}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'changes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'chronology': {'type': 'object', 'required': ['start', 'precision'], 'properties': {'end': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'start': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'precision': {'enum': ['exact', 'day', 'month', 'year', 'decade', 'century', 'approximate', 'range'], 'type': 'string'}}, 'additionalProperties': False}, 'occurred_at': {'type': 'string', 'default': '', 'maxLength': 500}, 'consequences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type', 'language'], 'properties': {'type': {'type': 'string', 'const': 'expression'}, 'nuance': {'type': 'string', 'default': '', 'maxLength': 4000}, 'examples': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'note': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'translation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}, 'meanings': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'register': {'type': 'string', 'default': '', 'maxLength': 500}, 'contrasts': {'type': 'array', 'items': {'type': 'object', 'required': ['expression', 'difference'], 'properties': {'difference': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'expression': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'expression': {'type': 'string', 'default': '', 'maxLength': 4000}, 'translations': {'type': 'array', 'items': {'type': 'object', 'required': ['language', 'text'], 'properties': {'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'pronunciation': {'type': 'string', 'default': '', 'maxLength': 500}, 'usage_contexts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'common_mistakes': {'type': 'array', 'items': {'type': 'object', 'required': ['incorrect', 'correction'], 'properties': {'incorrect': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}]}, 'resolution_proposal': {'type': 'object', 'required': ['action', 'source_item_ids', 'change_summary', 'reason'], 'properties': {'action': {'enum': ['save_new', 'merge', 'update'], 'type': 'string'}, 'reason': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'change_summary': {'type': 'object', 'properties': {'added': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'changed': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'conflicts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'preserved': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}}, 'additionalProperties': False}, 'target_item_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'source_item_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 50, 'minItems': 1}, 'expected_target_version': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}, 'bundle_schema_version': {'type': 'number', 'const': 1}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'provider': {'enum': ['chatgpt', 'claude', 'gemini', 'other'], 'type': 'string'}, 'provenance': {'type': 'object', 'required': ['type', 'conversation_ref'], 'properties': {'type': {'type': 'string', 'const': 'current_conversation'}, 'source_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'discussed_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'client_version': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_agent': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_model': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'conversation_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'request_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'persisted', 'bundle_count', 'knowledge_type', 'title'], 'properties': {'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'status': {'enum': ['valid', 'preview'], 'type': 'string'}, 'persisted': {'type': 'boolean', 'const': False}, 'bundle_count': {'type': 'number', 'const': 1}, 'knowledge_type': {'enum': ['concept', 'procedure', 'comparison', 'mechanism', 'structure', 'claim_evidence', 'question', 'event', 'expression'], 'type': 'string'}}, 'additionalProperties': False}
refresh_guest_knowledge_shelf_link
Get a fresh guest shelf link
Issue a new short-lived, one-time mobile or desktop web link for the existing guest shelf. Use only when the person asks to open or recover that shelf. Pass the private workspace_token as a tool argument; never show or put it in a URL. This adds no card and makes the previous view link invalid.
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspace_token'], 'properties': {'workspace_token': {'type': 'string', 'pattern': '^mgw_[A-Za-z0-9_-]{43}$'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'card_count', 'card_limit', 'review_url', 'expires_at'], 'properties': {'status': {'enum': ['guest_pending', 'account_required'], 'type': 'string'}, 'card_count': {'type': 'integer', 'maximum': 10, 'minimum': 1}, 'card_limit': {'type': 'number', 'const': 10}, 'expires_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'review_url': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}
save_guest_knowledge_bundles
Save knowledge to a temporary guest shelf
Store one to 10 specifically selected, independently teachable general-knowledge bundles from the current conversation in a private temporary MemoStem guest shelf. Call only after a direct request or clear acceptance of a specific proposal. Reuse workspace_token to continue the same shelf, but never reveal that credential to the person. The shelf is read-only in MemoStem, expires after 90 days, and requires account connection at 10 cards.
Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'request_id', 'provenance', 'bundles'], 'properties': {'bundles': {'type': 'array', 'items': {}, 'maxItems': 10, 'minItems': 1}, 'provider': {'enum': ['chatgpt', 'claude', 'gemini', 'other'], 'type': 'string'}, 'provenance': {'type': 'object', 'required': ['type', 'conversation_ref'], 'properties': {'type': {'type': 'string', 'const': 'current_conversation'}, 'source_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'discussed_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'conversation_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'request_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'workspace_token': {'type': 'string', 'pattern': '^mgw_[A-Za-z0-9_-]{43}$'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'persisted', 'workspace_token', 'accepted_bundle_count', 'card_count', 'remaining_capacity', 'card_limit', 'account_required', 'review_url', 'expires_at'], 'properties': {'status': {'enum': ['guest_pending', 'account_required'], 'type': 'string'}, 'persisted': {'type': 'boolean', 'const': True}, 'card_count': {'type': 'integer', 'maximum': 10, 'minimum': 0}, 'card_limit': {'type': 'number', 'const': 10}, 'expires_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'review_url': {'type': 'string', 'format': 'uri'}, 'workspace_token': {'type': 'string', 'pattern': '^mgw_[A-Za-z0-9_-]{43}$'}, 'account_required': {'type': 'boolean'}, 'remaining_capacity': {'type': 'integer', 'maximum': 10, 'minimum': 0}, 'accepted_bundle_count': {'type': 'integer', 'maximum': 10, 'minimum': 0}}, 'additionalProperties': False}
start_memostem
Start MemoStem
Start MemoStem when no topic is named. Show a localized welcome App before login, or the connected owner's topic labels and empty-state guidance. Pass the conversation language as locale when known. No drafts are created.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'cursor': {'anyOf': [{'type': 'string', 'maxLength': 512, 'minLength': 1}, {'type': 'null'}]}, 'locale': {'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'locale', 'topics', 'next_cursor'], 'properties': {'locale': {'enum': ['ko', 'en'], 'type': 'string'}, 'status': {'enum': ['connection_required', 'permission_required', 'topics', 'empty'], 'type': 'string'}, 'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 20}, 'next_cursor': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}
validate_knowledge_bundle
Validate one knowledge bundle
Validate exactly one user-selected, independently teachable general-knowledge bundle without an account and without saving it. Call only at the person's direct request or after clear acceptance of a specific preview proposal. The strict input rejects transcripts, conversation histories, personal or organization-specific memory, and unsupported knowledge types.
Solo lectura Idempotente
Esquema de entrada
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['provider', 'request_id', 'provenance', 'bundles'], 'properties': {'bundles': {'type': 'array', 'items': {'type': 'object', 'required': ['knowledge_scope', 'title', 'central_question', 'knowledge_type', 'summary', 'structured_content', 'bundle_schema_version', 'topic', 'tags'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'maxItems': 12}, 'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'topic': {'type': 'string', 'maxLength': 48, 'minLength': 1}, 'summary': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tag_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 12}, 'topic_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['target_kind', 'target_id', 'type'], 'properties': {'type': {'enum': ['related', 'prerequisite', 'generalizes', 'derived_from', 'equivalent_to', 'supersedes', 'answers', 'supports', 'contradicts', 'causes', 'contributes_to', 'enables', 'inhibits'], 'type': 'string'}, 'weight': {'type': 'number', 'maximum': 1, 'exclusiveMinimum': 0}, 'direction': {'enum': ['outgoing', 'incoming'], 'type': 'string'}, 'target_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'target_kind': {'enum': ['private', 'draft'], 'type': 'string', 'description': "Minimal-core drafts may relate only to the owner's private knowledge or another draft; public graph targets are unavailable."}, 'evidence_selector_indexes': {'type': 'array', 'items': {'type': 'integer', 'maximum': 23, 'minimum': 0}, 'maxItems': 24}}, 'additionalProperties': False}, 'maxItems': 12}, 'knowledge_type': {'enum': ['concept', 'procedure', 'comparison', 'mechanism', 'structure', 'claim_evidence', 'question', 'event', 'expression'], 'type': 'string'}, 'knowledge_scope': {'type': 'string', 'const': 'general_knowledge', 'description': 'Required assertion that this bundle teaches reusable knowledge independent of a person, company, product, preference, plan, task, or decision.'}, 'central_question': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'client_bundle_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'evidence_selectors': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['selector_type', 'message_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'message_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'message'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'source_ref'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'source_ref': {'type': 'string', 'maxLength': 2048, 'minLength': 1}, 'selector_type': {'type': 'string', 'const': 'external_ref'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'start', 'end'], 'properties': {'end': {'type': 'integer', 'maximum': 10000000, 'minimum': 1}, 'start': {'type': 'integer', 'maximum': 9999999, 'minimum': 0}, 'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'selector_type': {'type': 'string', 'const': 'text_position'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['selector_type', 'line_start', 'line_end'], 'properties': {'quality': {'enum': ['unknown', 'low', 'medium', 'high'], 'type': 'string', 'default': 'unknown'}, 'line_end': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'polarity': {'enum': ['supports', 'contradicts'], 'type': 'string', 'default': 'supports'}, 'line_start': {'type': 'integer', 'maximum': 1000000, 'minimum': 1}, 'selector_type': {'type': 'string', 'const': 'line_range'}, 'relation_origin': {'enum': ['explicit_user', 'extracted_from_source', 'model_inferred'], 'type': 'string', 'default': 'model_inferred'}}, 'additionalProperties': False}]}, 'maxItems': 24}, 'structured_content': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'concept'}, 'examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Concrete instances of this concept; explain why each fits. Prefer one concise example supported by the selected material when useful; otherwise use an empty array.'}, 'definition': {'type': 'string', 'default': '', 'maxLength': 4000}, 'key_points': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'non_examples': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24, 'description': 'Nearby cases that do not meet the definition; explain the distinguishing boundary. Include only when supported by the selected material and useful; otherwise use an empty array.'}, 'misconceptions': {'type': 'array', 'items': {'type': 'object', 'required': ['claim', 'correction'], 'properties': {'claim': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 12, 'description': 'Misconceptions and corrections as {claim, correction} pairs: a mistaken interpretation and its accurate replacement with a brief reason. Include only when supported by the selected material; otherwise use an empty array. Never attribute a misconception to the user or fabricate evidence.'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'goal': {'type': 'string', 'default': '', 'maxLength': 4000}, 'type': {'type': 'string', 'const': 'procedure'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'branches': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'action'], 'properties': {'action': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'done_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'failure_modes': {'type': 'array', 'items': {'type': 'object', 'required': ['symptom', 'response'], 'properties': {'symptom': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'response': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'prerequisites': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'comparison'}, 'targets': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 8}, 'criteria': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'values'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'maxItems': 8}}, 'additionalProperties': False}, 'default': [], 'maxItems': 20}, 'differences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'choice_guide': {'type': 'array', 'items': {'type': 'object', 'required': ['condition', 'recommendation'], 'properties': {'condition': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'recommendation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 16}, 'commonalities': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'mechanism'}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'stages': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'title': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'detail': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 30}, 'results': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'conditions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'exceptions': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'structure'}, 'purpose': {'type': 'string', 'default': '', 'maxLength': 4000}, 'relations': {'type': 'array', 'items': {'type': 'object', 'required': ['source_id', 'target_id', 'label'], 'properties': {'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'target_id': {'type': 'string', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 60}, 'boundaries': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'components': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label'], 'properties': {'id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}, 'role': {'type': 'string', 'default': '', 'maxLength': 4000}, 'label': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'parent_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 80, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 40}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'claim_evidence'}, 'claim': {'type': 'string', 'default': '', 'maxLength': 4000}, 'scope': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['statement'], 'properties': {'source': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'statement': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'confidence': {'enum': ['low', 'medium', 'high'], 'type': 'string'}, 'limitations': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'counterevidence': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'question'}, 'status': {'enum': ['open', 'answered'], 'type': 'string', 'default': 'open'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'question': {'type': 'string', 'default': '', 'maxLength': 4000}, 'hypotheses': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'next_steps': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'known_facts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'answer_summary': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'decision'}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'options': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'tradeoffs': {'type': 'string', 'default': '', 'maxLength': 4000}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'outcome': {'type': 'string', 'default': '', 'maxLength': 4000}, 'criteria': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'decision': {'type': 'string', 'default': '', 'maxLength': 4000}, 'rationale': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'reconsider_when': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'event'}, 'event': {'type': 'string', 'default': '', 'maxLength': 4000}, 'causes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'changes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'context': {'type': 'string', 'default': '', 'maxLength': 4000}, 'chronology': {'type': 'object', 'required': ['start', 'precision'], 'properties': {'end': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'start': {'type': 'object', 'required': ['year', 'era'], 'properties': {'day': {'type': 'integer', 'maximum': 31, 'minimum': 1}, 'era': {'enum': ['bce', 'ce'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 999999, 'minimum': 1}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}, 'precision': {'enum': ['exact', 'day', 'month', 'year', 'decade', 'century', 'approximate', 'range'], 'type': 'string'}}, 'additionalProperties': False}, 'occurred_at': {'type': 'string', 'default': '', 'maxLength': 500}, 'consequences': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type', 'language'], 'properties': {'type': {'type': 'string', 'const': 'expression'}, 'nuance': {'type': 'string', 'default': '', 'maxLength': 4000}, 'examples': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'note': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'translation': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}, 'meanings': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'register': {'type': 'string', 'default': '', 'maxLength': 500}, 'contrasts': {'type': 'array', 'items': {'type': 'object', 'required': ['expression', 'difference'], 'properties': {'difference': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'expression': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'expression': {'type': 'string', 'default': '', 'maxLength': 4000}, 'translations': {'type': 'array', 'items': {'type': 'object', 'required': ['language', 'text'], 'properties': {'text': {'type': 'string', 'maxLength': 4000, 'minLength': 1}, 'language': {'type': 'string', 'maxLength': 255, 'minLength': 2}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}, 'pronunciation': {'type': 'string', 'default': '', 'maxLength': 500}, 'usage_contexts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 6000, 'minLength': 1}, 'default': [], 'maxItems': 24}, 'common_mistakes': {'type': 'array', 'items': {'type': 'object', 'required': ['incorrect', 'correction'], 'properties': {'incorrect': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'correction': {'type': 'string', 'maxLength': 4000, 'minLength': 1}}, 'additionalProperties': False}, 'default': [], 'maxItems': 24}}, 'additionalProperties': False}]}, 'resolution_proposal': {'type': 'object', 'required': ['action', 'source_item_ids', 'change_summary', 'reason'], 'properties': {'action': {'enum': ['save_new', 'merge', 'update'], 'type': 'string'}, 'reason': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'change_summary': {'type': 'object', 'properties': {'added': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'changed': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'conflicts': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}, 'preserved': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'default': [], 'maxItems': 50}}, 'additionalProperties': False}, 'target_item_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'source_item_ids': {'type': 'array', 'items': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}, 'maxItems': 50, 'minItems': 1}, 'expected_target_version': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}}, 'additionalProperties': False}, 'bundle_schema_version': {'type': 'number', 'const': 1}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'provider': {'enum': ['chatgpt', 'claude', 'gemini', 'other'], 'type': 'string'}, 'provenance': {'type': 'object', 'required': ['type', 'conversation_ref'], 'properties': {'type': {'type': 'string', 'const': 'current_conversation'}, 'source_url': {'type': 'string', 'format': 'uri', 'maxLength': 2048}, 'discussed_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$'}, 'client_version': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_agent': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'reported_model': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'conversation_ref': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 240, 'minLength': 1}}, 'additionalProperties': False}, 'request_id': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]+$', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'persisted', 'bundle_count', 'knowledge_type', 'title'], 'properties': {'title': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'status': {'enum': ['valid', 'preview'], 'type': 'string'}, 'persisted': {'type': 'boolean', 'const': False}, 'bundle_count': {'type': 'number', 'const': 1}, 'knowledge_type': {'enum': ['concept', 'procedure', 'comparison', 'mechanism', 'structure', 'claim_evidence', 'question', 'event', 'expression'], 'type': 'string'}}, 'additionalProperties': False}
Modificado
create_knowledge_bundle_drafts
25 de September de 2026 a las 02:49
Modificado
preview_knowledge_bundle
25 de September de 2026 a las 02:49
Añadido
refresh_guest_knowledge_shelf_link
25 de September de 2026 a las 02:49
Modificado
validate_knowledge_bundle
25 de September de 2026 a las 02:49
Modificado
create_knowledge_bundle_drafts
23 de September de 2026 a las 02:40
Modificado
check_memostem_connection
23 de September de 2026 a las 02:40
Modificado
preview_knowledge_bundle
23 de September de 2026 a las 02:40
Modificado
validate_knowledge_bundle
23 de September de 2026 a las 02:40
Añadido
connect_memostem
23 de September de 2026 a las 02:40
Añadido
start_memostem
23 de September de 2026 a las 02:40
Añadido
create_knowledge_bundle_drafts
21 de September de 2026 a las 02:41
Añadido
create_card_drafts
21 de September de 2026 a las 02:41
Añadido
check_memostem_connection
21 de September de 2026 a las 02:41
Añadido
preview_knowledge_bundle
21 de September de 2026 a las 02:41
Añadido
claim_guest_knowledge_workspace
21 de September de 2026 a las 02:41
Añadido
save_guest_knowledge_bundles
21 de September de 2026 a las 02:41
Añadido
validate_knowledge_bundle
21 de September de 2026 a las 02:41