Integration · Windsurf (Devin Desktop)
Connect Windsurf to Google Search Console
4 steps · about 5 minutes
By the GSC PAP team · Updated
Windsurf is now called Devin Desktop. Cognition renamed it in June 2026, and its new Devin Local agent replaced Cascade as the default agent for new tabs. Both agents can use remote MCP servers, but they read their MCP config from different files.
This guide sets up Devin Local first, then covers the legacy Cascade agent. The gsc-pap block is the same for both; only the file changes.
How to connect Google Search Console to Windsurf
- 1
Sign in to GSC PAP and copy your token
Go to gscpap.com and click "Sign in with Google." Approve the read-only access it asks for. The connect page then shows your bearer token once, so copy it now. If you lose it, create a new one at app.gscpap.com/account/tokens; your other tokens keep working.
- 2
Add gsc-pap to the Devin Local config
Devin Local reads MCP servers from the Devin CLI config files. For a server that works in every project, open or create ~/.config/devin/mcp_config.json (on Windows, %APPDATA%\devin\mcp_config.json) and add the block below with your token in place of YOUR_TOKEN. If the file already has an mcpServers object, add only the gsc-pap entry to it. Older builds kept mcpServers in ~/.config/devin/config.json; current builds move those entries into mcp_config.json automatically.
json{ "mcpServers": { "gsc-pap": { "url": "https://mcp.gscpap.com/mcp", "headers": { "Authorization": "Bearer YOUR_TOKEN" } } } } - 3
Using the legacy Cascade agent? Add it there too
Cascade reads a different file: ~/.codeium/windsurf/mcp_config.json. Add the same gsc-pap block there; Cascade accepts either url or serverUrl for remote servers. You can also reach Cascade's MCP list from the MCPs icon at the top right of the Cascade panel, or from Devin Settings > Cascade > MCP Servers. Skip this step if you only use Devin Local.
- 4
Open a new agent tab and ask
Start a new Devin Local session and ask: "Use the gsc-pap MCP server. Show me my top 10 queries by clicks last week." Devin Local asks for approval before it calls any MCP tool; you can allow a single tool or every gsc-pap tool, for this session or permanently. To confirm the server loaded, choose Open customizations from the new-tab menu in an agent space, which lists the MCP servers the session has loaded.
Windsurf (Devin Desktop) MCP setup: common issues
- ·A tool call that fails with "Missing or invalid bearer token" means the token is wrong or was revoked. Create a new one at app.gscpap.com/account/tokens and update the config file.
- ·Cascade can use at most 100 tools at once across all MCP servers. If you run several servers, turn off the tools you do not need on each server's settings page.
- ·For Cascade on Enterprise plans, MCP has to be turned on in settings first, and team admins can restrict which servers are allowed. An allowlist entry must match the server key, gsc-pap, exactly.
- ·Cascade's mcp_config.json can read the token from an environment variable: write the header value as "Bearer ${env:GSC_PAP_TOKEN}".
Frequently asked questions
Do I need Google Cloud credentials to connect Windsurf to Search Console?
No. You do not create a Google Cloud project, enable the Search Console API, or handle an OAuth JSON file. Sign in with Google at gscpap.com, copy the bearer token, and put it in the Authorization header of the gsc-pap entry.
Is Windsurf the same as Devin Desktop?
Yes. Cognition renamed Windsurf to Devin Desktop in June 2026 through an automatic update, and your Windsurf settings carried over. The default agent is now Devin Local, which reads MCP servers from ~/.config/devin/mcp_config.json. The older Cascade agent reads ~/.codeium/windsurf/mcp_config.json.
Is GSC PAP free?
Yes, during the public preview. You get every tool across Search Console, GA4 and PageSpeed Insights with no credit card and no trial clock. The only caps are 60 tool calls per minute and 1,000 per hour per user.
Other integrations
All integrationsClaude Desktop
Connect Claude Desktop to Google Search Console without creating a Google Cloud project. Sign in with Google, paste one config block, restart Claude.
Cursor
Connect Google Search Console to Cursor through a hosted MCP server. Sign in with Google, paste one token into mcp.json, and skip the Google Cloud project.
Claude Code
Add Google Search Console to Claude Code with one claude mcp add command. Hosted and read-only: no Google Cloud project, no OAuth credentials, no Python.
Codex CLI (OpenAI)
Add Google Search Console, GA4 and PageSpeed data to OpenAI's Codex CLI with one TOML block and a bearer token. You never create a Google Cloud project.
VS Code (GitHub Copilot)
Connect Google Search Console to GitHub Copilot in VS Code with one .vscode/mcp.json entry, then ask agent mode about GSC. You skip Google Cloud setup.
Gemini CLI (Google)
Query Google Search Console (GSC) from your terminal with Gemini CLI. Register GSC PAP as an MCP server in settings.json, with no Google Cloud project.
Zed Editor
Bring Google Search Console into Zed's AI assistant as an MCP context server. You add one settings.json block and a token, with no Google Cloud setup.
JetBrains IDEs
Connect Google Search Console to IntelliJ, PyCharm, WebStorm and other JetBrains IDEs via AI Assistant's MCP settings, without a Google Cloud project.
Continue (extension)
Continue MCP setup for Google Search Console: add one mcpServers entry with a bearer token in VS Code or JetBrains. You do not need a Google Cloud project.
Claude.ai (browser)
Add Google Search Console to Claude.ai as a custom connector. Paste one URL and approve access. No token to copy, no config file, no Google Cloud project.
Direct HTTP (curl, custom agents)
Call the GSC PAP MCP server from curl or your own agent. It is JSON-RPC over HTTP with a bearer token, so you need no MCP client or Google Cloud project.
opencode
Add Google Search Console to opencode as a remote MCP server. One config block with your token, no Google Cloud project, no local server to run.
Cline
Add Google Search Console to Cline in VS Code or the Cline CLI as a remote MCP server. One token, no Google Cloud project, read-only access.
Warp
Add Google Search Console to Warp's agent as a remote MCP server. Paste one JSON block with your token, press Start, and ask about your traffic in the terminal.
LM Studio
Give a local model your Search Console data. Add GSC PAP to LM Studio's mcp.json as a remote server, with one token and no Google Cloud project.
ChatGPT
Add Google Search Console to ChatGPT as a custom MCP server. What the setup looks like, and the plan requirement that decides whether you can do it at all.
Goose
Add Google Search Console to Goose as a streamable_http extension. One block in config.yaml with your token, no Google Cloud project, read-only access.
Google Antigravity
Add Search Console to Google Antigravity as a custom MCP server. It handles dynamic client registration, so the setup is a URL and a sign-in, with no token.
Roo Code
Add Google Search Console to Roo Code in VS Code as a streamable-http MCP server. One block with your token, no Google Cloud project, read-only.
Kilo Code
Add Google Search Console to Kilo Code as a remote MCP server. It can negotiate OAuth for you, or take a bearer token. No Google Cloud project either way.
Amp
Add Google Search Console to Amp as a remote MCP server, in settings or with one CLI command. No Google Cloud project, read-only scopes.
Kiro
Add Google Search Console to Kiro as a remote MCP server. One entry in mcp.json, the token read from an approved environment variable, read-only access.
Raycast
Add Google Search Console to Raycast AI as an HTTP MCP server. Dynamic OAuth means no token to paste, and HTTP servers work on Raycast for iOS too.
GitHub Copilot CLI
Add Google Search Console to GitHub Copilot CLI with one command or one JSON entry. Remote HTTP transport, your token in a header, read-only access.
n8n
Give an n8n AI Agent your Search Console data through the MCP Client Tool node, and schedule the SEO report you keep meaning to write.
LibreChat
Add GSC PAP to librechat.yaml as a streamable-http MCP server, and give every user on your install their own Search Console access rather than a shared one.