{"openapi":"3.1.0","info":{"title":"Soundlike","version":"0.1.0","description":"Teach an agent to write as one specific person. Learn a voice from samples once, get a voice key, then fetch the brief before drafting and critique before sending. MCP endpoint: https://getsoundlike.com/api/mcp"},"servers":[{"url":"https://getsoundlike.com"}],"components":{"securitySchemes":{"voiceKey":{"type":"http","scheme":"bearer","description":"The voice key as a Bearer token."}}},"paths":{"/api/v1/learn":{"post":{"operationId":"learnVoice","summary":"Learn a voice from samples; returns a voice key, brief and card URL.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","samples"],"properties":{"name":{"type":"string","maxLength":40},"samples":{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":60,"description":"Verbatim samples of the person's writing."}}}}}},"responses":{"200":{"description":"voice_key, profile, brief, card_url, samples_used"}}}},"/api/v1/brief":{"post":{"operationId":"getVoiceBrief","summary":"The writing brief for a voice, optionally tailored to a task. Free and instant.","security":[{"voiceKey":[]},{}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"voice_key":{"type":"string","description":"The voice key from /learn (starts with 'sl1.'). Optional when sent as a Bearer token."},"task":{"type":"string"},"format":{"type":"string","enum":["post","caption","thread","dm","email","comment","bio","script","text","other"]},"length":{"type":"string","enum":["one_line","short","medium","long"]},"platform":{"type":"string"}}}}}},"responses":{"200":{"description":"brief (markdown), name"}}}},"/api/v1/critique":{"post":{"operationId":"critiqueDraft","summary":"Score a draft against the voice, list the tells with fixes, and return a rewrite.","security":[{"voiceKey":[]},{}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["text"],"properties":{"voice_key":{"type":"string","description":"The voice key from /learn (starts with 'sl1.'). Optional when sent as a Bearer token."},"text":{"type":"string","maxLength":12000}}}}}},"responses":{"200":{"description":"score, verdict, tells[], rewrite, name"},"402":{"description":"The free monthly critique allowance for this voice is used up; the error message carries the Pro link."}}}}}}