{
  "schema": "keel.agent-discovery@1",
  "name": "KEEL Studio",
  "description": "The hosted creator workflow: projects, previews, preparation, releases and review/signing with the user's existing wallet. Desktop is optional.",
  "instructions": "https://studio.onkeel.io/llms.txt",
  "studio": "https://studio.onkeel.io/studio",
  "mcp": {
    "url": "https://studio.onkeel.io/api/mcp",
    "transport": "streamable-http",
    "authentication": {
      "type": "bearer",
      "setupUrl": "https://studio.onkeel.io/studio#agents",
      "header": "Authorization: Bearer ${KEEL_AGENT_TOKEN}",
      "requiresCreatorApproval": true,
      "preferredSetup": {
        "type": "approval-code",
        "localMcpTool": "keel-studio-connect",
        "operations": [
          "start",
          "status",
          "complete"
        ],
        "startUrl": "https://studio.onkeel.io/api/agent/pair",
        "pollUrl": "https://studio.onkeel.io/api/agent/pair/poll",
        "approveUrl": "https://studio.onkeel.io/studio/connect",
        "cli": "pnpm studio:connect --window --workspace <project>",
        "credentialHandling": "SDK privately saves a user-approved scoped grant outside the project, bound to workspace and Studio origin. No key in chat, URLs, MCP output or shell history.",
        "userApprovalRequired": true
      }
    },
    "firstSteps": [
      "initialize",
      "tools/list",
      "keel_whoami",
      "keel_project_modules"
    ],
    "documentation": "https://studio.onkeel.io/docs/mcp"
  },
  "sdk": {
    "package": "@keel/sdk",
    "repository": "https://github.com/keel-web3/keel-sdk",
    "readme": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/README.md",
    "documentation": "https://studio.onkeel.io/docs/sdk",
    "localMcpDocumentation": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/packages/mcp/README.md",
    "creatorReleaseRevision": "66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c",
    "creatorReleaseBranch": "codex/studio-agent-connect",
    "creatorHandoff": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/docs/SEPOLIA_TESTER_HANDOFF.md",
    "networkGuide": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/docs/KEEL_NETWORK_DISCOVERY.md",
    "accessRelease": "https://github.com/keel-web3/keel-sdk/releases/tag/studio-access-audiences-20261006.2"
  },
  "skill": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/skills/fray-keel-agent/SKILL.md",
  "contracts": "https://studio.onkeel.io/docs/contracts",
  "readiness": "https://studio.onkeel.io/api/studio/projects/readiness",
  "defaults": {
    "payloadStorage": "compact",
    "viewer": "registered-keel-verification-shell",
    "preserveOriginalBytes": true,
    "searchPublishedModulesBeforeCreating": true,
    "creatorReviewsDraftsInStudio": true,
    "agentSignsTransactions": false,
    "networkSelection": "public deployment index plus explicit/workspace/environment selection",
    "walletReview": "studio-web",
    "desktopRequired": false,
    "useExistingConnectedWallet": true
  },
  "modules": {
    "configurationProtocol": "keel-module-inputs@1",
    "global": "KEEL_INPUTS",
    "examples": "https://studio.onkeel.io/modules",
    "mcpTool": "keel_configurable_modules",
    "encodedPackageCatalog": "https://studio.onkeel.io/deployments/module-runtime-base90-catalog.json",
    "packageCatalogSourceRevision": "972b62fb83e2cc95604d9d15bb9d8198b7768dd4"
  },
  "artworkControls": {
    "protocol": "keel-collector-actions@1",
    "designer": "https://studio.onkeel.io/studio/actions",
    "schema": "https://studio.onkeel.io/api/collector-actions/schema",
    "documentation": "https://studio.onkeel.io/docs/artwork-controls",
    "mcpTools": [
      "keel_artwork_controls_read",
      "keel_artwork_controls_prepare"
    ],
    "signing": "connected collector wallet only"
  },
  "sepoliaCreator": {
    "chainId": 11155111,
    "instance": "creator-inline-20261005",
    "status": "live-mint-and-browser-verified",
    "manifest": "https://studio.onkeel.io/deployments/creator-inline-20261005/manifest.json",
    "inventory": "https://studio.onkeel.io/deployments/ethereum-sepolia.json",
    "localMcpPreparationTool": "keel-creator-inline-prepare",
    "sdkPreparation": "prepareKeelCreatorInline",
    "shellBoot": {
      "encoding": "base64",
      "compression": "gzip"
    },
    "freshPayload": {
      "encoding": "base90-v1",
      "compression": "brotli-when-smaller",
      "escaping": "parser and deployed COPY reader boundaries"
    },
    "newProjectPublicationGatesRequired": true,
    "verificationRpc": {
      "defaults": [
        "https://ethereum-sepolia-rpc.publicnode.com",
        "https://sepolia.gateway.tenderly.co",
        "https://public.1rpc.io/sepolia"
      ],
      "chainId": 11155111,
      "localMcpCheckTool": "keel-rpc-check",
      "chainValidation": true,
      "rateLimitCooldowns": true,
      "historicalReceiptFailover": true,
      "privateConfigurationFile": ".keel/rpc.json",
      "configurationGuide": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/docs/KEEL_RPC_SETUP.md",
      "exhaustionAction": "ask-user-to-configure-rpc",
      "suggestedProviders": [
        "Alchemy",
        "Infura",
        "QuickNode"
      ],
      "walletRequired": false
    },
    "publicRpcVerification": "https://studio.onkeel.io/deployments/creator-inline-20261005/public-rpc-verification.json",
    "mintingInterface": "local-sdk-and-mcp; browser-mint-page-not-established",
    "deploymentSelection": "legacy Sepolia reference; normal selection comes from networks.index and workspace configuration"
  },
  "networks": {
    "schema": "keel-network-index@1",
    "index": "https://studio.onkeel.io/deployments/networks.json",
    "defaultChainId": 11155111,
    "recordedChainIds": [
      11155111
    ],
    "source": "generated KEEL_DEPLOYMENTS plus networks.config.json; wallet/faucet profiles are separate",
    "sdkSourceRevision": "66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c",
    "workspaceConfig": ".keel/config.json",
    "privateRpcConfig": ".keel/rpc.json",
    "environment": [
      "KEEL_CHAIN_ID",
      "KEEL_DEPLOYMENT_INSTANCE",
      "KEEL_NETWORK_INDEX_URL",
      "KEEL_RPC_URL",
      "KEEL_RPC_URLS"
    ],
    "localMcpDiscoveryTool": "keel-network-discover",
    "localMcpVerificationTool": "keel-network-check",
    "cliDiscovery": "pnpm network:discover",
    "cliVerification": "pnpm network:check",
    "newProjectPublicationGatesRequired": true
  },
  "walletReview": {
    "default": "studio-web",
    "desktopRequired": false,
    "accountConnection": "https://studio.onkeel.io/studio#agents",
    "releaseTools": [
      "keel_workspace",
      "keel_create_draft"
    ],
    "localTools": [
      "keel-studio-stage-project",
      "keel-studio-draft"
    ],
    "reviewLink": "Return the server-issued handoffUrl or release/contract reviewUrl. The user opens it in the website, reviews preparation, and approves with their existing connected wallet.",
    "signer": "connected creator wallet; selected wagmi connector for EVM",
    "agentSigning": false,
    "agentSubmission": false,
    "documentation": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/docs/KEEL_STUDIO_WALLET_REVIEW.md",
    "desktop": "optional local authoring client; no installation or build is required for the website workflow"
  },
  "access": {
    "schema": "https://studio.onkeel.io/api/access/schema",
    "documentation": "https://github.com/keel-web3/keel-sdk/blob/66c83ca6c46fc2e8d1a6c86eb678dab8dfa47c1c/docs/STUDIO_ACCESS.md",
    "scopes": [
      "access:read",
      "access:write"
    ],
    "mcpTools": [
      "keel_access_read",
      "keel_access_update",
      "keel_access_test",
      "keel_access_requests",
      "keel_access_approve",
      "keel_access_providers",
      "keel_access_raffle_status",
      "keel_access_raffle",
      "keel_access_benefit_status",
      "keel_access_benefit_prepare"
    ],
    "localMcpTool": "keel-studio-access",
    "privateKeysRequired": false,
    "audiences": {
      "withinGroup": [
        "all",
        "any"
      ],
      "betweenGroups": [
        "all",
        "any"
      ],
      "purposes": [
        "access",
        "benefit"
      ],
      "benefits": [
        "percentage",
        "buy-get",
        "loyalty"
      ],
      "requiresCouponModule": true
    },
    "providers": {
      "discord": "creator or platform OAuth; bot for reactions",
      "email": "single-use code or verified Discord email",
      "history": "canonical transactions/receipts through bounded provider pagination",
      "tezos": "signed wallet link and pinned RPC/indexer proof",
      "raffle": "frozen snapshot, canonical EVM commitment and signed future drand quicknet pulse"
    },
    "sepoliaCheckout": {
      "chainId": 11155111,
      "instance": "studio-audience-checkout-20261006",
      "controller": "0xEF3306378895a9B49ed16416A8fCb767E79b8595",
      "router": "0x96Cef44bDd8647F42c66d1B82e69334a9b4aDcB3",
      "batchModule": "0xF3F919f9841eAcd166E49EBc42660e1F48491018",
      "status": "receipt-runtime-and-bindings-verified",
      "deploymentProof": "https://studio.onkeel.io/deployments/studio-audience-checkout-20261006/deployment.json",
      "creatorActivationRequired": true,
      "existingDropsRetainController": true
    }
  }
}
