{
  "specVersion": "1.0",
  "version": "1.0.0",
  "name": "Agent-Native Workshop",
  "description": "Three parts: what agent-native means, what is actually happening in each of the seven layers, and a guided build of a production agent-native app. Point your agent at this URL and it can read the whole curriculum, hand you each build step with its commands and done-condition, and check your deployment for you. Built on agent-native-kit.",
  "homepage": "https://agent-native-workshop.vercel.app",
  "entries": [
    {
      "identifier": "workshop_overview",
      "displayName": "workshop_overview",
      "id": "workshop_overview",
      "name": "workshop_overview",
      "description": "START HERE. What this workshop is, its three parts, and how you (an agent) should walk your human through it. Returns the structure plus the URL map for every other surface. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_outline",
      "displayName": "workshop_outline",
      "id": "workshop_outline",
      "name": "workshop_outline",
      "description": "The full outline: three parts, every slide title and its one-line claim, and the seven build steps. Use this to orient before reading anything in full. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_part",
      "displayName": "workshop_part",
      "id": "workshop_part",
      "name": "workshop_part",
      "description": "Read one whole part in full, every slide with its body. Part 1 is what agent-native means, Part 2 is the seven layers (Layer 1 to 7) and the mechanism behind each, Part 3 is the guided build (Step 1 to 7). No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_slide",
      "displayName": "workshop_slide",
      "id": "workshop_slide",
      "name": "workshop_slide",
      "description": "One slide in full by its number, 1 to 18. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_build_step",
      "displayName": "workshop_build_step",
      "id": "workshop_build_step",
      "name": "workshop_build_step",
      "description": "THE GUIDED BUILD. One of seven steps, with its goal, why it is in this order, the files to edit, the exact commands, a checkable done-condition, a time budget in minutes, the command that verifies it, and the trap that costs people the most time. Walk your human through these in order. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_check_target",
      "displayName": "workshop_check_target",
      "id": "workshop_check_target",
      "name": "workshop_check_target",
      "description": "VERIFY YOUR HUMAN'S BUILD. Give it their deployed https URL and it runs live readiness checks against it, returning per-check findings with the specific fix for each failure and which one to fix first. Use this after every build step. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_board",
      "displayName": "workshop_board",
      "id": "workshop_board",
      "name": "workshop_board",
      "description": "Who is in the room and how far each attendee has got. This is what is on the projector. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_report_problem",
      "displayName": "workshop_report_problem",
      "id": "workshop_report_problem",
      "name": "workshop_report_problem",
      "description": "REPORT A PROBLEM. If anything in this workshop is wrong, missing, out of date or confusing, say so here: a step that did not work, two files that disagree, an instruction you could not follow. It goes to the facilitator and is how this workshop gets fixed. Say what you tried and what you expected. Nothing you send is made public. No token required.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": false
    },
    {
      "identifier": "workshop_register",
      "displayName": "workshop_register",
      "id": "workshop_register",
      "name": "workshop_register",
      "description": "Register your human in the room and optionally record the URL they are building. Puts them on the board. Needs a token with scope progress:write.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": true,
      "scope": "progress:write"
    },
    {
      "identifier": "workshop_complete_step",
      "displayName": "workshop_complete_step",
      "id": "workshop_complete_step",
      "name": "workshop_complete_step",
      "description": "Mark a build step complete for your human. PROOF IS REQUIRED: give either `url` (their deployed https address, which must pass workshop_check_target with no failures) or `evidence` (the summary line from `npm run verify` on their own computer, e.g. \"PASS 40 WARN 1 FAIL 0\"). With neither, or with a failing check, the step is refused. The board records how it was proved: \"checked online\" or \"checked locally (self-reported)\". Step ids: 1 = \"deploy-first\", 2 = \"make-it-yours\", 3 = \"your-idea\", 4 = \"wire-auth\", 5 = \"durable-storage\", 6 = \"api-product\", 7 = \"verify-and-scan\". The step number (1 to 7) also works. Needs a token with scope progress:write.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": true,
      "scope": "progress:write"
    },
    {
      "identifier": "workshop_ask",
      "displayName": "workshop_ask",
      "id": "workshop_ask",
      "name": "workshop_ask",
      "description": "Leave a question for the facilitator. It appears on the room board, so a question asked here gets answered out loud without anyone raising a hand. Needs a token with scope progress:write.",
      "type": "tool",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth_required": true,
      "scope": "progress:write"
    }
  ],
  "capabilities": [
    {
      "id": "workshop_overview",
      "name": "workshop_overview",
      "description": "START HERE. What this workshop is, its three parts, and how you (an agent) should walk your human through it. Returns the structure plus the URL map for every other surface. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_outline",
      "name": "workshop_outline",
      "description": "The full outline: three parts, every slide title and its one-line claim, and the seven build steps. Use this to orient before reading anything in full. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_part",
      "name": "workshop_part",
      "description": "Read one whole part in full, every slide with its body. Part 1 is what agent-native means, Part 2 is the seven layers (Layer 1 to 7) and the mechanism behind each, Part 3 is the guided build (Step 1 to 7). No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_slide",
      "name": "workshop_slide",
      "description": "One slide in full by its number, 1 to 18. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_build_step",
      "name": "workshop_build_step",
      "description": "THE GUIDED BUILD. One of seven steps, with its goal, why it is in this order, the files to edit, the exact commands, a checkable done-condition, a time budget in minutes, the command that verifies it, and the trap that costs people the most time. Walk your human through these in order. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_check_target",
      "name": "workshop_check_target",
      "description": "VERIFY YOUR HUMAN'S BUILD. Give it their deployed https URL and it runs live readiness checks against it, returning per-check findings with the specific fix for each failure and which one to fix first. Use this after every build step. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_board",
      "name": "workshop_board",
      "description": "Who is in the room and how far each attendee has got. This is what is on the projector. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_report_problem",
      "name": "workshop_report_problem",
      "description": "REPORT A PROBLEM. If anything in this workshop is wrong, missing, out of date or confusing, say so here: a step that did not work, two files that disagree, an instruction you could not follow. It goes to the facilitator and is how this workshop gets fixed. Say what you tried and what you expected. Nothing you send is made public. No token required.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": false
      }
    },
    {
      "id": "workshop_register",
      "name": "workshop_register",
      "description": "Register your human in the room and optionally record the URL they are building. Puts them on the board. Needs a token with scope progress:write.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": true,
        "scope": "progress:write"
      }
    },
    {
      "id": "workshop_complete_step",
      "name": "workshop_complete_step",
      "description": "Mark a build step complete for your human. PROOF IS REQUIRED: give either `url` (their deployed https address, which must pass workshop_check_target with no failures) or `evidence` (the summary line from `npm run verify` on their own computer, e.g. \"PASS 40 WARN 1 FAIL 0\"). With neither, or with a failing check, the step is refused. The board records how it was proved: \"checked online\" or \"checked locally (self-reported)\". Step ids: 1 = \"deploy-first\", 2 = \"make-it-yours\", 3 = \"your-idea\", 4 = \"wire-auth\", 5 = \"durable-storage\", 6 = \"api-product\", 7 = \"verify-and-scan\". The step number (1 to 7) also works. Needs a token with scope progress:write.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": true,
        "scope": "progress:write"
      }
    },
    {
      "id": "workshop_ask",
      "name": "workshop_ask",
      "description": "Leave a question for the facilitator. It appears on the room board, so a question asked here gets answered out loud without anyone raising a hand. Needs a token with scope progress:write.",
      "interface": "mcp",
      "endpoint": "https://agent-native-workshop.vercel.app/api/mcp",
      "auth": {
        "required": true,
        "scope": "progress:write"
      }
    }
  ],
  "interfaces": [
    {
      "type": "mcp",
      "url": "https://agent-native-workshop.vercel.app/api/mcp",
      "transport": "streamable-http"
    },
    {
      "type": "a2a",
      "url": "https://agent-native-workshop.vercel.app/api/a2a",
      "card": "https://agent-native-workshop.vercel.app/.well-known/agent-card.json"
    },
    {
      "type": "rest",
      "url": "https://agent-native-workshop.vercel.app/api/v1",
      "openapi": "https://agent-native-workshop.vercel.app/openapi.json"
    }
  ],
  "anonymous_capabilities": [
    "workshop_overview",
    "workshop_outline",
    "workshop_part",
    "workshop_slide",
    "workshop_build_step",
    "workshop_check_target",
    "workshop_board",
    "workshop_report_problem"
  ],
  "auth": {
    "type": "oauth2-device-code",
    "metadata": "https://agent-native-workshop.vercel.app/.well-known/oauth-authorization-server",
    "documentation": "https://agent-native-workshop.vercel.app/auth.md"
  },
  "pricing": {
    "model": "free",
    "document": "https://agent-native-workshop.vercel.app/pricing.md"
  }
}