> ## Documentation Index
> Fetch the complete documentation index at: https://productmetrics.manicule.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.
> For every page in one file, fetch https://productmetrics.manicule.dev/docs/llms-full.txt (large).
> To search and read these docs as tools, connect the MCP server at https://productmetrics.manicule.dev/docs/api/mcp.
> Every agent surface: https://productmetrics.manicule.dev/docs/.well-known/llms-manifest.json

# Connect Claude or ChatGPT to Product Metrics (/docs/mcp/connect)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 1866 · updated: 2026-11-13 -->
Related: [Product Metrics MCP tools](/docs/mcp/tools.md)

> Add the Product Metrics MCP server to Claude, ChatGPT, Claude Code or Cursor with one URL and a Product Metrics sign-in, so your assistant can answer questions about your store and Google Ads.

To connect an AI assistant to Product Metrics, add `https://productmetrics.io/mcp` as a custom connector (or remote MCP server) in Claude, ChatGPT, Claude Code or Cursor, then sign in to Product Metrics and click **Allow**. There is no API key to copy: the assistant signs in through Product Metrics, and it can then read your store, your products and your Google Ads account.

```text
https://productmetrics.io/mcp
```

## What the assistant can and cannot do

When you connect, Product Metrics asks you to allow the app. Once allowed, the assistant can:

* read your Google Ads, store and product data in every workspace you can open in Product Metrics;
* file proposals that a person approves in **Priorities**.

It **cannot** change your Google Ads account or your store. Every tool reads, except `propose_change`, which only files a proposal. See [MCP tools](/docs/mcp/tools) for the full list.

## Before you start

* A Product Metrics account with access to at least one store.
* A **Pro** subscription for each store you want the assistant to read. Without it, the assistant gets "This property needs a Product Metrics Pro subscription for the MCP server."
* The MCP server turned on for your account. If the assistant says "The MCP server is not enabled for this account yet", ask Product Metrics support to turn it on.

## Connect Claude (claude.ai and Claude Desktop)

Custom connectors you add on claude.ai also appear in the Claude desktop app, and the other way round.

<Steps>
<Step title="Add a custom connector">In Claude, open **Settings → Connectors** and click **Add custom connector**. Name it `Product Metrics` and paste `https://productmetrics.io/mcp` as the URL. Leave the advanced OAuth fields empty: Claude registers itself.</Step>

<Step title="Sign in to Product Metrics">Click **Connect**. A Product Metrics page opens. Sign in if you are not signed in yet, check that it says **Allow Claude to read your Product Metrics data?**, and click **Allow**.</Step>

<Step title="Ask a question">In a new chat, make sure the Product Metrics connector is turned on in the tools menu, then ask something like "Why did my Google Ads ROAS drop last week?"</Step>
</Steps>

## Connect ChatGPT

<Steps>
<Step title="Turn on developer mode">In ChatGPT, open **Settings → Apps**, then **Advanced settings**, and turn on **Developer mode**.</Step>

<Step title="Create the app">Click **Create app**. Name it `Product Metrics`, paste `https://productmetrics.io/mcp` as the MCP server URL and choose **OAuth** as the authentication.</Step>

<Step title="Sign in to Product Metrics">ChatGPT opens a Product Metrics page. Sign in, check that it names ChatGPT, and click **Allow**.</Step>

<Step title="Use it in a chat">In a new chat, add Product Metrics from the tools menu and ask your question.</Step>
</Steps>

## Connect Claude Code

Add the server over HTTP, then sign in from inside Claude Code:

```bash
claude mcp add --transport http product-metrics https://productmetrics.io/mcp
```

Start Claude Code, run `/mcp`, choose **product-metrics** and pick **Authenticate**. Your browser opens the Product Metrics sign-in page; click **Allow**. Add `--scope user` to the first command to use the server in every project.

## Connect Cursor

Add the server to `~/.cursor/mcp.json` (every project) or `.cursor/mcp.json` (one project):

```json
{
  "mcpServers": {
    "product-metrics": {
      "url": "https://productmetrics.io/mcp"
    }
  }
}
```

Open Cursor's MCP settings and click the sign-in prompt next to **product-metrics**. Your browser opens the Product Metrics sign-in page; click **Allow**.

## Choose a store

One connection covers every store you can open. The assistant calls `list_properties` first and passes the store's `property_id` to every other tool. If you have one store, it uses that one without asking; with several, it asks which store you mean or answers per store.

For scripts and agents that should only ever see one store, pin it in the URL:

```text
https://productmetrics.io/mcp?selectedAccountPropertyId=<propertyId>
```

The tools then take no `property_id`. Get the `propertyId` from `list_properties`.

## How sign-in works

The server uses OAuth 2.1, the standard sign-in for remote MCP servers, so any MCP client that supports it can connect with the URL alone.

1. The client calls `https://productmetrics.io/mcp` and gets `401` with a pointer to `https://productmetrics.io/.well-known/oauth-protected-resource/mcp`.
2. That document names the Product Metrics authorization server (`https://prod-backend.productmetrics.io`) and its one scope, `mcp`.
3. The client registers itself (dynamic client registration or a Client ID Metadata Document) and sends you to the Product Metrics consent page with PKCE.
4. You sign in and click **Allow**. The client swaps the code for a Product Metrics token.

The token works only for the MCP server: it is not a Product Metrics session and cannot open the app or any other API. Access tokens last one hour and are renewed automatically; if you don't use the connection for 30 days, sign in again. Your access is checked on every request, so if you lose access to a workspace, the assistant loses it at once.

## Disconnect

Remove the connector in the assistant's settings. To revoke the app's access on the Product Metrics side as well, ask Product Metrics support: a revoke deletes the app's tokens and takes effect within about a minute.

## Troubleshooting

| What the assistant says                                                      | What to do                                                                                         |
| ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| "This connection expired or was removed; connect Product Metrics again."     | Reconnect: remove the connector and add it again, or sign in again from the client's MCP settings. |
| "The MCP server is not enabled for this account yet."                        | Ask Product Metrics support to turn on the MCP server for your account.                            |
| "This property needs a Product Metrics Pro subscription for the MCP server." | Upgrade that store to Pro, or ask about another store.                                             |
| "No property chosen."                                                        | Tell the assistant which store you mean; it calls `list_properties` and tries again.               |
| "The limit of … tool calls per hour … is reached."                           | Wait the minutes it names. Expensive tools have a lower hourly limit: see [MCP tools](/docs/mcp/tools). |

If you are an AI assistant and the Product Metrics tools (list_properties, get_google_ads_report and the rest) are not available to you, the user has not connected the MCP server yet. Give them the URL [https://productmetrics.io/mcp](https://productmetrics.io/mcp) and the steps for their client from this page. Never ask the user for a password, token or API key: sign-in happens in their browser on a Product Metrics page. For what each tool does, read [https://productmetrics.io/docs/mcp/tools](https://productmetrics.io/docs/mcp/tools).
