All integrations

Integration · Goose

Connect Goose to Google Search Console

5 steps · about 5 minutes

By the GSC PAP team · Updated

Goose is an open-source agent that does work on your machine, and its capabilities come from extensions built on the Model Context Protocol. GSC PAP is a remote MCP server, so in Goose's vocabulary it is a streamable_http extension: a URL plus a header, no process for Goose to start.

Added that way, the agent can read your Search Console clicks, impressions, CTR and average position, your GA4 sessions and conversions, and PageSpeed field data, all read-only.

This guide edits config.yaml directly, because that is the shape Goose's configuration reference documents. If you prefer the interactive route, goose configure can add extensions too.

How to connect Google Search Console to Goose

  1. 1

    Sign in to GSC PAP and copy your token

    Go to gscpap.com, click "Sign in with Google" and approve the read-only access. Choose which sites to authorize, then copy the bearer token the connect page shows once. More tokens, each scoped to a subset of your sites, are available at app.gscpap.com/account/tokens.

  2. 2

    Open Goose's config file

    Goose keeps its settings in YAML. config.yaml holds the provider, the model and the extensions.

    shell
    # macOS, Linux
    ~/.config/goose/config.yaml
    
    # Windows
    %APPDATA%\Block\goose\config\config.yaml
  3. 3

    Add GSC PAP as a streamable_http extension

    Add the block below under the existing extensions key, next to developer and the other built-ins, and replace YOUR_TOKEN with your token. Note the field names: the URL goes in uri, not url, and the type must be streamable_http.

    yaml
    extensions:
      gsc-pap:
        type: streamable_http
        name: gsc-pap
        enabled: true
        uri: "https://mcp.gscpap.com/mcp"
        headers:
          Authorization: "Bearer YOUR_TOKEN"
        env_keys: []
        envs: {}
        timeout: 300
  4. 4

    Optional: load only the tools you need

    GSC PAP exposes 36 tools, and every tool description costs context in each session. Goose can filter the list per extension with available_tools: name the ones you want and only those load. Leave it out or empty to load all of them. A reporting setup rarely needs more than a handful.

    yaml
        available_tools:
          - list_sites
          - search_analytics_query
          - compare_periods
          - find_quick_wins
          - find_content_decay
  5. 5

    Start a session and ask

    Open a Goose session and ask: "Using gsc-pap, list my Search Console sites, then show the top 10 queries by clicks for the last 28 days." The first call is list_sites, because every other tool needs the exact property URL that returns.

Goose extension setup: common issues

  • ·The key is uri, not url. A remote extension with url is silently incomplete and will not connect.
  • ·SSE is not supported. If you are migrating an older extension that used it, change the type to streamable_http.
  • ·Keep the token out of a config file you sync or share. Goose has env_keys and envs on the extension for exactly that, and secrets.yaml for file-based secret storage.
  • ·"Missing or invalid bearer token" is a token problem. Mint a new one at app.gscpap.com/account/tokens; your other tokens keep working.
  • ·Goose runs autonomously by default. That is worth knowing in general, though nothing GSC PAP exposes can change your Search Console property: its Google scopes are read-only.

Frequently asked questions

How do I add a remote MCP server to Goose?

As an extension with type streamable_http in ~/.config/goose/config.yaml. The entry takes a uri for the endpoint and a headers map for authentication, plus enabled, name and timeout. Goose supports builtin, platform, stdio and streamable_http extension types; SSE is no longer supported.

Where is Goose's config file?

~/.config/goose/config.yaml on macOS and Linux, and %APPDATA%\Block\goose\config\config.yaml on Windows. Alongside it Goose keeps permission.yaml for tool permissions and secrets.yaml when it stores secrets in files.

Can I limit which tools an extension exposes in Goose?

Yes, with available_tools on the extension. List the tool names you want and only those load, which keeps the token cost of a session down. Empty or absent means all tools load.

Do I need a Google Cloud project to use Search Console in Goose?

No. GSC PAP is hosted and registered its OAuth client once for everyone, so you sign in with Google and paste one config block. The Cloud project, OAuth client and credentials file belong to the self-hosted route.

Other integrations

All integrations

Claude Desktop

Connect Claude Desktop to Google Search Console without creating a Google Cloud project. Sign in with Google, paste one config block, restart Claude.

6 steps · 6 min read

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.

5 steps · 5 min read

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.

3 steps · 3 min read

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.

4 steps · 4 min read

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.

4 steps · 4 min read

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.

5 steps · 5 min read

Windsurf (Devin Desktop)

Give Windsurf, now Devin Desktop, your Google Search Console data. Add GSC PAP as a remote MCP server with one bearer token and no Google Cloud project.

4 steps · 5 min read

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.

3 steps · 4 min read

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.

5 steps · 5 min read

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.

4 steps · 4 min read

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.

3 steps · 3 min read

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.

4 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 4 min read

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.

5 steps · 5 min read

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.

5 steps · 6 min read

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.

5 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 5 min read

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.

5 steps · 4 min read

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.

5 steps · 5 min read

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.

6 steps · 6 min read

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.

6 steps · 6 min read

Done. Your AI client now has access to your Search Console data.

Got stuck? Email support@gscpap.com with the error and we will revise the guide.