Skip to main content
Glama
seotesting-com

Google Search Console MCP Server

Google Search Console MCP Server

๐Ÿš€ Introduction: Setting Up MCP Server

In this tutorial, weโ€™ll walk you through the process of setting up your own MCP Model Context Protocol server, adding it to Claude Desktop, and integrating it with Google Search Console (GSC) data. This will allow you to compare time periods to identify SEO improvements, generate visual reports like bar charts and line graphs, and uncover optimization opportunities by analyzing click-through rates, impressions, and ranking shifts.

image

Letโ€™s get started! ๐Ÿš€

Related MCP server: GSC Analyst Connector

๐Ÿ”น What We'll Cover:

  1. Generate Google Cloud Credentials โ€“ Create and download a service account JSON key to authenticate API access.

  2. Install Required Tools โ€“ Ensure Python, pip, uv, and Git (optional) are installed on your system.

  3. Set Up the MCP Server โ€“ Clone the repository, configure your environment, and install the MCP server.

  4. Enable Search Console Insights โ€“ Verify that the MCP server is running correctly in Claude Desktop and start using advanced search analytics tools.

By the end of this guide, Claude will automatically connect to the MCP server and you'll be able to run queries, visualize data, and optimize your websiteโ€™s search performance with ease. Let's get started! ๐Ÿš€

๐Ÿ”น What You Need to Know

This tutorial is designed to be beginner-friendly, and you donโ€™t need any advanced technical skills. However, you should be comfortable running commands in the command line (also known as the terminal or command prompt).

Throughout this guide, you'll enter commands like:

python --version
git clone <repository-url>

If youโ€™ve never used the command line before, donโ€™t worry! Just follow the instructions step by step, and you'll be good to go.

Thatโ€™s all you needโ€” letโ€™s get started! ๐Ÿš€

๐ŸŽฏ Part 1 - Generate a JSON Credentials File

Follow these steps to create and download a service account JSON key from Google Cloud Console. If you already have a JSON credentials file, you can skip this part.

๐Ÿ“Œ 1. Go to Google Cloud Console

๐Ÿ”— Visit Google Cloud Console

๐Ÿ“Œ 2. Select Your Project

  • Click on the project selector at the top.
    image

  • Select an existing project or create a new one.

If you're creating a new project:

Enable Search Console API

  • Make sure your new project is selected

  • Click on APIs and Services: image

  • Find Google Search Console API (you may need to search at the top) image

  • Click "Enable"

  • Return to the dashboard (click the "Google Cloud" icon)

๐Ÿ“Œ 3. Open the IAM & Admin Section

  • In the left menu, go to "IAM & Admin" > "Service Accounts".

๐Ÿ“Œ 4. Create a New Service Account

  1. Click "Create Service Account".

  2. Enter a name (e.g., my-app-service-account).

  3. Click "Create and Continue".

๐Ÿ“Œ 5. Assign Permissions

  • Choose a role (e.g., Editor, Owner).

  • Click "Continue".

๐Ÿ“Œ 6. Skip Granting Users Access (Optional)

  • Click "Done" (no need to add users).

๐Ÿ“Œ 7. Generate the JSON Key

  1. Find your service account in the list.

  2. Click the 3 dots (โ‹ฎ) on the right and select "Manage Keys".

  3. Click "Add Key" > "Create New Key".

  4. Choose "JSON" format and click "Create".

  5. โœ… The JSON file will download automatically.

  6. Copy the path of JSON file (right click + 'Copy as path')

๐Ÿ“Œ 8. Add the Service Account to Google Search Console

  1. Open Google Search Console.

  2. Select the website property.

  3. Click Settings (bottom left).

  4. Under Users and Permissions, click Add User.

  5. Enter the service account email (from step 4).

  6. Assign permissions:

    • Restricted (view data only).

    • Full (view & manage property).

  7. Click Add.


