Docs

Connect Cursor, VS Code & others

Connect Cursor, VS Code, Windsurf or any other MCP client to your site.

On this page

Code editors and other MCP clients connect to your site with an API key. You paste a short configuration into the app, with your site's Server URL and the key. Urmi shows the exact snippet for each app, ready to copy.

Go to Urmi → AI & MCP → Connect a client and pick the app on the left. The MCP server must be on: it is off until an administrator turns it on. See Turn on the MCP server.

Create a key first

Every app on this page uses an API key. On the app's panel, click Create key, choose the permissions and click Create key. The new key is inserted into the snippets on the page, so you can copy them as they are.

The key is shown only once. If you leave the page, the snippets show YOUR_API_KEY again: replace it with your key, or create a new one. See API keys & scopes.

Warning

A key gives access to your site. Keep configuration files that contain a key out of Git and other shared folders. Put them in your user settings rather than in a project.

Cursor

Cursor connects to your site directly.

The Cursor instructions: add an mcpServers entry with the url and an Authorization header to mcp.json, then check the server in Cursor Settings
Connect a client → Cursor
  1. Add the server to mcp.json

    Open ~/.cursor/mcp.json to use your site in all projects, or .cursor/mcp.json inside one project. Add the snippet from Urmi:

    JSONmcp.json
    {
      "mcpServers": {
        "urmi-my-site": {
          "url": "https://example.com/wp-json/urmi/v1/mcp",
          "headers": { "Authorization": "Bearer YOUR_API_KEY" }
        }
      }
    }
  2. Check the connection

    Open Cursor Settings → MCP & Integrations. Your site's server should show a green dot and its list of tools.

Do not commit a project mcp.json that contains a key.

VS Code

VS Code uses your site's tools in GitHub Copilot's agent mode.

The VS Code instructions: an mcp.json entry with type http, the url and an Authorization header
Connect a client → VS Code
  1. Open the MCP configuration

    Run MCP: Open User Configuration from the Command Palette. To use the server only in one workspace, create .vscode/mcp.json there instead.

  2. Add the server

    JSONmcp.json
    {
      "servers": {
        "urmi-my-site": {
          "type": "http",
          "url": "https://example.com/wp-json/urmi/v1/mcp",
          "headers": { "Authorization": "Bearer YOUR_API_KEY" }
        }
      }
    }
  3. Start it

    Click Start above the server entry. Then open Copilot Chat, switch to agent mode and pick the tools under Tools.

Keep keys in the user configuration so they are never committed with a workspace.

Windsurf

Windsurf's Cascade connects to remote servers with a serverUrl.

The Windsurf instructions: open the raw MCP config and add an mcpServers entry with serverUrl and an Authorization header
Connect a client → Windsurf
  1. Open the MCP config

    Open Windsurf Settings → Cascade → MCP servers → View raw config. The file is ~/.codeium/windsurf/mcp_config.json.

  2. Add the server

    JSONmcp_config.json
    {
      "mcpServers": {
        "urmi-my-site": {
          "serverUrl": "https://example.com/wp-json/urmi/v1/mcp",
          "headers": { "Authorization": "Bearer YOUR_API_KEY" }
        }
      }
    }
  3. Refresh

    Refresh the MCP servers list in Cascade.

Any other MCP client

Choose Other clients on the Connect a client tab. It has two methods.

Streamable HTTP

Most current MCP clients can talk to a remote server over Streamable HTTP. Give the client:

  • the Server URL, for example https://example.com/wp-json/urmi/v1/mcp
  • the API key as a bearer token in every request:
Text
Authorization: Bearer YOUR_API_KEY
The Other clients instructions for Streamable HTTP: the Server URL, the Authorization header and the address OAuth clients read their sign-in details from
Connect a client → Other clients → Streamable HTTP

Clients that support OAuth 2.1 can sign in instead of using a key, like the Claude and ChatGPT connectors. They find the sign-in details on their own from the Server URL. Your site must be public and use HTTPS for that.

stdio bridge

Some apps can only start a local program (a "stdio" server) and cannot connect to a remote address. For those, Urmi offers a small bridge that runs on your computer and forwards everything to your site.

The bridge needs Node.js (opens in a new tab) 18.17 or newer on your computer. npx downloads and runs it the first time.

Use this as the server command in your app, with your own Server URL:

Terminal
npx -y @wpurmi/mcp --url https://example.com/wp-json/urmi/v1/mcp

and pass the key in the URMI_MCP_KEY environment variable. In an app that uses the common mcpServers format, that looks like this:

JSON
{
  "mcpServers": {
    "urmi-my-site": {
      "command": "npx",
      "args": ["-y", "@wpurmi/mcp", "--url", "https://example.com/wp-json/urmi/v1/mcp"],
      "env": { "URMI_MCP_KEY": "YOUR_API_KEY" }
    }
  }
}
OptionEnvironment variableWhat it does
--urlURMI_MCP_URLYour site's Server URL. Required.
--keyURMI_MCP_KEYThe API key. Prefer the environment variable, so the key does not show up in process lists.
--header "Name: value"An extra HTTP header, for example for a staging site behind a password. You can repeat it.
--timeoutURMI_MCP_TIMEOUTHow long to wait for your site, in seconds. The default is 120.

For safety, the bridge refuses to send a key over plain http, except to localhost and addresses ending in .test or .local.

If you already use the generic mcp-remote bridge for other servers, it works too (it also needs Node.js):

Terminal
npx -y mcp-remote https://example.com/wp-json/urmi/v1/mcp --header "Authorization: Bearer YOUR_API_KEY"

Local sites

A site on your own computer (for example http://localhost/… or mysite.test) works with every app on this page, because the app runs on the same computer. Only connectors that run on the AI company's servers, such as the Claude app and ChatGPT, need a public HTTPS site.