{ "api_version": "v1", "catalog_sha256": "28e887f32a41fb328f05cba13a0ecfeea3c4ce6e2ffc8ab558d3ed096f012f86", "contract_id": "gewu.service.v1", "contract_version": 1, "operations": [ { "capability": "service:diagnostics", "mutates_knowledge": false, "name": "diagnostics", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "list_projects", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "get_project_context", "transports": [ "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "search", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "list_sources", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "get_node", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "node_history", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "get_source", "transports": [ "http", "mcp" ] }, { "capability": "knowledge:read", "mutates_knowledge": false, "name": "neighbors", "transports": [ "http", "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_capture_url", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_capture_text", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_upload_begin", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_upload_status", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_upload_chunk", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_upload_finalize", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_extract", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": false, "name": "source_extraction_block", "transports": [ "mcp" ] }, { "capability": "proposal:submit", "mutates_knowledge": true, "name": "proposal_submit", "transports": [ "mcp" ] }, { "capability": "proposal:evaluate", "mutates_knowledge": false, "name": "proposal_prepare", "transports": [ "mcp" ] }, { "capability": "proposal:evaluate", "mutates_knowledge": false, "name": "proposal_evaluate", "transports": [ "mcp" ] }, { "capability": "proposal:read", "mutates_knowledge": false, "name": "proposal_status", "transports": [ "mcp" ] }, { "capability": "proposal:withdraw", "mutates_knowledge": false, "name": "proposal_withdraw", "transports": [ "mcp" ] }, { "capability": "run:write", "mutates_knowledge": false, "name": "run_create", "transports": [ "mcp" ] }, { "capability": "run:write", "mutates_knowledge": false, "name": "run_checkpoint", "transports": [ "mcp" ] }, { "capability": "run:read", "mutates_knowledge": false, "name": "run_status", "transports": [ "mcp" ] }, { "capability": "ingest:review", "mutates_knowledge": false, "name": "ingest_review_create", "transports": [ "mcp" ] } ], "record_schemas": [ { "path": "schemas/AcceptanceManifest.schema.json", "sha256": "7ed4df07e1287bfdf3587549b2003bcf319774ce1e73d104320b64934d13cbc6" }, { "path": "schemas/AutoAcceptPolicy.schema.json", "sha256": "72650ab78f27ea83dbb79c8ed9e8cef043e99655ea1d886540ad4806112e0f00" }, { "path": "schemas/DomainError.schema.json", "sha256": "283442b889a5dc4addd9e1a6f08fa56e802c09df1eb2822c8de32a5eb6e0576c" }, { "path": "schemas/ExtractionRecord.schema.json", "sha256": "5b7c6c8a46696736ef90fca1b1eac6d17dd9918ed12e9c212a776651b0c31937" }, { "path": "schemas/IngestReviewCreate.schema.json", "sha256": "0db108b90265d2089ce8df3d2734865a13f7abb1dfba85058b9bbec5fcac426d" }, { "path": "schemas/IngestReviewDecision.schema.json", "sha256": "5f62ad3fd8035130cb5e31141eeef1f83acc55727246bc7bf82b43fca6697a9f" }, { "path": "schemas/IngestReviewItem.schema.json", "sha256": "5cf759227279a87552bc2f43d4545a68c00a8702afce87b2088bc6f276a85f27" }, { "path": "schemas/KnowledgeNode.schema.json", "sha256": "0b1a8f20fb89088f7f8c00ea6263d65447b03b14e22e99ee66f88950cdaaaacc" }, { "path": "schemas/NeighborRequest.schema.json", "sha256": "0a19786868172d566aa4bae8f80da41ce82859f637a4638178a36c0e63cca02a" }, { "path": "schemas/OnlineEvidence.schema.json", "sha256": "a3ac3fe79df6941d7a4be9cbfbf5e77aef677de1265051cfafb0d87557e99acf" }, { "path": "schemas/ProjectRecord.schema.json", "sha256": "bba7461c640c05734f668fd1568b6a80b2c9569e81c3efd289875aff46a168da" }, { "path": "schemas/ProposalReceipt.schema.json", "sha256": "9120f871f3769894dd6dd946a9517e67ea9a47ec8a99d3109871b305d221b1b6" }, { "path": "schemas/ProposalRevision.schema.json", "sha256": "c9fb0efb92455f0f4a2f764c2988753d98de2d4e3e271ebbcfa98ff750d06895" }, { "path": "schemas/ProposalStatus.schema.json", "sha256": "30f414c2ce8681fdf7f62aaf0fe882256bc25a85ab6cbf1d572bf6e9f85b9e44" }, { "path": "schemas/ReadEnvelope.schema.json", "sha256": "479eb35fab91f9b71af97ef2ea53eb9f66d80118431978aab74109cf01405be0" }, { "path": "schemas/RunCheckpointRequest.schema.json", "sha256": "5c7a288c9c96ef1f1bebdcc5858d3328c03ffabfcb64834bb63534925b3961d3" }, { "path": "schemas/RunCreateRequest.schema.json", "sha256": "91b64874bdab39cc984a7c47405343c7d1ce0c5ee6db5bb71a5a7766509368e7" }, { "path": "schemas/RunRecord.schema.json", "sha256": "ee446fa146339b7bb6c2618f758df70a71904c2a33ff957c3df694050e3799b4" }, { "path": "schemas/Scope.schema.json", "sha256": "bb04f141a77456c5766eda3b66b2ff9b19d56f0a771565dbb1a8ad57faf552d1" }, { "path": "schemas/SearchRequest.schema.json", "sha256": "f57bec61c99e655b600bf1450dac6e62a390cabf9f58da19bdd90348b4452812" }, { "path": "schemas/ServiceDiagnostics.schema.json", "sha256": "09bb765b5f042ab4d505aa87c903d86d3e778670e1c937fa48f568a98fe5e69d" }, { "path": "schemas/SourceRevisionRecord.schema.json", "sha256": "8a32a0d06fdc9baf61516939e71953e16c63dca7baf77fe930c26888da905e90" }, { "path": "schemas/TypedEdge.schema.json", "sha256": "09f007f4a37aaf62eb2da96eae4ca9a6ea9aa762625f5525fa93eec76c845706" } ], "tools": [ { "description": "Report authenticated caller scope, service contracts, limits and index state.", "input_schema": { "properties": { "include_shared": { "default": false, "title": "Include Shared", "type": "boolean" }, "projects": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Projects" } }, "title": "diagnosticsArguments", "type": "object" }, "name": "diagnostics" }, { "description": "Read an accepted node revision and its exact evidence citations.", "input_schema": { "properties": { "node_id": { "title": "Node Id", "type": "string" }, "project_id": { "title": "Project Id", "type": "string" }, "revision": { "anyOf": [ { "pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$", "type": "string" }, { "type": "null" } ], "default": null, "title": "Revision" } }, "required": [ "project_id", "node_id" ], "title": "get_nodeArguments", "type": "object" }, "name": "get_node" }, { "description": "Read bounded accepted revisions of one project-scoped node.", "input_schema": { "properties": { "limit": { "default": 20, "title": "Limit", "type": "integer" }, "node_id": { "title": "Node Id", "type": "string" }, "project_id": { "title": "Project Id", "type": "string" } }, "required": [ "project_id", "node_id" ], "title": "node_historyArguments", "type": "object" }, "name": "node_history" }, { "description": "Read a source revision only through one of its ingested_for grants.", "input_schema": { "properties": { "project_id": { "title": "Project Id", "type": "string" }, "revision_id": { "title": "Revision Id", "type": "string" } }, "required": [ "project_id", "revision_id" ], "title": "get_sourceArguments", "type": "object" }, "name": "get_source" }, { "description": "List project IDs readable by the authenticated principal.", "input_schema": { "properties": {}, "title": "list_projectsArguments", "type": "object" }, "name": "list_projects" }, { "description": "Search accepted knowledge in scope. Set include_evidence=false for compact claim summaries; the default includes full citations.", "input_schema": { "$defs": { "Confidence": { "enum": [ "low", "medium", "high" ], "title": "Confidence", "type": "string" }, "NodeType": { "enum": [ "finding", "problem", "technique", "case", "entity", "event", "concept", "datapoint", "synthesis" ], "title": "NodeType", "type": "string" } }, "properties": { "all_projects": { "title": "All Projects", "type": "boolean" }, "as_of_from": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "As Of From" }, "as_of_to": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "As Of To" }, "audience": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Audience" }, "budget_tokens": { "title": "Budget Tokens", "type": "integer" }, "confidences": { "anyOf": [ { "items": { "$ref": "#/$defs/Confidence" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Confidences" }, "cursor": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Cursor" }, "domain": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Domain" }, "include_evidence": { "default": true, "title": "Include Evidence", "type": "boolean" }, "include_projects": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Include Projects" }, "include_shared": { "title": "Include Shared", "type": "boolean" }, "limit": { "title": "Limit", "type": "integer" }, "node_types": { "anyOf": [ { "items": { "$ref": "#/$defs/NodeType" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Node Types" }, "projects": { "items": { "type": "string" }, "title": "Projects", "type": "array" }, "query": { "title": "Query", "type": "string" }, "stale_only": { "default": false, "title": "Stale Only", "type": "boolean" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Tags" }, "use_for": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Use For" } }, "required": [ "query", "projects", "include_shared", "all_projects", "limit", "budget_tokens" ], "title": "searchArguments", "type": "object" }, "name": "search" }, { "description": "List source revisions granted to an explicit authorized project scope.", "input_schema": { "properties": { "all_projects": { "title": "All Projects", "type": "boolean" }, "budget_tokens": { "title": "Budget Tokens", "type": "integer" }, "cursor": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Cursor" }, "include_projects": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Include Projects" }, "include_shared": { "title": "Include Shared", "type": "boolean" }, "limit": { "title": "Limit", "type": "integer" }, "projects": { "items": { "type": "string" }, "title": "Projects", "type": "array" } }, "required": [ "projects", "include_shared", "all_projects", "limit", "budget_tokens" ], "title": "list_sourcesArguments", "type": "object" }, "name": "list_sources" }, { "description": "Read scoped typed relationships and their exact citations.", "input_schema": { "properties": { "all_projects": { "title": "All Projects", "type": "boolean" }, "budget_tokens": { "title": "Budget Tokens", "type": "integer" }, "cursor": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Cursor" }, "edge_types": { "items": { "type": "string" }, "title": "Edge Types", "type": "array" }, "include_projects": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Include Projects" }, "include_shared": { "title": "Include Shared", "type": "boolean" }, "limit": { "title": "Limit", "type": "integer" }, "node_id": { "title": "Node Id", "type": "string" }, "projects": { "items": { "type": "string" }, "title": "Projects", "type": "array" } }, "required": [ "node_id", "projects", "include_shared", "all_projects", "edge_types", "limit", "budget_tokens" ], "title": "neighborsArguments", "type": "object" }, "name": "neighbors" }, { "description": "Persist a source-bound follow-up flag for human relevance feedback.", "input_schema": { "properties": { "review_json": { "title": "Review Json", "type": "string" } }, "required": [ "review_json" ], "title": "ingest_review_createArguments", "type": "object" }, "name": "ingest_review_create" }, { "description": "Archive explicitly supplied UTF-8 text and return its source candidate.", "input_schema": { "$defs": { "ReliabilityGrade": { "enum": [ "low", "medium", "high" ], "title": "ReliabilityGrade", "type": "string" } }, "properties": { "authors": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Authors" }, "capture_id": { "title": "Capture Id", "type": "string" }, "license": { "default": "unspecified", "title": "License", "type": "string" }, "media_type": { "default": "text/plain", "enum": [ "text/plain", "text/markdown" ], "title": "Media Type", "type": "string" }, "original_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Original Url" }, "project_id": { "title": "Project Id", "type": "string" }, "publisher": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Publisher" }, "reliability_grade": { "$ref": "#/$defs/ReliabilityGrade", "default": "low" }, "source_key": { "title": "Source Key", "type": "string" }, "source_type": { "default": "other", "enum": [ "paper", "review", "press", "vendor", "internal", "talk", "export", "other" ], "title": "Source Type", "type": "string" }, "text": { "title": "Text", "type": "string" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Title" } }, "required": [ "capture_id", "project_id", "source_key", "text" ], "title": "source_capture_textArguments", "type": "object" }, "name": "source_capture_text" }, { "description": "Stage an allowlisted URL and return a source-record proposal candidate.", "input_schema": { "$defs": { "ReliabilityGrade": { "enum": [ "low", "medium", "high" ], "title": "ReliabilityGrade", "type": "string" } }, "properties": { "authors": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "title": "Authors" }, "license": { "default": "unspecified", "title": "License", "type": "string" }, "project_id": { "title": "Project Id", "type": "string" }, "publisher": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Publisher" }, "reliability_grade": { "$ref": "#/$defs/ReliabilityGrade", "default": "low" }, "source_type": { "default": "other", "enum": [ "paper", "review", "press", "vendor", "internal", "talk", "export", "other" ], "title": "Source Type", "type": "string" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "title": "Title" }, "url": { "title": "Url", "type": "string" } }, "required": [ "project_id", "url" ], "title": "source_capture_urlArguments", "type": "object" }, "name": "source_capture_url" }, { "description": "Begin a low-level upload for a byte-capable client such as gewu-connector.\n\nFor files on the agent's machine, configure and use the local stdio\nconnector instead of sending source bytes through conversational calls.\n", "input_schema": { "properties": { "byte_length": { "title": "Byte Length", "type": "integer" }, "expected_sha256": { "title": "Expected Sha256", "type": "string" }, "filename": { "title": "Filename", "type": "string" }, "media_type": { "title": "Media Type", "type": "string" }, "project_id": { "title": "Project Id", "type": "string" } }, "required": [ "project_id", "filename", "media_type", "byte_length", "expected_sha256" ], "title": "source_upload_beginArguments", "type": "object" }, "name": "source_upload_begin" }, { "description": "Resume an upload owned by the authenticated agent identity.", "input_schema": { "properties": { "upload_id": { "title": "Upload Id", "type": "string" } }, "required": [ "upload_id" ], "title": "source_upload_statusArguments", "type": "object" }, "name": "source_upload_status" }, { "description": "Transfer one integrity-checked chunk for a byte-capable upload client.\n\nThis low-level endpoint is used internally by gewu-connector. Do not\nsend whole-file base64 through conversational MCP; configure the local\nconnector for files on the agent's machine.\n", "input_schema": { "properties": { "chunk_sha256": { "title": "Chunk Sha256", "type": "string" }, "content_base64": { "title": "Content Base64", "type": "string" }, "offset": { "title": "Offset", "type": "integer" }, "upload_id": { "title": "Upload Id", "type": "string" } }, "required": [ "upload_id", "offset", "content_base64", "chunk_sha256" ], "title": "source_upload_chunkArguments", "type": "object" }, "name": "source_upload_chunk" }, { "description": "Finalize a low-level upload after all verified chunks are present.\n\nLocal-file connector workflows handle upload and finalization internally.\n", "input_schema": { "properties": { "upload_id": { "title": "Upload Id", "type": "string" } }, "required": [ "upload_id" ], "title": "source_upload_finalizeArguments", "type": "object" }, "name": "source_upload_finalize" }, { "description": "Create and stage a versioned text extraction for a source revision.", "input_schema": { "properties": { "artifact_sha256": { "title": "Artifact Sha256", "type": "string" }, "project_id": { "title": "Project Id", "type": "string" }, "source_revision_id": { "title": "Source Revision Id", "type": "string" } }, "required": [ "project_id", "artifact_sha256", "source_revision_id" ], "title": "source_extractArguments", "type": "object" }, "name": "source_extract" }, { "description": "Read a normalized slice with its profile and optional original-source offset map.", "input_schema": { "properties": { "block_id": { "title": "Block Id", "type": "string" }, "extraction_id": { "title": "Extraction Id", "type": "string" }, "include_original_mapping": { "default": false, "title": "Include Original Mapping", "type": "boolean" }, "length": { "title": "Length", "type": "integer" }, "offset": { "title": "Offset", "type": "integer" }, "project_id": { "title": "Project Id", "type": "string" } }, "required": [ "project_id", "extraction_id", "block_id", "offset", "length" ], "title": "source_extraction_blockArguments", "type": "object" }, "name": "source_extraction_block" }, { "description": "Validate and submit one bounded proposal; report any safe input repair.", "input_schema": { "properties": { "proposal_json": { "title": "Proposal Json", "type": "string" } }, "required": [ "proposal_json" ], "title": "proposal_submitArguments", "type": "object" }, "name": "proposal_submit" }, { "description": "Fill canonical evidence and payload digests without storing the proposal.", "input_schema": { "properties": { "proposal_json": { "title": "Proposal Json", "type": "string" } }, "required": [ "proposal_json" ], "title": "proposal_prepareArguments", "type": "object" }, "name": "proposal_prepare" }, { "description": "Evaluate one bounded proposal without storing or publishing it.\n\nA single missing final outer brace is repaired only if the result\nis valid JSON and matches the full contract. The response exposes\ninput_repaired=true. Other malformed JSON returns status=invalid.\nA valid proposal may instead return needs-review when an applicable\npolicy requires an owner decision.\n", "input_schema": { "properties": { "proposal_json": { "title": "Proposal Json", "type": "string" } }, "required": [ "proposal_json" ], "title": "proposal_evaluateArguments", "type": "object" }, "name": "proposal_evaluate" }, { "description": "Read bounded lifecycle for a proposal created by this authenticated agent.", "input_schema": { "properties": { "proposal_id": { "title": "Proposal Id", "type": "string" }, "revision": { "title": "Revision", "type": "integer" } }, "required": [ "proposal_id", "revision" ], "title": "proposal_statusArguments", "type": "object" }, "name": "proposal_status" }, { "description": "Withdraw this agent's unpublished proposal under the canonical writer lock.", "input_schema": { "properties": { "proposal_id": { "title": "Proposal Id", "type": "string" }, "revision": { "title": "Revision", "type": "integer" } }, "required": [ "proposal_id", "revision" ], "title": "proposal_withdrawArguments", "type": "object" }, "name": "proposal_withdraw" }, { "description": "Create or idempotently recover an agent-owned durable run.", "input_schema": { "properties": { "request_json": { "title": "Request Json", "type": "string" } }, "required": [ "request_json" ], "title": "run_createArguments", "type": "object" }, "name": "run_create" }, { "description": "Append an idempotent, revision-checked checkpoint to an owned run.", "input_schema": { "properties": { "request_json": { "title": "Request Json", "type": "string" } }, "required": [ "request_json" ], "title": "run_checkpointArguments", "type": "object" }, "name": "run_checkpoint" }, { "description": "Read the latest durable checkpoint for the authenticated run owner.", "input_schema": { "properties": { "run_id": { "title": "Run Id", "type": "string" } }, "required": [ "run_id" ], "title": "run_statusArguments", "type": "object" }, "name": "run_status" }, { "description": "Read the authorized project's research lens without exposing its policy.", "input_schema": { "properties": { "project_id": { "title": "Project Id", "type": "string" } }, "required": [ "project_id" ], "title": "get_project_contextArguments", "type": "object" }, "name": "get_project_context" } ] }