Cursor

Cursor is a VS Code-based editor with a built-in agent. It can send chat and agent requests to your own OpenAI-compatible endpoint instead of its bundled models.

Cursor is a GUI with no scriptable way to use a custom endpoint, so this page is not re-run by the weekly check.

Configure

  1. Open Cursor Settings and go to the Models tab.
  2. Under API Keys, paste your sk-lr-... token into the OpenAI API Key field.
  3. Turn on Override OpenAI Base URL and enter https://api.lowrouter.ai/v1. Enter it with /v1 and without /chat/completions.
  4. Add each LowRouter model you want with Add model, typing its full ID, such as auto/mistralai/mistral-large-2512.
  5. Pick the model in the chat or agent panel.

How Cursor uses the endpoint

  • Cursor calls the base URL from its own servers, not from your machine. https://api.lowrouter.ai/v1 works; a local or private address does not, and fails with “Access to private networks is forbidden”.
  • The override applies to every OpenAI-format model in Cursor. While it is on, Cursor’s built-in OpenAI models are sent to LowRouter too.
  • Only chat and agent requests use your key. Tab completion, codebase indexing and embeddings always run on Cursor’s own models. Which other features accept a custom model depends on your Cursor plan and version.
  • Cursor ignores custom models in subagents.
  • Cursor sends some requests in the Responses API format. LowRouter serves /v1/responses, so these work.
  • The Verify button only checks that the key is accepted. Send a chat message to test a model.

Picking a model

Agent mode edits files and runs commands through function calling, so pick a model with the function-calling tag. The model browser filtered to them lists every one. Cursor rejects a custom model whose name collides with one of its built-in models; LowRouter’s slashed IDs do not collide.

  • Use a dedicated key. Agent mode can run many requests per task, and a key of its own keeps that spend attributable and revocable on its own.
  • Keep an explicit model ID per task type. An auto/ ID keeps the model fixed but lets LowRouter pick the provider and region, which can change the per-token price between days.

Troubleshooting

  • “Access to private networks is forbidden”: the base URL points at a local or private address. Cursor’s servers cannot reach it.
  • Requests fail with an HTTP/2 or TLS error: turn on HTTP Compatibility Mode in Cursor’s settings.
  • A built-in OpenAI model stopped working: the base URL override is on and sends it to LowRouter under OpenAI’s name for it, which is not a LowRouter model ID. Turn the override off to use it.