The behaviors described in this section are known characteristics of the current Alpha release, not unexpected bugs. Many will be resolved or superseded as the MCP server moves toward general availability. Where a limitation has a corresponding troubleshooting fix, the Troubleshooting section below provides the resolution steps.
Alpha access is granted per organization on request. The PMA MCP server is not open for self-service signup during Alpha. Power My Analytics grants access per organization by adding the organization to an internal allow list and provisioning an API token. Organizations that have not been allow-listed will encounter a connection failure with no detailed error message. To request access, open a support ticket with the subject line "MCP Early Access" at support.powermyanalytics.com.
Plan-tier eligibility for general availability is pending. Alpha access is currently provisioned manually by the PMA team regardless of plan tier. Specific plan eligibility will be confirmed when billing and metering for MCP usage is finalized. Until that decision is made, plan-eligibility statements in PMA documentation remain conditional.
Two authentication paths are supported. Browser-based AI clients (Claude Desktop, Claude Web, Claude Code, ChatGPT) authenticate via OAuth 2.1 + PKCE against your existing PMA login. Headless / server-to-server clients send your PMA API token directly as Authorization: Bearer <token> against https://pma-mcp.web.app/mcp, skipping OAuth entirely. Both paths resolve to the same underlying PMA API token. For the headless walkthrough, see Headless/Server-to-Server Integration with PMA MCP Server.
Token lifetimes vary by authentication path. OAuth-issued access tokens (used by browser-based AI clients) are issued at connection time and expire 1 year later. The underlying PMA API token used by headless integrations is long-lived and does not expire on its own; rotate it from Hub settings as part of your standard production-secret rotation. OAuth 2.1 dynamic client registrations have a separate 24-hour TTL, but this is internal to the OAuth handshake and does not affect day-to-day usage. Refresh tokens are not currently issued; for browser-based clients, disconnect and reconnect to mint a new token when one expires (or if your hub access is revoked).
One API token per organization. Customers with access to multiple hubs cannot toggle between them within a single session; to switch hubs, disconnect the connector and reconnect, choosing the desired hub during the OAuth flow.
The historical-data window cap has not yet been decided. The MCP server does not currently enforce a maximum lookback period. Responses for very old date ranges should be treated as best-effort until the cap is formally set and documented.
Response shapes for high-frequency queries are still being standardized. During Alpha, the same prompt may occasionally return data in slightly different structures across users or sessions. Canonical response formats for common queries (sources, accounts, summaries) are being finalized.
The MCP server queries PMA's warehoused data layer, not live platform APIs. Data reflects the state of PMA's warehouse after the most recent successful Data Sync for each platform. Sync cadence is plan-dependent: daily by default, with hourly refreshes available on Custom plans with the optional hourly refresh feature. Each account's last_sync timestamp is queryable via pma_list_data_sources for current freshness.
Zero-value days are reported as gaps, not anomalies. pma_detect_anomalies explicitly excludes zero-value days from anomaly detection and reports them separately in the data_gaps field. If a customer asks "why didn't it flag the day I had zero spend," this is intentional behavior, not a bug.
ChatGPT does not invoke the PMA MCP automatically. Unlike Claude Desktop, ChatGPT requires you to explicitly select the PMA MCP app from the tools menu at the start of each new chat. If this step is skipped, ChatGPT will answer data questions without calling any PMA tools, and the response will not reflect your actual Hub data.
Vague prompts cause the AI to make multiple discovery calls before answering. When a prompt does not specify the platform, metric, date range, or analytic intent, the AI must call pma_list_data_sources and related tools before it can begin analysis. Each additional tool call adds latency and, on most AI clients, token cost. Specifying these four elements up front materially reduces the number of tool calls required. See Tips for Writing Effective Prompts in the PMA MCP Tools Reference.
pma_inspect_org_data is slow. A full diagnostic scan can take 30–45 seconds. Reserve it for troubleshooting; pass a connector_type to keep individual scans fast.
The following are not currently accessible through the PMA MCP server:
Each issue below includes the symptom as the customer would experience it, the cause (with a reference to the relevant limitation above), and the resolution steps.
Token expired or sudden loss of tool access (browser-based AI clients)
Symptom: The PMA MCP was working, but Claude or ChatGPT can no longer return data from your Hub. Tool calls fail silently or the AI states it does not have access.
Cause: OAuth-issued access tokens are valid for 1 year, but they can expire earlier if your hub access is revoked or your PMA login changes.
Solution: Disconnect the PMA MCP connector in your AI client and reconnect. The OAuth flow re-runs and issues a new token. Refresh tokens are not currently issued. This troubleshooting step applies only to browser-based AI clients; headless integrations use the long-lived underlying PMA API token directly and re-authenticate by rotating that token from Hub settings rather than disconnecting and reconnecting.
Connection fails entirely with no clear error
Symptom: The connection attempt fails without a detailed error message. The PMA MCP connector does not appear as connected after completing the setup steps.
Cause: Most commonly, the organization is not yet on the Alpha allow list (see Access and Plan Eligibility above). Less commonly, the server URL contains a typo or trailing slash.
Solution: Confirm that your organization has been approved for MCP Alpha access. If not, open a support ticket with the subject line "MCP Early Access" at support.powermyanalytics.com. If your organization is already on the access list, verify that the server URL entered is exactly https://pma-mcp.web.app (no trailing slash) and retry.
ChatGPT answers without using any PMA tools
Symptom: You ask ChatGPT a question about your marketing data, but the response is generic, does not reflect your Hub data, or explicitly states that no data is available, even though the PMA MCP connector is installed.
Cause: The per-chat tool selection requirement described in ChatGPT-Specific Behavior above. ChatGPT does not invoke custom MCP connectors automatically; the PMA MCP must be selected from the tools menu at the start of every new chat.
Solution: Open the tools or apps menu near the ChatGPT message input, select PMA MCP from the list of available tools, and re-send your prompt. This selection must be made at the start of each new chat; it does not carry over between sessions.
A query returns no rows for a platform you know is connected
Symptom: Asking the AI about a specific platform returns an empty result or the AI reports that it found no data, even though data for that platform is visible in your Hub.
Cause: One of three possibilities: (a) data has not yet synced for the requested date range, (b) the AI is querying an incorrect report type for that connector, or (c) a sync gap means no data exists for the window requested.
Solution: Ask your AI assistant to call pma_inspect_org_data for the connector. This diagnostic tool confirms which report types have data and what date ranges are populated. With that information, retry the query specifying the correct report type. If a sync gap is identified, initiate a manual backfill from Hub > Sources > Actions > Backfill data range for the affected date range.
An anomaly is flagged that appears to be missing data, not a performance change
Symptom: pma_detect_anomalies flags a day as an anomalous drop in spend or impressions, but investigation reveals no data was reported for that day at all; the drop is a sync gap, not a real performance change.
Cause: Before April 21, 2026, the anomaly detection tool treated zero-value days (caused by sync gaps) the same as genuine statistical outliers. This has been resolved.
Solution: As of April 21, 2026, pma_detect_anomalies returns a separate data_gaps field. Days with no data are now reported as gaps rather than as anomalies. If you are still seeing this behavior, verify that your AI client has fetched the latest tool description. If a data gap is confirmed in the data_gaps field, initiate a manual backfill via Hub > Sources > Actions > Backfill data range for the affected date range.
The same prompt returns different response shapes for different users or sessions
Symptom: Two team members ask the AI the same question and receive answers with different column names, different ordering, or different formatting.
Cause: The response-shape consistency limitation described in Data and Query Behavior above. Canonical response formats for high-frequency queries are still being standardized during the Alpha.
Solution: Until response shapes are standardized, include the desired output format in the prompt. For example: "List my data sources as a table with columns: Platform, Account Name, Has Data, Last Sync Date." This produces a predictable structure regardless of the underlying variation.
The AI makes many tool calls before answering, and responses are slow or expensive
Symptom: A question that seems simple triggers a long chain of tool calls before any answer is returned, which takes longer and uses more tokens than expected.
Cause: The cost consideration described in Cost and Performance Considerations above. Vague prompts require the AI to run discovery calls (pma_list_data_sources, pma_describe_platform, pma_inspect_org_data) before it can begin analysis, because it has to orient itself to your specific Hub configuration.
Solution: Specify the platform, metric, date range, and analytic intent up front. For a before-and-after example, see the Tips for Writing Effective Prompts section in the PMA MCP Tools Reference.
Wrong connector name
Symptom: A tool returns no results because the connector name in the prompt does not match a connected source.
Cause: Connector names must be passed exactly as returned by pma_list_data_sources.
Solution: Copy the connector name exactly from your connected sources list, or have the AI assistant call pma_list_data_sources first to retrieve the canonical name.
No data yet for a new connection
Symptom: A newly added data source returns empty results when queried.
Cause: The initial sync has not yet completed for the new connection.
Solution: Wait approximately one hour after connecting for the first sync to populate, then retry the query.
Occasional query timeout
Symptom: A tool call times out without returning data.
Cause: Transient backend slowness or load.
Solution: Retry the same query a few minutes later.
401 (unauthorized) error from the MCP endpoint
Symptom: A request to https://pma-mcp.web.app/mcp returns HTTP 401 or an "unauthorized" error.
Cause: Missing or malformed Authorization header, or the token in the header is invalid or has been rotated.
Solution: Confirm the header is exactly Authorization: Bearer <token> (the literal word Bearer followed by a single space, then the token, with no extra whitespace or quotes). Confirm the token value in your service's secrets manager matches the most recent token PMA issued. If the token was recently rotated, replace the old value and restart your service.
403 (forbidden) error from the MCP endpoint
Symptom: A request returns HTTP 403 or an "organization not authorized" error, even though the Authorization header looks correct.
Cause: Your PMA organization is not yet on the Alpha access list, or alpha access has been deactivated.
Solution: Open a support ticket with the subject line "MCP Early Access" at support.powermyanalytics.com to confirm or restore your access.
Rate limit exceeded (HTTP 429) in agentic loops
Symptom: Tool calls from a headless service start failing with "too many requests" or HTTP 429 errors.
Cause: The MCP server enforces a hard limit of 30 requests per minute per organization. Agentic loops, fan-out queries across many platforms, or aggressive retries can exceed this limit quickly.
Solution: Slow your call cadence, batch requests where possible, and add exponential backoff to your retry logic. For more headless-specific guidance, see Headless/Server-to-Server Integration with PMA MCP Server.
MCP client cannot establish a Streamable HTTP connection
Symptom: Your MCP client library fails to open a connection to the MCP endpoint, or the connection drops shortly after opening.
Cause: Your client library may default to the older Server-Sent Events transport, or your network may be closing long-lived HTTP responses.
Solution: Confirm your MCP client is using Streamable HTTP transport explicitly (not the older SSE transport from earlier MCP versions). If you are running behind a proxy or restrictive firewall, allow https://pma-mcp.web.app and confirm long-running responses are not being closed prematurely.
Contact PMA support at support.powermyanalytics.com if:
When opening a ticket, include the AI client you are using (Claude Desktop, ChatGPT, or other), the prompt or action that triggered the issue, and any error message or unexpected output you received.