Skip to main content
Glama
gioenjoy

mcp-google-merchant-center

by gioenjoy

mcp-google-merchant-center

MCP server for Google Merchant Center — read products, check approval statuses, and analyze feeds across multiple accounts.

Features

  • List products across multiple Merchant Center accounts

  • Search products by title or brand

  • Get product approval status and issues

  • Inspect data sources and feeds

  • Get account information

Related MCP server: analytics-mcp

Installation

npm install -g mcp-google-merchant-center

Or use directly with npx (no install needed):

{
  "mcpServers": {
    "merchant-mcp": {
      "command": "npx",
      "args": ["-y", "mcp-google-merchant-center"],
      "env": {
        "MERCHANT_ID": "YOUR_DEFAULT_MERCHANT_ID",
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/application_default_credentials.json"
      }
    }
  }
}

Authentication

This server uses Google Application Default Credentials (ADC). Generate them with:

gcloud auth application-default login \
  --client-id-file="YOUR_CLIENT_SECRET.json" \
  --scopes="https://www.googleapis.com/auth/content"

The credentials file is saved at ~/.config/gcloud/application_default_credentials.json.

Environment Variables

Variable

Required

Description

MERCHANT_ID

Yes

Default Merchant Center account ID

GOOGLE_APPLICATION_CREDENTIALS

Yes

Path to ADC credentials JSON file

Multiple Accounts

All tools accept an optional merchant_id parameter to query a specific account:

"List products for merchant 5747906518" "Get product status for account 5443978365"

Available Tools

Tool

Description

get_account

Account info and settings

list_products

Browse all products with pagination

get_product

Full details for a single product

search_products

Filter products by title or brand

list_data_sources

List feeds and data sources

get_product_status

Approval status and disapproval reasons

Requirements

  • Node.js 18+

  • Google Cloud project with Merchant API enabled

  • OAuth 2.0 credentials (Desktop app type)

License

MIT

Available Tools

6 tools
get_accountB

Recupera informazioni sull'account Merchant Center

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365

TDQS

B3.2/5.0
Behavior3/5

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

Without annotations, the description implies a read operation ('recupera informazioni'), but it does not explicitly state that it is non-destructive or mention any side effects. Adequate but not comprehensive.

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?

A single sentence with no wasted words. It is front-loaded and concise.

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?

No output schema is provided, and the description does not mention what information is returned (e.g., account name, settings). Also lacks details on potential errors or authentication requirements.

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

Parameters3/5

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

Schema coverage is 100%, and the parameter description provides default and available IDs. The tool description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.

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 tool retrieves Merchant Center account information, matching the tool name. It distinguishes from sibling tools like get_product and list_products, which focus on products.

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 on when to use this tool versus alternatives. The description does not mention any prerequisites or context for usage.

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

get_productC

Recupera dettagli di un prodotto specifico

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365
product_idYesID prodotto (es. online:it:IT:123456)

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description must fully convey behavioral traits. It only states it retrieves details, but does not disclose what exact details are returned, whether it is a read-only operation, or any potential side effects. The description is insufficient for a tool with no annotations.

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 very concise at one sentence, but it sacrifices completeness. While efficient, it lacks necessary detail about the tool's behavior and output, making it feel under-specified rather than optimally concise.

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 absence of an output schema, the description should at least hint at what 'dettagli' includes. It does not. With only two parameters, a minimal description is acceptable but could be more informative about return values.

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

Parameters3/5

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

Schema description coverage is 100% because both parameters have descriptions in the input schema. The tool description adds no additional meaning beyond the schema, providing no extra context for parameters like 'merchant_id' or 'product_id'. Baseline score of 3 is appropriate.

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 'recupera' (retrieves) and the resource 'dettagli di un prodotto specifico' (details of a specific product), making the purpose understandable. However, it does not explicitly differentiate from sibling tools like 'get_product_status' or 'search_products', though the name implies specificity.

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 such as 'list_products' or 'search_products'. The description lacks any context about prerequisites or appropriate use cases.

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

get_product_statusC

Stato di approvazione e issues dei prodotti

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365
max_resultsNoNumero massimo di prodotti (default 50)

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It does not state whether the operation is read-only, how results are ordered, or what happens when no products match. The minimal one-line description fails to reveal important behavior.

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 extremely concise (one short phrase). While there is no wasted text, it is too brief to be fully informative and lacks structure (e.g., no break into purpose, usage, behavior).

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 low complexity (2 optional params, no output schema), the description does not explain what the tool returns (e.g., list of products with status details), pagination, or any error conditions. It is incomplete for an agent to use reliably.

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

Parameters3/5

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

Schema coverage is 100% (both parameters have descriptions). The tool description does not add extra meaning beyond what the schema already provides, so a baseline of 3 is appropriate.

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 indicates that the tool provides approval status and issues for products ('Stato di approvazione e issues dei prodotti'). It distinguishes from sibling tools like get_product or list_products by focusing specifically on status 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 alternatives such as get_product or search_products. The description does not mention prerequisites, exclusions, or context for use.

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

list_data_sourcesB