๐ŸŽฏ Part 2 - Install Required Tools

Before you begin working with the project, ensure that you have the necessary tools installed. Follow these steps to check if everything is ready.

๐Ÿ“Œ 1. Check if Python is Installed

Check if Python is installed on your system by running the following command:

On Windows:

python --version

On Linux/macOS:

python3 --version

If Python is installed, you will see the version number. If not, download and install it from ๐Ÿ”— Download Python

๐Ÿ“Œ 2. Check if pip is Installed

pip is the package manager for Python. To check if it's installed, run the following command:

On Windows:

pip --version

On Linux/macOS:

pip3 --version

If pip is not installed, follow the official installation guide ๐Ÿ”— Download pip

๐Ÿ“Œ 3. Check if uv is Installed

uv is a Python package and project manager. To check if it's installed, run the following command:

On Linux/macOS/Windows:

uv --version

If uv is not installed, follow the official installation guide ๐Ÿ”— Download uv

๐Ÿ“Œ 4. Check if Claude Desktop is Installed

If Claude Desktop is not installed, follow the official installation guide ๐Ÿ”— Download Claude Desktop .

๐Ÿ“Œ 5. Check if Git is Installed (optional)

Check if Git is installed on your system by running the following command:

On Linux/macOS/Windows:

git --version

If Git is installed, you will see the version number. If not, you can still download the program files, or you can download and install Git from ๐Ÿ”— Download Git


๐ŸŽฏ Part 3 - Add the MCP server to Claude Desktop

Setup Instructions

1. Clone the Repository

Open a new terminal in the folder where the files will be downloaded to. Run the following commands:

git clone https://github.com/seotesting-com/gsc-mcp-server.git
cd gsc-mcp-server

If you don't have Git installed:

  • Download the ZIP file:

image

2. Create and Activate a Virtual Environment

# Windows
uv venv
.venv\Scripts\activate

# macOS/Linux
uv venv
source .venv/bin/activate

3. Install Dependencies

# Windows/macOS/Linux
uv sync

4. Install MCP Server

Add the path to your JSON credentials file and run the following command:

mcp install server.py -v GOOGLE_APPLICATION_CREDENTIALS=<path to credentials file>

Make sure you replace <path to credentials file> with the path to your JSON credentials file eg. C:\Users\Me\Downloads\credentials.json .

5. Restart Claude Desktop

You may need to end Claude tasks in the task manager.


๐ŸŽฏ Part 4 - Get Search Console Insights

Open Claude Desktop. If the MCP server has been configured correctly, you should be able to see 5 additional tools available in the chat box:

image

You can use the tools by asking Claude to perform various search console analytics tasks. Before invoking a tool, Claude will ask permission. You should click one of the 'allow' options to use the MCP server:

image

Getting Started Prompts

  • "List all my verified sites in Google Search Console"

  • "Show me search analytics for example.com from January 1 to January 31, 2025"

  • "Compare search performance for example.com between last month and the previous month"

  • "What are my top 10 pages by clicks for the last 30 days?"

  • "Show me search trends by week for the last 3 months"

Data Visualization Prompts

  • "Generate a bar chart of my top 5 performing pages by clicks for the past month"

  • "Create a line graph showing impression trends over the last 90 days"

  • "Visualize the CTR comparison between mobile and desktop traffic for my site"

  • "Plot a heatmap of search performance by country for example.com"

  • "Create a pie chart showing the distribution of traffic by device type"

  • "Generate a scatter plot comparing CTR vs. position for my top 50 queries"

  • "Show me a visual breakdown of traffic sources by search type (web, image, video)"

  • "Create a stacked area chart showing clicks and impressions over time"

  • "Visualize week-over-week search performance changes with a comparison chart"

  • "Generate a visual report of my site's SEO performance with multiple graphs"

