MyCustomerPilotMyCustomerPilot
Get started

Quickstart

Create an agent, give it a tool, and watch it reply — all in the sandbox, before a single WhatsApp message is sent. About five minutes.

Before you start

  • An account and an API key from the dashboard — use a mcp_sk_test_… key here so nothing sends or bills. See Authentication.
  • An HTTPS endpoint the agent can call as a tool (optional for this walk-through).

1. Create an agent

An agent needs a name, a goal, and a persona. The goal is plain language — it’s what the agent is there to do.

create-agent
HTTP
POST https://api.mycustomerpilot.com/v1/agents
Authorization: Bearer mcp_sk_live_…
Content-Type: application/json

{
  "name": "Sales assistant",
  "goal": "Help customers find products and complete a purchase over WhatsApp.",
  "persona": { "tone": "warm", "style": "concise and proactive", "language": "en" }
}

# 201 Created → { "id": "agt_01H…", "status": "active", … }

2. Give it a tool

A tool is one of your endpoints, described so the model knows when to call it. Keep the description action-oriented; the full schema and signing details are in Building tools.

add-tool
HTTP
POST https://api.mycustomerpilot.com/v1/tools
Authorization: Bearer mcp_sk_live_…

{
  "name": "check_stock",
  "description": "Check whether a product is in stock, by SKU.",
  "endpoint_url": "https://your-api.com/stock",
  "endpoint_method": "POST",
  "parameters_schema": { "sku": { "type": "string", "required": true } }
}

3. Test it in the sandbox

The sandbox runs the entire pipeline — retrieval, tool calls, the model — but sends no WhatsApp message and persists nothing. Tool calls are made with a test flag so your endpoint can branch if it wants to.

test-agent
HTTP
POST https://api.mycustomerpilot.com/v1/agents/agt_01H…/test
Authorization: Bearer mcp_sk_live_…

{ "message": "Do you have the blue kettle in stock?" }

# 200 OK — runs the full pipeline, no WhatsApp, nothing persisted
{
  "response": "Yes — the blue kettle is in stock. Want me to set one aside?",
  "tool_calls": [{ "tool": "check_stock", "status": "ok" }],
  "chunks_used": 2,
  "tokens_used": 512,
  "latency_ms": 1840
}
Iterate here, not on WhatsApp
The sandbox is where you tune the goal, persona, and tool descriptions until replies land the way you want — free, instant, and invisible to customers.

4. Connect a number and go live

Connecting a WhatsApp number is done with our team through the dashboard — a Meta pre-flight checks the number and token before anything goes live, so a bad credential fails at setup, not at message time. Once the number is bound to your agent, real customer messages flow through the same pipeline you just tested.

Number onboarding is staff-assisted (for now)
Self-serve number connection (WhatsApp Embedded Signup) is on the roadmap. Today, connecting a number goes through the portal with us — it’s a one-time step per number.

Next steps

  • Building tools — the signed envelope, argument mapping, and importing tools from your existing docs.
  • Customer identity — let tools know which of your customers is asking.