Lista feed e fonti dati del Merchant Center

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365

TDQS

B3.3/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 (e.g., read-only, pagination, rate limits). It only states the action, leaving the agent uninformed about side effects or constraints.

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, direct sentence with no unnecessary words. It is appropriately concise for a simple list tool.

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?

Given the simplicity of the tool (1 optional parameter, no output schema), the description is minimally adequate but lacks information on output format, default merchant_id, or any filtering behavior.

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

Parameters3/5

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

Schema coverage is 100% and the parameter description is adequate. The tool description adds no extra meaning beyond what the schema provides, meeting the baseline for high coverage.

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 tool lists feeds and data sources of the Merchant Center. The verb 'list' matches the action, and it distinguishes from siblings like list_products and get_product.

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 usage guidance is provided. The description does not indicate when to use this tool versus alternatives like list_products or search_products, nor does it mention any prerequisites or context.

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

list_productsC

Lista prodotti nel Merchant Center

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365
max_resultsNoNumero massimo di prodotti (default 50)
page_tokenNoToken per paginazione

TDQS

C2.9/5.0
Behavior2/5

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

Without annotations, the description carries the full burden but only states it lists products. It does not disclose behavioral traits like read-only nature, pagination details, authentication requirements, or rate limits. The minimal description is insufficient for an agent to understand side effects or constraints.

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 extremely concise with a single sentence, containing no unnecessary words. However, it lacks structure and could benefit from more detail, but for conciseness it earns a 4.

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?

The tool has no output schema and the description does not explain return values, error handling, or pagination behavior. Given the 3 parameters and moderate complexity, the description is incomplete and leaves significant gaps for an agent to understand the full usage.

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

Parameters3/5

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

Schema coverage is 100% with all three parameters described. The description adds no extra meaning beyond what is already in the schema, so a baseline score of 3 is appropriate.

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 'Lista prodotti nel Merchant Center' (List products in the Merchant Center), using a specific verb and resource. However, it does not differentiate from siblings like 'search_products' or 'get_product', which could lead to ambiguity.

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 vs alternatives. Sibling tools such as 'search_products' and 'get_product' exist, but the description offers no context for selection.

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

search_productsC

Cerca prodotti per titolo o brand

ParametersJSON Schema
NameRequiredDescriptionDefault
merchant_idNoMerchant Center ID (opzionale, default 123456789). Disponibili: 5291449515, 5747906518, 5443978365
queryNoTesto da cercare nel titolo o brand
max_resultsNoNumero massimo risultati (default 50)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, and the description adds minimal behavioral context beyond the basic operation. It does not disclose if it's read-only, rate limits, pagination, or what happens with empty results. The parameter max_results hints at limiting, but that's in the schema.

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?

One sentence that is complete and to the point. No wasted words, front-loaded with the action and target.

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 tool complexity (search with optional parameters, no output schema) and existence of sibling tools like list_products, the description lacks details on return format, pagination, or when to choose this over alternatives. It is minimally adequate.

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

Parameters3/5

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

Schema coverage is 100% and the schema already describes parameters well (e.g., merchant_id lists available values). The description does not add any parameter-specific meaning beyond the schema.

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?

Description states it searches products by title or brand, using a specific verb and resource. It distinguishes from siblings like list_products (which likely lists all) and get_product (single product), though it could be more explicit about search vs list behavior.

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 on when to use this tool vs alternatives like list_products or get_product. It does not mention prerequisites or exclusion criteria, leaving the agent to infer from the name and parameters.

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. 6 tool updatesv1.0.0
    • First observedget_account
    • First observedget_product
    • First observedget_product_status
    • First observedlist_data_sources
    • First observedlist_products
    • First observedsearch_products

TDQS

A3.5/5.0
Disambiguation5/5

Each tool targets a clear, distinct aspect: account info, product details, product status, data sources, product listing, and product search. There is minimal overlap, as get_product and get_product_status differ in focus (details vs. approval), and list_products vs. search_products differ in scope (all vs. filtered).

Naming Consistency5/5

All tools follow a consistent verb_noun pattern using snake_case (e.g., get_account, list_data_sources). The verbs (get, list, search) clearly indicate the action, making the naming predictable and easy to understand.

Tool Count5/5

With 6 tools, the server is well-scoped for querying a Google Merchant Center. The number is neither too few (covering essential read operations) nor too many (no unnecessary clutter). It fits the apparent purpose of data retrieval.

Completeness4/5

The tool set covers key read operations: account, product details, product status, data sources, and product listing/search. However, it lacks write operations (e.g., create, update, delete). This may be intentional for a query-only server, but for full lifecycle management, it's slightly incomplete.

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 querying Google Analytics data and configuration through natural language using the Data and Admin APIs.
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying and managing Google Ads campaigns, keywords, assets, and more via natural language, with support for multiple MCP clients.
    131
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to manage Google Merchant Center accounts via the Merchant API, including product feeds, promotions, data sources, and MCQL reports with read and write operations.
    22
    144
    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/gioenjoy/mcp-google-merchant-center'

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