Prokso MCP server in Cursor

Cursor connects remote MCP servers through an mcp.json file and can send custom headers, so the Prokso API key goes right there. It's better to keep the key in an environment variable: Cursor fills it in for you.

1. What you need

  • Cursor with MCP support. It works with three transports, stdio, SSE and Streamable HTTP; the Prokso server uses Streamable HTTP. This guide follows the Cursor MCP documentation as of November 2026.
  • A Prokso API key: dashboard, "Settings" > "API" > "Create key". Copy it right away, it is shown in full only once.
  • Test the key with curl as shown on the "Prokso MCP server" page.

2. Where to add the server

Cursor reads MCP servers from two files:

FileWhere it applies
.cursor/mcp.jsonThis project only (file in the project root)
~/.cursor/mcp.jsonAll projects (file in your home folder)

Create the file you need or add the server to an existing one:

{
  "mcpServers": {
    "prokso": {
      "url": "https://prokso.com/api/v1/mcp",
      "headers": {
        "Authorization": "Bearer ${env:PROKSO_API_KEY}"
      }
    }
  }
}

Cursor replaces ${env:PROKSO_API_KEY} with the value of the environment variable. Variables work in the url, headers, command, args and env fields. Set the variable, for example in ~/.zshrc:

export PROKSO_API_KEY="YOUR_API_KEY"

If Cursor wasn't started from a terminal, it may not see variables from ~/.zshrc. In that case, start Cursor from a terminal where the variable is set, or put the key straight into the global ~/.cursor/mcp.json file: it lives outside the project and won't end up in the repository.

3. Turn it on and check

Servers are turned on and off in the Customize section of the Cursor sidebar. With prokso on, five tools should appear under Available Tools: get_account, get_prices, list_plans, get_plan and get_proxy_lines. A server that is off doesn't load or show up in chat.

If there are no tools, open the Output panel (Cmd+Shift+U on macOS) and select MCP Logs: it shows server initialization, tool calls and errors.

4. First requests in the agent chat

  • "How much traffic is left on my Prokso plans?"
  • "Give me 5 SOCKS5 lines with fixed IPs in Poland for plan 12."
  • "Add a list of 10 proxies from Germany in url format to config.py."
  • "Take a US proxy line and add a request to https://prokso.com/ip to my script to check the IP."

The Cursor agent calls list_plans on its own to find the plan id. Precise geo (city, state, carrier) counts double; ports and parameters are described in the gateway reference.

5. If it doesn't work

  • 401 with Pass your API key in the header in MCP Logs: the PROKSO_API_KEY variable is empty for Cursor. Check it and restart Cursor.
  • 401 with Invalid or revoked API key: the key is wrong or revoked. Check that the header value has Bearer and a space.
  • Cursor offers an OAuth sign-in: the Prokso server doesn't have one. Make sure the Authorization header is in headers of this exact server.
  • 429: the limit of 60 requests per minute per key is exceeded, wait a bit.
  • The server doesn't appear: check the JSON syntax (commas between servers, quotes) and that the file is exactly at .cursor/mcp.json.

Other errors are on the MCP server page, proxy problems in the step-by-step check.

6. Key security

A project .cursor/mcp.json is often committed with the code, so never put the key in it directly, only ${env:PROKSO_API_KEY}. Create a separate key for Cursor: if someone else sees it, revoke just that one in "Settings" > "API". The agent doesn't buy traffic over MCP; automation with payments goes through the REST API, and proxy setup in other apps is in the "Guides" section.

MCP in VS Code →How to use Prokso