generated: '2026-09-11' method: searched source: https://github.com/JOYLINK-LTD/lacuna-toolkit/tree/main/skills/lacuna-music note: >- Lacuna publishes its own Agent Skill — captured verbatim below, re-fetched and confirmed byte-identical on 2026-09-11 — which is rare. The three additional skills are API Evangelist generations that fill the gaps the provider's skill leaves: calling the raw REST operations without an SDK, discovering/choosing between the three agent surfaces, and (new this round) gating on the free GET /v1/me account check before spending credits. Every step in all three is grounded in an operationId verified against openapi/_original/lacuna-music-openapi-original.json. skills: - file: lacuna-music.md name: lacuna-music method: searched source: https://raw.githubusercontent.com/JOYLINK-LTD/lacuna-toolkit/main/skills/lacuna-music/SKILL.md publisher: JOYLINK LTD install: npx skills add JOYLINK-LTD/lacuna-toolkit description: >- Provider-published skill. Routes the agent to the right transport (lacuna-mcp, lacuna-sdk or lacuna-toolkit), documents the generation parameters and model table, the pending/ready/failed lifecycle, credits, and the do-not-retry error rules. api: openapi/_original/lacuna-music-openapi-original.json operations: [createGeneration, getGeneration] - file: lacuna-generate-and-collect.md name: lacuna-generate-and-collect method: generated source: openapi/_original/lacuna-music-openapi-original.json description: >- Submit a generation and collect the audio over raw HTTP — the path the provider's own skill does not cover, for agents outside a Node runtime or running server-side behind the webhook. api: openapi/_original/lacuna-music-openapi-original.json operations: [createGeneration, getGeneration] - file: lacuna-agent-onboarding.md name: lacuna-agent-onboarding method: generated source: well-known/lacuna-well-known.yml description: >- Discover Lacuna from the domain alone via the RFC 9727 api-catalog and auth.md, obtain a credential, and choose between REST, hosted MCP, A2A and the stdio MCP build. api: openapi/_original/lacuna-music-openapi-original.json operations: [createGeneration, getGeneration] - file: lacuna-preflight-and-budget.md name: lacuna-preflight-and-budget method: generated source: openapi/_original/lacuna-music-openapi-original.json + https://www.lacuna.fm/auth.md generated: '2026-09-11' description: >- Gate on the free GET /v1/me account read before spending credits — credential validity, plan eligibility, granted scopes, credit balance, key expiry and the effective rate limits for this key. Written this round because getMe is new to the contract, and because it is the only mitigation available on an API with no idempotency key, no dry run and no reversal: the four error classes an agent would otherwise discover by paying for them are all checkable in advance for free. api: openapi/_original/lacuna-music-openapi-original.json operations: [getMe, createGeneration]