{"slug":"oip-mcp","title":"OIP and MCP Protocol Specification","body":"## Introduction\nObject Invocation Protocol (OIP) is a protocol standard. Model Context Protocol (MCP) is a protocol standard. OIP enables agents to invoke directory objects on miscsubjects.com. MCP establishes a session between a model and a server.\n\n## Model Context Protocol (MCP)\nModel Context Protocol (MCP) is a protocol standard. MCP establishes a session between a model and a server. A session is a continuous, active connection between a model and a server. A server exposes tools, resources, and prompts over a session. A model utilizes exposed tools, resources, and prompts. A tool is a callable function. A resource is accessible data or an external system. A prompt is an input instruction.\n\n## Object Invocation Protocol (OIP)\nObject Invocation Protocol (OIP) is a protocol standard. OIP enables any agent to invoke a directory object. A capability is a directory object. Any agent that opens a Uniform Resource Locator (URL) invokes and verifies.\n\n### Invocation\nAn agent invokes a directory object by sending data to `/api/dispatch`. `/api/dispatch` is an Application Programming Interface (API) endpoint. An API is a set of rules for software program communication. An agent invokes an object using a `POST` request with a JavaScript Object Notation (JSON) body to `/api/dispatch`. JSON is a data interchange format. The `POST` request body contains a `key` field and a `body` field. The `key` field identifies the directory object. The `body` field transmits invocation data to the directory object. An agent invokes an object using a `GET` request to `/api/dispatch?invoke=KEY&body=...`. The `invoke` parameter identifies the directory object. The `body` parameter transmits invocation data to the directory object.\n\n### Ledger and Receipts\nEvery invocation appends to the ledger. The ledger is an append-only record of all invocations. An invocation returns a receipt. A receipt proves an invocation occurred. A receipt is accessible at `/api/dispatch?receipt=inv_ID`. The `inv_ID` is a unique identifier for a specific invocation.\n\n### Replay and Repair\nThe ledger enables invocation replay. Invocation replay re-executes a recorded invocation. The ledger enables invocation repair. Invocation repair corrects a past invocation based on its ledger entry.\n\n## OIP and MCP Comparison\nOIP operates without a persistent session. MCP establishes a persistent session between a model and a server. OIP invokes specific directory objects on miscsubjects.com. MCP provides a model with a context of tools, resources, and prompts exposed by a server.\n\n## Machine-Readable Specifications\n\n### MCP Object Specification\nAn MCP object specifies:\n*   `server`: The URL for session establishment.\n*   `tools`: A collection of callable functions.\n*   `resources`: Accessible data or external systems.\n*   `input_schema`: The required input format for a tool call.\n*   `call`: The procedure for a tool call.\n*   `result`: The expected output format from a tool call.\n\n### OIP Object Specification\nAn OIP object specifies:\n*   `article`: Content accessible at `/a/<slug>`. A slug is a unique article identifier.\n*   `directory_row`: A capability is a directory object.\n*   `receipt`: Proof of invocation accessible at `/api/dispatch?receipt=inv_ID`.\n*   `ledger`: The append-only record of all invocations.\n*   `replay`: Re-execution of a recorded invocation.\n*   `repair`: Correction of a past invocation based on its ledger entry.\n\n## miscsubjects.com Routes\n*   `/api/dispatch`: An Application Programming Interface (API) endpoint. This endpoint invokes directory objects via `POST` or `GET` requests.\n*   `/api/dispatch?receipt=inv_ID`: This URL provides a receipt for a specific invocation. The `inv_ID` is the unique identifier for the invocation.\n*   `/a/<slug>`: This URL accesses an article. The `<slug>` is a unique article identifier.\n## Latest clarity reviews (live)\n\nFresh models are sent this article's bundle and asked two separate questions: how clear is the machine JSON, and how clear is the English body. Scores are 0 to 10. The full history is in the append-only ledger.\n\n- 2026-07-03 01:46 · model `@cf/meta/llama-3.3-70b-instruct-fp8-fast` · NEEDS WORK · JSON 9/10 · English 8/10 · zero-context human 6/10\n  - gaps named: In-depth explanation of Model Context Protocol (MCP); Object Invocation Protocol (OIP) architecture; Directory rows and dispatch mechanism\n- 2026-07-02 23:46 · model `@cf/meta/llama-3.3-70b-instruct-fp8-fast` · NEEDS WORK · JSON 8/10 · English 9/10 · zero-context human 7/10\n  - gaps named: Model Context Protocol (MCP) in-depth explanation; Object Invocation Protocol (OIP) architecture; Directory rows and dispatch mechanism\n\nHow the loop self-corrects: a failing review queues a model revision of this article (a new append-only version). A missing concept named by a reviewer queues a brand-new machine-written article, which then enters the same review cycle.","hero":null,"images":[],"style":{"accent":"#16324f","measure":860},"tags":["oip","object-invocation-protocol","protocol-specification","machine-native-json","primer"],"model":null,"ledger":null,"embeds":[],"widgets":[{"type":"stat","value":2,"label":"revision"},{"type":"note","title":"Zero-context rule","text":"A reader should understand the protocol unit, object contract, invocation route, receipt schema, and repair path from this page plus its machine bundle."},{"type":"note","title":"Machine-native rule","text":"The JSON is the executable map: object, routes, inputs, proof loop, ledger, and next article to open."}],"home":false,"claims":[{"id":"oip-c1","tier":"system","text":"The OIP article layer is generated from live directory rows, so it documents the objects that actually run the reference implementation.","who_claims":"system/oip_articles","source_ids":["oip-s3","oip-s4"]},{"id":"oip-c2","tier":"system","text":"The OIP operating path is caller to directory object to dispatch runner to invocation ledger to receipt.","who_claims":"system/oip_articles","source_ids":["oip-s1"]},{"id":"oip-c3","tier":"system","text":"Every executable capability in the reference implementation is reachable as an OIP object with a human article, a machine document, invocation history, and receipt path.","who_claims":"system/oip_articles","source_ids":["oip-s2","oip-s3"]},{"id":"oip-c4","tier":"system","text":"Tap & Go is the copy primitive: one drop carries credential, protocol, tree, search, execute, and receipt instructions without a separate token-map-bundle assembly step.","who_claims":"system/oip_articles","source_ids":["oip-s2"]},{"id":"oip-c5","tier":"system","text":"OIP receipts are the proof object for actions: they record request, response, actor, links, replay, repair, and lineage.","who_claims":"system/oip_articles","source_ids":["oip-s2","oip-s5"]}],"sources":[{"id":"oip-s1","type":"protocol","title":"BUILD_SPEC object invocation path","url":"https://miscsubjects.com/api/file/docs/BUILD_SPEC.md","summary":"Defines directory rows, dispatch, ledger, and the escalation path for changing the build.","quote":"Run anything: POST https://miscsubjects.com/api/dispatch {key, body}","claim_ids":["oip-c2"],"link_status":"ok","hash":"oipbuildspec0001"},{"id":"oip-s2","type":"protocol","title":"Object Invocation Protocol spec","url":"https://miscsubjects.com/api/file/docs/OIP.md","summary":"Defines OIP surfaces, invariant loop, receipt/replay/repair, and invocation envelopes.","quote":"identify, explain, invoke, ledger, yield","claim_ids":["oip-c3","oip-c4","oip-c5"],"link_status":"ok","hash":"oipspec00000002"},{"id":"oip-s3","type":"protocol","title":"Live OIP capability tree","url":"https://miscsubjects.com/api/dispatch?map=1&format=markdown","summary":"Public recursive capability tree.","quote":"root > shelf > system article > capability article > receipt","claim_ids":["oip-c1","oip-c3"],"link_status":"ok","hash":"oipmap0000000002"},{"id":"oip-s4","type":"protocol","title":"Directory row documentation","url":"https://miscsubjects.com/api/dispatch?key=OIP_TREE&format=markdown","summary":"Capability articles are generated from live rows.","quote":"Machine Contract","claim_ids":["oip-c1"],"link_status":"ok","hash":"oiprow0000000003"},{"id":"oip-s5","type":"protocol","title":"Invocation ledger","url":"https://miscsubjects.com/api/invocations","summary":"Append-only invocation records and receipt links.","quote":"invocations","claim_ids":["oip-c5"],"link_status":"ok","hash":"oipinvocations0005"}],"reviews":[],"extra":{"oip_virtual":true,"oip_type":"primer","count":2,"metric":"revision","primer":"oip-mcp","version":2,"author_model":"gemini/gemini-2.5-flash","revision_source":"revision"},"register":"oip_protocol","status":"published","revisions":0,"contributions":[],"provenance":[{"action":"generate","model":"system/oip_articles","ts":"2026-07-03T00:22:28-07:00","hash":"virtual-oip","tokens_in":0,"tokens_out":0}],"energy":{"passes":1,"tokens_in":0,"tokens_out":0,"tokens_total":0,"cost_usd":0,"models":{"system/oip_articles":1},"head":"virtual-oip"},"posted_at":"2026-07-02T00:00:00.000Z","created_at":"2026-07-02T00:00:00.000Z","updated_at":"2026-07-03T00:22:28-07:00"}