{"_id":"@casys/mcp-view-contracts","name":"@casys/mcp-view-contracts","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@casys/mcp-view-contracts","version":"0.1.0","description":"Dependency-free MCP App resource, composition, and session contracts","keywords":["mcp","model-context-protocol","mcp-apps","contracts","manifest"],"repository":{"type":"git","url":"git+https://github.com/Casys-AI/mcp-server.git"},"license":"MIT","main":"./script/mod.js","module":"./esm/mod.js","exports":{".":{"types":"./esm/mod.d.ts","import":"./esm/mod.js","require":"./script/mod.js"}},"types":"./esm/mod.d.ts","_id":"@casys/mcp-view-contracts@0.1.0","gitHead":"dcde8fa3bd1a6ae135c816381aafb4d084635347","bugs":{"url":"https://github.com/Casys-AI/mcp-server/issues"},"homepage":"https://github.com/Casys-AI/mcp-server#readme","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-FKha8PxesytVsD/kStUV05i0DYgNnKgL9wpL2P3DXxwg9jG3mSmfttY+je7pXKD4/HzAN/IfZqSYWWvLDGnAgQ==","shasum":"a81ef924b325aca4ab727464cc821d0d1a93b4ad","tarball":"https://registry.npmjs.org/@casys/mcp-view-contracts/-/mcp-view-contracts-0.1.0.tgz","fileCount":23,"unpackedSize":74004,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAFXq9zd5SP7JoKbeoY359164hadAt9MHWRjEGwCYJu3AiEA8SGsPrZ3/HsDlN/pDM+gyuzkZQ1fM5CcWe5sjBWF8II="}]},"_npmUser":{"name":"superworldsavior","email":"erpesle@gmail.com"},"directories":{},"maintainers":[{"name":"superworldsavior","email":"erpesle@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-view-contracts_0.1.0_1788170955618_0.24159924987913217"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-31T10:09:15.410Z","0.1.0":"2026-08-31T10:09:15.749Z","modified":"2026-08-31T10:09:16.069Z"},"maintainers":[{"name":"superworldsavior","email":"erpesle@gmail.com"}],"description":"Dependency-free MCP App resource, composition, and session contracts","homepage":"https://github.com/Casys-AI/mcp-server#readme","keywords":["mcp","model-context-protocol","mcp-apps","contracts","manifest"],"repository":{"type":"git","url":"git+https://github.com/Casys-AI/mcp-server.git"},"bugs":{"url":"https://github.com/Casys-AI/mcp-server/issues"},"license":"MIT","readme":"# @casys/mcp-view-contracts\n\nDependency-free contracts for MCP App resources, composition, and recorded viewer sessions.\n\nThe package is safe to import from MCP servers, hosts, agents, and browser Apps. Its public module\ngraph has no DOM, MCP Apps runtime, MCP SDK, React, or Preact dependency.\n\n```ts\nimport {\n  defineViewAppManifest,\n  VIEW_APP_MANIFEST_SCHEMA,\n  VIEWER_SESSION_APPLY_ACTION,\n} from \"@casys/mcp-view-contracts\";\n\nexport const manifest = defineViewAppManifest({\n  schemaVersion: VIEW_APP_MANIFEST_SCHEMA,\n  app: { id: \"io.casys.cad.results\", title: \"CAD results\", version: \"1.0.0\" },\n  resources: [{\n    uri: \"ui://mcp-cad/results-viewer\",\n    ownership: \"whole-view\",\n    resultSchemas: [\"io.casys.cad.execution/1.0\"],\n    acceptedActions: [VIEWER_SESSION_APPLY_ACTION],\n    sessionSchemas: [\"io.casys.thread.cad-viewer-session/1.0\"],\n  }],\n});\n```\n\n`viewer.session.apply` and `sessionSchemas` are an inseparable resource-level declaration. The\npayload stays opaque to the host and is validated by the owning App. Component catalogs are optional\nfor `whole-view` resources and required only for `component-catalog` resources.\n\nSchema identities must end in an exact numeric version such as `/1.0` or `/1.2.3`; mutable aliases\n(`latest`, `stable`, `v1`) and version ranges are rejected. Every manifest array, including nested\nJSON arrays in component props, must be dense and carry no additional own properties.\n","readmeFilename":"README.md","_rev":"1-96514afb63463267dc7a334acae34ac4"}