Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"name": "context-dev",
"displayName": "Context.dev",
"version": "2.3.0",
"description": "Search, scrape, crawl, extract, parse, monitor, and process the live web with Context.dev.",
"version": "2.4.0",
"description": "Search, scrape, crawl, extract, parse, monitor, inspect usage, and process the live web with Context.dev.",
"author": {
"name": "Context.dev",
"email": "hello@context.dev"
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Context.dev for Cursor

The official [Context.dev](https://context.dev) plugin for Cursor. Give Cursor reliable access to the live web: search, company news, scraping, crawling, structured extraction, document parsing, brand intelligence, screenshots, recurring monitors, and large asynchronous batches.
The official [Context.dev](https://context.dev) plugin for Cursor. Give Cursor reliable access to the live web: search, company news, scraping, crawling, structured extraction, document parsing, brand intelligence, screenshots, recurring monitors, account usage, and large asynchronous batches.

## Install and connect

Expand Down Expand Up @@ -34,7 +34,7 @@ Cursor automatically selects the appropriate Context.dev tool. Tool calls requir

| Component | What it provides |
| --- | --- |
| MCP server | The production Context.dev MCP with 40 direct, typed tools and OAuth |
| MCP server | The production Context.dev MCP with 42 direct, typed tools and OAuth |
| Skills | Focused MCP workflows, direct API guidance, Cursor connection help, and Logo Link integration |
| Commands | `/brand-colors`, `/scrape-url`, `/search-web`, and `/extract-web-data` |
| Rules | Routes live-web tasks to the right Context.dev tool and keeps credentials out of client code |
Expand Down Expand Up @@ -65,7 +65,7 @@ Cursor automatically selects the appropriate Context.dev tool. Tool calls requir
| Batches | `submit-batch`, `list-batches`, `get-batch`, `get-batch-results`, `cancel-batch`, `delete-batch` |
| Monitors | `create-monitor`, `list-monitors`, `get-monitor`, `update-monitor`, `delete-monitor`, `get-monitor-limits`, `list-monitor-credit-usage`, `run-monitor-now`, `list-monitor-runs`, `get-monitor-run`, `list-account-runs`, `list-monitor-changes`, `get-change`, `list-changes`, `rotate-monitor-webhook-secret` |
| Webhooks | `list-webhook-deliveries`, `get-webhook-delivery`, `list-webhook-delivery-attempts`, `retry-webhook-delivery` |
| Account and feedback | `list-logs`, `get-log`, `submit-feedback` |
| Account and feedback | `get-usage`, `get-usage-history`, `list-logs`, `get-log`, `submit-feedback` |

For a known page, use `web-scrape` with `formats: { markdown: true }`. Use `web-search` when the URL is unknown, `web-crawl` for a focused multi-page request, and `submit-batch` for up to 25,000 URLs or a large asynchronous crawl.

Expand Down
3 changes: 2 additions & 1 deletion rules/prefer-context-dev-mcp.mdc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
description: Use the Context.dev MCP for live web search, company news, scraping, extraction, parsing, brand data, monitoring, and batches
description: Use the Context.dev MCP for live web search, company news, scraping, extraction, parsing, brand data, account usage, monitoring, and batches
alwaysApply: false
---

Expand All @@ -18,6 +18,7 @@ Choose the narrowest direct tool:
- Design system and fonts: `web-styleguide`; rendered page: `web-scrape` with `formats: { screenshot: true }`
- Large asynchronous work: `submit-batch`, then `get-batch` and `get-batch-results`
- Recurring change detection: the monitor tools
- Current credit balance and next refill: `get-usage`; usage over time: `get-usage-history`

Do not claim that MCP exposes endpoints absent from its tool list. Prefer bare domains where a tool asks for a domain and full `https://` URLs where a tool asks for a URL. Preserve source URLs and distinguish sourced facts from inference.

Expand Down
2 changes: 1 addition & 1 deletion skills/connect-context-dev/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The agent should call `web-scrape` with `formats: { markdown: true }`. A success
| 401 or authentication required | Disconnect the server, reconnect it, and complete OAuth again |
| Browser flow does not open | Open the server details and select Authenticate manually |
| Tools remain unavailable after OAuth | Reload the Cursor window and re-enable the server |
| Account has insufficient credits | Review usage in the Context.dev dashboard; do not repeatedly retry |
| Account has insufficient credits | Use `get-usage` to check the balance and next refill; use `get-usage-history` for recent consumption; do not repeatedly retry |

Never ask the user to paste an OAuth token or private API key into chat.

Expand Down
10 changes: 5 additions & 5 deletions skills/context-dev/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ description: Build application code directly against the Context.dev REST API or
license: MIT
metadata:
author: context.dev
version: "5.2"
last_verified: "2026-09-26"
version: "5.3"
last_verified: "2026-09-27"
---

# Context.dev integration guide
Expand Down Expand Up @@ -139,9 +139,9 @@ An uncached domain or email lookup with `behavior: "fail"` and `timeoutOpts.mill

| Operation | Credits |
| --- | --- |
| `POST /web/scrape` | 1, or 2 with `sharedParams.actions`. Highlights +1 when passages are returned; JSON +4 on success; product +1 on success or a missing page; product AI fallback +6 when used; PDF OCR +1 per recovered page on a fresh fetch. 0 when every output fails, except a target 404, which charges the base (+1 with product). |
| `POST /web/scrape` | 1, or 2 with `sharedParams.actions`. Highlights +1 when passages are returned; JSON +4 on success; product +1 on success or a missing page; PDF OCR +1 per recovered page on a fresh fetch. 0 when every output fails, except a target 404, which charges the base (+1 with product). |
| `GET /web/urls` | 1, or 2 with `search` |
| `POST /web/crawl` | 1 per page; rate-limit weight 10 |
| `POST /web/crawl` | 1 per page; rate-limit weight 10 on per-minute plans |
| `POST /web/search` | 1 per 10 results; Markdown and highlights each add 1 per 10 results when returned |
| `POST /web/answers` | 10 (`fast`) or 100 (`ultra`, the default), charged only on success |
| `POST /parse` | 1, plus 1 per OCR-recovered page |
Expand Down Expand Up @@ -170,7 +170,7 @@ Inspect both the HTTP status and `error_code` for request errors. Scrape also re
| `200` with a failed Scrape output | Retrieval, parsing, actions, selectors, or output limits prevented that output from completing | Preserve successful outputs and fix the target or options before retrying the failed output. Oversized outputs have `success: false` and `data: null`. |
| `413`, `415` | Content too large (such as a Parse upload over 50 MiB) or unsupported, on operations that define these errors | Use a smaller or supported input. Scrape marks such outputs as failed instead. |
| `422` | An operation-specific input restriction, such as a free email domain or a Brand timeout that is too low | Change the input or options; do not retry unchanged. |
| `429` | Rate limit for this API key | Honor `Retry-After`; retry with jittered, bounded backoff. |
| `429` | Organization concurrency limit, or the API key's per-minute limit on older plans | Honor `Retry-After`; keep parallel calls within the concurrency limit and retry with jittered, bounded backoff. |
| `500`, `502`, `503` | Transient failure: a service error, an incomplete browser capture, or no browser capacity | Retry with jittered, bounded backoff, then surface a fallback. |

Do not retry validation, permission, no-match, content-size, or unsupported-media failures unchanged. The SDKs already retry twice; account for that before adding another retry layer. See [Troubleshooting](https://docs.context.dev/optimization/troubleshooting) and [Rate limits](https://docs.context.dev/optimization/rate-limits) for operation-specific behavior.
Expand Down
Loading