# Botster — how to use (mcp.ai)

Connect your Botster account and use 11 tools for web scraping straight from your AI agent. Connect with your own API key. Botster automates web data collection through configurable bots, job lifecycle management, and structured run results.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_botster?ms=1787293380000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `botster_calculate_bot_cost`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/botster`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/botster/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/botster/calculate/bot/cost` — Calculate the credit price of one intended bot launch using the same input and bot-specific options, without launching the bot or spending credits.
  - body: { input: string|string[], options?: object, bot_slug: string }
- `POST https://api.mcp.ai/api/botster/delete/job` — Permanently delete one Botster job. This destructive action cannot be undone, is not the same as archiving, and may remove access to the job's run history.
  - body: { job_id: string }
- `POST https://api.mcp.ai/api/botster/delete/run` — Permanently delete one Botster data run and its stored results without deleting the entire job. This destructive operation cannot be undone.
  - body: { run_id: string }
- `POST https://api.mcp.ai/api/botster/get/credits` — Return the connected Botster account's available credit balance; use this before launching or restarting credit-consuming work.
- `POST https://api.mcp.ai/api/botster/get/job` — Get one job's status and data-run identifiers required to retrieve run results. The complete provider job object is returned without discarding bot-specific fields.
  - body: { job_id: string }
- `POST https://api.mcp.ai/api/botster/get/run/results` — Return the complete bot-specific JSON for one data run identified from GET_JOB in the results field. The provider's result shape is preserved.
  - body: { run_id: string }
- `POST https://api.mcp.ai/api/botster/launch/bot` — Launch a Botster bot, creating external work that may spend account credits. Use CALCULATE_BOT_COST with the same input and options first when cost matters. Returns launch metadata and normalizes an i
  - body: { input: string|string[], options?: object, webhook?: string, bot_slug: string }
- `POST https://api.mcp.ai/api/botster/list/bots` — List or search bots available to the connected account and return their identifiers for cost calculation and launch.
  - body: { per?: integer, search?: string, next_cursor?: string }
- `POST https://api.mcp.ai/api/botster/list/jobs` — List jobs belonging to the connected Botster account and return job identifiers for inspection or lifecycle actions.
  - body: { per?: integer, next_cursor?: string }
- `POST https://api.mcp.ai/api/botster/restart/job` — Restart an existing Botster job, creating renewed external work that may repeat the bot's effects and spend additional account credits. The renewed job identity may differ from the original; returns a
  - body: { job_id: string }
- `POST https://api.mcp.ai/api/botster/set/job/archived` — Archive a Botster job or restore it from the archive by setting its desired archived state. This reversible action changes organization state but does not delete the job.
  - body: { job_id: string, archived: boolean }

## Example prompts
- "What can I do in Botster?"
- "Show me a summary of my Botster account"

## More
- Page: https://mcp.ai/botster
- Agent spec (llms.txt): https://mcp.ai/botster/llms.txt
- Postman collection: https://mcp.ai/botster/postman.json
