{
  "version": "1.0.0",
  "kind": "olonjs-page-mcp-manifest",
  "generatedAt": "2026-08-10T19:12:28.731Z",
  "slug": "work/typebridge-api",
  "title": "Project case study — Andrew Linh",
  "description": "Detailed case study covering context, problem, architecture decisions, measurable results, and technology stack.",
  "contractHref": "/schemas/work/typebridge-api.schema.json",
  "transport": {
    "kind": "window-message",
    "requestType": "olonjs:webmcp:tool-call",
    "resultType": "olonjs:webmcp:tool-result",
    "target": "window"
  },
  "capabilities": {
    "resources": [
      {
        "uri": "olon://pages/work/typebridge-api",
        "name": "Project case study — Andrew Linh Data",
        "mimeType": "application/json",
        "description": "Structured content for the work/typebridge-api page."
      },
      {
        "uri": "olon://pages",
        "name": "Site Map",
        "mimeType": "application/json",
        "description": "Structured content for the map of this site"
      }
    ]
  },
  "sectionTypes": [
    "header",
    "footer",
    "project-detail"
  ],
  "sectionInstances": [
    {
      "id": "global-header",
      "type": "header",
      "scope": "global",
      "label": "header"
    },
    {
      "id": "global-footer",
      "type": "footer",
      "scope": "global",
      "label": "footer"
    },
    {
      "id": "project-detail-1",
      "type": "project-detail",
      "scope": "local",
      "label": "project-detail"
    }
  ],
  "tools": [
    {
      "name": "update-section",
      "description": "Update a section field in the Studio draft. Does not persist — call save when all updates are complete. Use sectionType to select the matching schema from sectionSchemas."
    },
    {
      "name": "save",
      "description": "Persist all pending draft changes using the active save mode (local file, hot save, or save2repo). Call once after all update-section calls are complete."
    }
  ]
}
