MCP Quickstart
Connect ToolYour to Cursor, Claude Desktop, or custom AI agents via MCP.
Connect API-backed tools only to any MCP client through ToolYour’s remote MCP harness: plan → run → verify until pass. Website-only tools are not exposed.
Related: TypeScript SDK · SDK Tool Map · MCP discovery · Playbook catalog · SEO agent · Ship gate · Security audit
Endpoint
https://api.toolyour.com/mcpSSE (default for Cursor): GET https://api.toolyour.com/mcp
Streamable HTTP (when the client supports it): https://api.toolyour.com/mcp/http
Authentication
X-Api-Key: ty_your_key_hereCreate keys in the ToolYour dashboard.
Canonical agent loop
1. plan_task(goal) → free plan + credit estimate
2. solve_task(goal, compact) → jobReport (default; no duplicated steps)
3. (harness applies fixes)
4. verify_task(goal, baseline) → score/finding deltas only
5. fetch_payload(dataRefId) → only if you need full raw detailOr run a skill in one step: run_playbook(skillId, input).
Cursor / Claude config
{
"mcpServers": {
"toolyour": {
"url": "https://api.toolyour.com/mcp",
"headers": {
"X-Api-Key": "ty_YOUR_KEY"
}
}
}
}npm install @toolyour/sdkimport { toolYourMcpServerConfigJson } from "@toolyour/sdk/mcp";
console.log(toolYourMcpServerConfigJson({ apiKey: process.env.TOOLYOUR_API_KEY! }));solve_task
Describe the goal in plain language. The server picks a workflow or tool (fuzzy matching + confidence gating). Ambiguous goals return status: "suggest" (free).
- Default
responseMode:compact(jobReport without duplicatedsteps) responseMode: "full"— include raw step payloadsresponseMode: "dataRef"— compact + TTL store; retrieve withfetch_payloadasync: true— return{ status: "accepted", runId }immediately; always pollget_run. Whenstatusiscompleted/partial/error, also readresultStatus(andresult.status) — e.g.suggest,need_input,verified— runcompletedonly means the job finished, not that routing succeeded. OptionalREDIS_URLon MCP enables cross-replicaget_run. An optional dashboard webhook (mcp.job.finished) is best-effort only — unset or failing webhooks never break the job.- On
status: "suggest"/"need_input", readhint,nextActions, andexampleGoals/exampleInput— then re-call with a clearer goal or missing fields (do not invent operationIds). - Local
input.html/input.text: free analysis unlessenhance: true
Example: SEO audit for https://example.com
verify_task
Re-run the same goal and return deltas vs a baseline. Baseline may be:
- a prior
solve_taskresult verify_task.afterfrom an earlier verify- a
get_runpoll payload (uses nestedresult) - a raw
jobReport
Supports async: true (poll get_run the same way). Fresh-run failures propagate as status: error|partial|suggest|… instead of falsely claiming verified.
Delta contract (harness-facing): delta.status, delta.scoreDeltas, delta.newFindings / resolvedFindings, plus:
delta.remainingFindings— open findings on the fresh rundelta.remainingFixes— rankedhowToFix/ prioritized actions agents should applydelta.nextActions— short ordered labels for the host loopdelta.gate—pass|fail|unknown(fail if high-severity findings or poor scores remain)
Host agents should apply nextActions, then call verify_task again until gate === "pass" (or accept residual medium/low findings by policy).
SDK helper: @toolyour/sdk (0.1.2+) exports verifyUntilPass from @toolyour/sdk/mcp for the same loop in Node/CI. CI can also run the MCP package script scripts/ci-ship-gate.mjs (see CI-AGENT-LOOP.md).
See also: MCP repo docs HARNESS-MIGRATION.md and CI-AGENT-LOOP.md.
Other meta-tools
| Tool | Bills? | Purpose |
|---|---|---|
plan_task | Free | Plan + credit estimate |
run_playbook | Like workflow | Skill → mapped workflow |
verify_task | Like solve_task | Delta vs baseline (optional async) |
discover_tools | Free | Search catalog |
get_tool_schema | Free | Schema for one tool |
invoke_tool | Yes | Direct operationId |
fetch_payload | Free | Full truncated payload |
get_run | Free | Poll async runId (read resultStatus) |
list_skills / load_skill | Free | Playbooks |
run_workflow | Yes | Named workflow id |
Quota
Execution shares REST monthly credits. Free: plan_task, catalog browse, suggestions without execution, fetch_payload, get_run, local content without enhance.
See Usage & plans.