Search Console Analysis Prompts

  • "Identify keywords with high impressions but low CTR that I can optimize"

  • "Show me pages that have dropped in rankings over the last month"

  • "Find new keywords that my site started ranking for in the past 30 days"

  • "Analyze which mobile pages have the biggest performance gap compared to desktop"

  • "Show me queries where I rank on page 2 (positions 11-20) that I could push to page 1"

  • "Identify seasonal trends in my search traffic over the past year"

  • "Compare organic traffic before and after my site redesign on March 1st"

  • "Show me which countries have the highest growth potential based on impressions vs. clicks"

  • "Analyze the correlation between average position and CTR for my top 100 queries"

  • "Generate a prioritized list of optimization opportunities based on potential traffic gains"

Available Tools

list_sites

Lists all verified sites in your Google Search Console account.

query_search_analytics

Parameters:
- site_url: Full URL of your website (e.g., https://www.example.com/)
- start_date: Start date in YYYY-MM-DD format
- end_date: End date in YYYY-MM-DD format
- dimensions: List of dimensions (query, page, device, country, date)
- search_type: Type of search results (web, image, video, news, discover, googleNews)
- row_limit: Number of rows to return (max 25000)

compare_time_periods

Parameters:
- site_url: Full URL of your website
- current_start_date: Start date for current period in YYYY-MM-DD format
- current_end_date: End date for current period in YYYY-MM-DD format
- previous_start_date: Start date for previous period in YYYY-MM-DD format
- previous_end_date: End date for previous period in YYYY-MM-DD format
- dimensions: List of dimensions (query, page, device, country, date)
- search_type: Type of search results
- row_limit: Number of rows to return

get_top_performing_content

Parameters:
- site_url: Full URL of your website
- start_date: Start date in YYYY-MM-DD format
- end_date: End date in YYYY-MM-DD format
- metric: Metric to sort by (clicks, impressions, ctr, position)
- limit: Number of results to return
Parameters:
- site_url: Full URL of your website
- start_date: Start date in YYYY-MM-DD format
- end_date: End date in YYYY-MM-DD format
- interval: Time interval for grouping (day, week, month)

๐Ÿ›  Troubleshooting

If you encounter any issues while setting up or using the MCP server, try the following solutions:

1๏ธโƒฃ Restart Claude Desktop

Sometimes, tools donโ€™t appear immediately. Restart Claude Desktop and try again. You may need to end the Claude process in Task Manager (Windows) or Activity Monitor (Mac) before restarting.

2๏ธโƒฃ Wait a Few Minutes

After setting up the MCP server, the new tools might take a few minutes to load. If they donโ€™t appear right away, wait a few minutes and try again.

3๏ธโƒฃ Check the JSON Credentials File

Ensure the service account JSON file is in an accessible folder. Avoid placing it in a restricted or admin-only folder (e.g., C:\Program Files\ on Windows or ~/Library/ on macOS). If necessary, move it to a more accessible location like your Documents or Desktop folder.

:four: Check the Claude configuration

Go to File => Settings and click on the Developer tab. When you click on Search Console Analytics, it should display a status of 'running'. If not, there may be an error message providing details of what is causing the connection issue. If you cannot see the Settings as pictured below, make sure you have an up-to-date version of Claude Desktop: ๐Ÿ”— Download Claude Desktop. image

Click on Edit Config and open 'claude_desktop_config.json' in a text editor. It should contain:

{
  "mcpServers": {
    "Search Console Analytics": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "google-api-python-client",
        "--with",
        "google-auth",
        "--with",
        "mcp[cli]",
        "--with",
        "pandas",
        "mcp",
        "run",
        "C:\\Documents\\gsc-mcp-server\\server.py"
      ],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "C:\\Users\\Path\\To\\Credentials\\gscaccess-credentials.json"
      }
    }
  }
}

If it contains something else, paste this data into file and make sure you update the file paths for the server.py file and the credentials file. Make sure to escape backslash characters (as shown). Restart Claude.

