MCP: read here, act on the platform
Two connect lines: read these docs keyless, then act on your Startup through the platform MCP, try mode first.
Two lines connect your agent. The first reads these docs without a key; the second acts on your Startup, and every write runs in try mode first.
claude mcp add --transport http salesbuilder-docs https://salesbuilder.dev/mcp
claude mcp add --transport http startup-builder https://api.sb/mcp Pick three Plays for our hours and budget, and show me the first task, as a dry run.
curl -X POST "https://api.sb/leaseline.app/play-mixes/compile?mode=try" \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"startup":"leaseline.app"}'
curl -X POST https://api.sb/leaseline.app/tasks/next \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"import { $ } from 'startup-builder'
await $.PlayMix.compile({ startup: 'leaseline.app' }, { mode: 'try' })
return await $.Task.next() // the first Task
npx startup-builder do PlayMix.compile --json '{"startup":"leaseline.app"}' --try
npx startup-builder do Task.next{
"name": "do",
"arguments": {
"code": "await $.PlayMix.compile({ startup: 'leaseline.app' }, { mode: 'try' })\nreturn await $.Task.next() // the first Task",
"mode": "try"
}
}application/json{
"task": {
"$id": "https: //api.sb/ leaseline.app/ tasks/ task_1",
"$type": "Task",
"status": "pending",
"mode": "try"
},
"action": {
"$id": "https: //api.sb/ leaseline.app/ actions/ action_1",
"operation": "Task.next",
"status": "done"
}
}
sampleMCP
| Tool on salesbuilder.dev/mcp | What it does | Input |
|---|---|---|
search | Finds pages, Plays and refusal codes on this site by keyword. | { query, |
fetch | Returns one page as Markdown by its path, such as /. | { id } |
guides | Returns the guides whose phrasings answer a task, with the calls each runs. | { phrase, |
curl -s https://salesbuilder.dev/mcp -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
curl -s https://salesbuilder.dev/mcp -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"guides","arguments":{"phrase":"my first cold email won’t go out","limit":1}}}' GET and DELETE on it answer 405, and a notification answers 202. It reads; it never acts.
Tool on https: | What it does | Input |
|---|---|---|
search | Finds records, Nouns, Verbs, and docs by keyword, meaning, or filter. | { query, |
fetch | Returns one record, list, or definition by id or path; / returns the types of $. | { id } |
do | Runs a short TypeScript program with the typed $ in scope, as one Action. | { code, |
To act, an agent sends one program to do as { code, first: it waits for the result and stores nothing. The MCP tab of every Run it window on this site is that call.
Compiled, not written: edit its page, then regenerate. Every step runs from a sentence or a line of code. In your words: the CRM words you know, and where each lives here.