{"openapi":"3.1.0","info":{"title":"Soundbite API","version":"0.1.0","description":"A fully local short-form audio hook/jingle structure reference: hook memorability principles, jingle/sonic-logo structure templates, rhythm and repetition guidance, duration guidance, earworm science, key/tempo mood suggestions, and an originality checklist.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://soundbite.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/soundbite/docs"},"termsOfService":"https://connectorbay.com/soundbite/terms"},"servers":[{"url":"https://soundbite.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/soundbite/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/hook_principles":{"post":{"operationId":"hook_principles","summary":"What makes a short audio hook memorable: brevity, repetition, rhythm, melodic contour,","description":"What makes a short audio hook memorable: brevity, repetition, rhythm, melodic contour,\n    predictability-with-a-twist, and word/rhythm alignment. Use for \"what makes an audio hook memorable\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"hook_principlesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/jingle_structure_template":{"post":{"operationId":"jingle_structure_template","summary":"One audio-hook format's structure and typical duration range: sonic logo, advertising jingle, podcast","description":"One audio-hook format's structure and typical duration range: sonic logo, advertising jingle, podcast\n    intro/outro, notification sound, or ringtone. Use for \"how should I structure a sonic logo\", \"what's the\n    structure of an advertising jingle\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"jingle_type":{"description":"A jingle/audio-hook format.","examples":["sonic logo"],"minLength":1,"title":"Jingle Type","type":"string"}},"required":["jingle_type"],"title":"jingle_structure_templateArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/jingle_type_list":{"post":{"operationId":"jingle_type_list","summary":"Every audio-hook format this reference covers. Use for \"what jingle formats do you cover\".","description":"Every audio-hook format this reference covers. Use for \"what jingle formats do you cover\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"jingle_type_listArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/rhythm_pattern_guide":{"post":{"operationId":"rhythm_pattern_guide","summary":"Rhythmic building blocks explained in plain language: motif, ostinato, syncopation, call-and-response, and","description":"Rhythmic building blocks explained in plain language: motif, ostinato, syncopation, call-and-response, and\n    simple subdivision, plus guidance for sketching a hook from spoken rhythm. Use for \"what's syncopation\", \"what's\n    an ostinato\", \"how do I come up with a rhythm for a jingle\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"rhythm_pattern_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/repetition_techniques":{"post":{"operationId":"repetition_techniques","summary":"5 ways repetition builds memorability: motif restatement, bookending, brand-name alignment, call-and-response","description":"5 ways repetition builds memorability: motif restatement, bookending, brand-name alignment, call-and-response\n    reinforcement, and cross-campaign consistency. Use for \"how does repetition make a jingle memorable\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"repetition_techniquesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/duration_guide":{"post":{"operationId":"duration_guide","summary":"Recommended duration ranges for 6 use cases: app notification, brand sonic logo, ringtone, podcast","description":"Recommended duration ranges for 6 use cases: app notification, brand sonic logo, ringtone, podcast\n    intro/outro, advertising jingle. Use for \"how long should a podcast intro be\", \"how short should a notification\n    sound be\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"use_case":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A use case; omit to see all.","examples":["ad_jingle"],"title":"Use Case"}},"title":"duration_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/earworm_science_summary":{"post":{"operationId":"earworm_science_summary","summary":"A hedged summary of widely discussed music-psychology tendencies around involuntary musical imagery","description":"A hedged summary of widely discussed music-psychology tendencies around involuntary musical imagery\n    ('earworms'): simplicity, repetition, contour quirks, recency/frequency of exposure, and individual variation.\n    Use for \"why do songs get stuck in your head\", \"what makes a melody an earworm\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"earworm_science_summaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/key_and_tempo_suggestions":{"post":{"operationId":"key_and_tempo_suggestions","summary":"Commonly used Western-music tempo/key associations for a mood: energetic/upbeat, calm/soothing,","description":"Commonly used Western-music tempo/key associations for a mood: energetic/upbeat, calm/soothing,\n    serious/dramatic, playful/quirky, luxurious/premium, urgent/alert. Use for \"what tempo fits an energetic\n    brand\", \"what key suits a calm, soothing sound\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"mood":{"description":"A mood.","examples":["energetic_upbeat"],"minLength":1,"title":"Mood","type":"string"}},"required":["mood"],"title":"key_and_tempo_suggestionsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/originality_checklist":{"post":{"operationId":"originality_checklist","summary":"7 practical steps to avoid unintentionally reproducing an existing melody when writing a new hook or jingle,","description":"7 practical steps to avoid unintentionally reproducing an existing melody when writing a new hook or jingle,\n    including the concept of cryptomnesia. Use for \"how do I make sure my jingle isn't accidentally copying an\n    existing song\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"originality_checklistArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/soundbite_glossary":{"post":{"operationId":"soundbite_glossary","summary":"Definitions of audio-branding terms: sonic logo, motif, ostinato, syncopation, call-and-response, earworm,","description":"Definitions of audio-branding terms: sonic logo, motif, ostinato, syncopation, call-and-response, earworm,\n    audio branding, hook, melodic contour, cryptomnesia. Use for \"what's a sonic logo\", \"what's cryptomnesia\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific term to look up; omit to list all.","title":"Term"}},"title":"soundbite_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}