Mac Users: Fixing "spawn uv ENOENT" Error

If you see the error "spawn uv ENOENT" when opening Claude Desktop, it means that uv is either not installed or not found in the system path. If uv is installed, you can try adding the full path to the claude config.

1๏ธโƒฃ Update the Claude Desktop Configuration

Open Claude Desktop and go to File > Settings > Developer. Click "Search Console Analytics", then select Edit Config. Locate the "command": "uv" entry in claude_desktop_config.json. Replace "uv" with the full path to uv, which is usually: /Users/YOURUSERPROFILENAME/.local/bin/uv

Run this command to get the installation path of uv:

which -a uv

This command will display all the paths to the installations of uv you have. If the only path you can see is /Library/Frameworks/Python.framework/Versions/3.**/bin/uv , you need to ๐Ÿ”— Download uv and go back to Part 3.

Save the file and restart Claude Desktop.

2๏ธโƒฃ Try Another Installation Method for uv

If the above method does not work, uv may not be installed correctly. Try installing it using Homebrew:

brew install uv

If you're still having issues, retrace your steps and ensure everything is set up correctly. ๐Ÿš€

Available Tools

5 tools
compare_time_periodsB
Compare Search Console metrics between two time periods.

Args:
    site_url: Full URL of your website (e.g., https://www.example.com/ or sc-domain:example.com)
    current_start_date: Start date for current period in YYYY-MM-DD format
    current_end_date: End date for current period in YYYY-MM-DD format
    previous_start_date: Start date for previous period in YYYY-MM-DD format
    previous_end_date: End date for previous period in YYYY-MM-DD format
    dimensions: List of dimensions (query, page, device, country, date)
    search_type: Type of search results (web, image, video, news, discover, googleNews)
    row_limit: Number of rows to return (max 25000)
ParametersJSON Schema
NameRequiredDescriptionDefault
site_urlYes
current_start_dateYes
current_end_dateYes
previous_start_dateYes
previous_end_dateYes
dimensionsNo
search_typeNoweb
row_limitNo

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description lacks behavioral details such as what the output looks like, how the comparison is computed, required permissions, or side effects. Only row_limit max is mentioned, but overall transparency is low.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear opening sentence, but the bulleted Args list adds some overhead. It is front-loaded and every part adds value, though it could be streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the tool having 8 parameters and no output schema, the description only covers parameter format. Missing details include return format, comparison logic, prerequisites (e.g., site verification), and error handling, making it incomplete for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema_description_coverage is 0%, but the description provides crucial context: date format (YYYY-MM-DD), allowed values for dimensions and search_type, max row_limit, and example for site_url. This adds significant meaning beyond the schema's type-only definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with 'Compare Search Console metrics between two time periods,' which clearly states the action (compare) and resource (metrics between two periods). This distinguishes it from siblings like query_search_analytics, which likely queries single-period data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like query_search_analytics. The description focuses on parameters without stating when a comparison is appropriate or what to do if other tools would be better.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_top_performing_contentB
Get the top performing content based on a specific metric.

Args:
    site_url: Full URL of your website (e.g., https://www.example.com/ or sc-domain:example.com)
    start_date: Start date in YYYY-MM-DD format
    end_date: End date in YYYY-MM-DD format
    metric: Metric to sort by (clicks, impressions, ctr, position)
    limit: Number of results to return
ParametersJSON Schema
NameRequiredDescriptionDefault
site_urlYes
start_dateYes
end_dateYes
metricNoclicks
limitNo

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should disclose behavioral traits beyond parameters. It does not mention whether the operation is read-only, if it aggregates data, or any constraints on date ranges. The parameter list does not compensate for missing behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the purpose. The parameter list is well-structured but could be more compact. Overall no unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and sibling tools, the description fails to explain what the tool returns (e.g., fields, format) or how it differs from similar tools. This is a significant gap for a tool with multiple parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description adds value by explaining each parameter: site_url example, date formats, metric options ('clicks, impressions, ctr, position'), and default values. However, it does not specify allowed values for metric (schema lacks enum) and could be clearer.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb 'Get' and resource 'top performing content', but it does not clarify what constitutes 'content' (e.g., pages, URLs) or differentiate from sibling tool 'query_search_analytics' which may also return content performance data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides parameter explanations but lacks guidance on when to use this tool versus alternatives like 'compare_time_periods' or 'get_search_trends'. No explicit context for selection or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sitesA

List all verified sites in Search Console.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only states 'list all verified sites' without detailing any side effects, permissions required, or return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the tool's purpose with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a param-free, simple list tool, the description is adequate but lacks context such as what a 'verified site' is, potential pagination, or the response structure. Completeness is acceptable but not exemplary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the empty schema fully documents them. The description implicitly confirms no input is needed. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (list) and resource (verified sites in Search Console), and distinguishes from sibling tools which focus on analytics and trends.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description does not mention any prerequisites, exclusions, or context for its use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

query_search_analyticsC
Query Search Console analytics data for a site.

Args:
    site_url: Full URL of your website (e.g., https://www.example.com/ or sc-domain:example.com)
    start_date: Start date in YYYY-MM-DD format
    end_date: End date in YYYY-MM-DD format
    dimensions: List of dimensions (query, page, device, country, date)
    search_type: Type of search results (web, image, video, news, discover, googleNews)
    row_limit: Number of rows to return (max 25000)
ParametersJSON Schema
NameRequiredDescriptionDefault
site_urlYes
start_dateYes
end_dateYes
dimensionsNo
search_typeNoweb
row_limitNo

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It implies a read operation ('Query') but does not state safety properties, idempotency, rate limits, or lack of side effects. More behavioral context is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise with a clear Args structure, but it could be more front-loaded to provide a quick summary before the parameter list. Every sentence is earned, but overall length is acceptable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without an output schema, the description omits what the tool returns (e.g., clicks, impressions, aggregated data). It also lacks information on error handling, pagination, or data volume expectations, making it incomplete for a query tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The parameter descriptions in Args add significant meaning beyond the raw schema, explaining format (e.g., 'YYYY-MM-DD'), options (e.g., dimensions list), and constraints (row_limit max 25000). However, there is a slight inconsistency with the schema default for row_limit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb-resource pair 'Query Search Console analytics data for a site,' indicating both the action and the specific data source. However, it does not explicitly differentiate from sibling tools like compare_time_periods or get_search_trends, which might also involve analytics data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus the alternatives. The description only details parameters without suggesting context or prerequisites, leaving the agent without decision cues.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv0.1.0
    • First observedcompare_time_periods
    • First observedget_search_trends
    • First observedget_top_performing_content
    • First observedlist_sites
    • First observedquery_search_analytics

TDQS

A3.5/5.0
Disambiguation3/5

Tools like compare_time_periods, get_search_trends, and get_top_performing_content are essentially specialized variants of query_search_analytics, causing potential overlap and confusion for agents. While descriptions attempt to differentiate, the underlying functionality is redundant.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., list_sites, query_search_analytics), making the set predictable and easy to navigate.

Tool Count5/5

With 5 tools, the server is well-scoped for the Search Console analytics domainโ€”enough to cover core operations without being overwhelming.

Completeness4/5

The tools cover essential analytics queries, trends, comparisons, and site listing. Minor gaps exist (e.g., no sitemap or index coverage), but the surface is complete for its stated purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Google Search Console to query search analytics, inspect URL indexing status, and manage sitemaps. It allows users to monitor SEO performance and site health through natural language commands in MCP-compatible clients.
    132
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Google Search Console data, including search analytics with advanced filtering, quick wins detection, and rich dimensions, through natural language.
    4,053
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/seotesting-com/gsc-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server