Examples
What the tools look like in practice, from a chat and from the command line.
From a chat
A typical edit runs three tools: find the pipeline, read its stages to get an id, then write. Asking Claude “move the RF coexistence stage in my Sentinel pipeline to 15 August” produces exactly that sequence:
list_pipelines → find "Sentinel", grab its pipeline_id
get_pipeline → find "RF coexistence", grab its stage_id
update_stage → set due_date to 2026-08-15Handshake
Against the endpoint directly, start by confirming the connection:
BASE=https://onetaplabs.com/api/mcp
KEY=YOUR_MCP_API_KEY
# Handshake
curl -s -X POST "$BASE" \
-H "Authorization: Bearer $KEY" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2025-06-18","capabilities":{}}}'
# List the available tools
curl -s -X POST "$BASE" \
-H "Authorization: Bearer $KEY" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'Create a pipeline
curl -s -X POST "$BASE" \
-H "Authorization: Bearer $KEY" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{
"name":"create_pipeline","arguments":{
"name":"Launch campaign",
"overview":"Q3 product launch",
"owner_email":"you@onetaplabs.com",
"stages":[
{"title":"Define brief","goal":"Align on scope",
"priority":"high","dueDate":"2026-07-01"},
{"title":"Produce assets","goal":"Create creatives"}
]}}}'Edit a stage
Move a stage’s deadline and mark it in progress. Only the fields you pass change:
curl -s -X POST "$BASE" \
-H "Authorization: Bearer $KEY" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{
"name":"update_stage","arguments":{
"stage_id":"STAGE_UUID",
"due_date":"2026-08-15",
"status":"in_progress"}}}'