Skip to main content
ChatGPT supports remote MCP servers via its Developer Mode, currently available on Pro, Team, Enterprise, and Edu plans. Once enabled, Grain shows up like any other connector — toggle it on in a conversation and ChatGPT can query your analytics.
Developer Mode is a beta feature. OpenAI may gate or change the UI as it matures. If any of the menu names below look different, skim the OpenAI help article for the current path.

Setup

1

Enable Developer Mode

In ChatGPT, open Settings → Apps & Connectors → Advanced settings and switch Developer Mode on. This unlocks the “Add custom connector” flow.
2

Create a new connector

Still in settings, go to Apps & Connectors → Add new connector (some plans label it Connectors → Create).
3

Fill in the connector details

FieldValue
NameGrain
Description (optional)Query my Grain analytics workspace
Icon (optional)Your Grain logo if you have one handy
MCP server URLhttps://grainql.com/api/mcp
AuthenticationOAuth
You don’t need to paste a client ID or secret. Grain registers ChatGPT dynamically when it first connects.
4

Trust and create

Tick the I trust this application checkbox and click Create. ChatGPT opens Grain’s consent screen in your browser.
5

Authorize the workspace

Pick the workspace you want ChatGPT to see, review the three scope rows, and click Authorize.
ChatGPT closes the browser tab and marks the connector as connected.
6

Use it in a conversation

Open a new chat, click + (or the tools menu, depending on your ChatGPT version), enable Grain, and ask:
What were my top 10 referrers last week, and which ones grew the most vs the week before?
ChatGPT will call grain.query.compare and summarize.

What ChatGPT is good at with Grain

ChatGPT shines at narrative synthesis — turning rows into a paragraph your CEO will actually read. A few framings that work well:
Pull last week’s digest from Grain and write me a 4‑bullet Slack summary. Bold anything that looks surprising, and link the dashboard at the end.
ChatGPT uses grain.query.digest, then formats. Grain’s surprise hints (concentration, volatility, rank changes) are embedded in the response, so the “surprising” bullets are data‑driven, not guessed.
We just ran a paid campaign on utm_source=hackernews. Break down the resulting signups by first‑touch source and tell me the conversion rate versus organic.
ChatGPT uses grain.query twice (with and without the filter) and does the math.
Is my Grain integration healthy? Any events that stopped firing in the last 7 days?
ChatGPT uses grain.integration.status and grain.query.compare.

Troubleshooting

Developer Mode hasn’t been enabled yet, or your plan doesn’t support it. The feature is currently Pro/Team/Enterprise/Edu only.
The URL must be exactly https://grainql.com/api/mcp — including https://. No trailing slash, no subpath.
Grain refresh tokens rotate. ChatGPT should do this silently, but if it doesn’t, click the connector and hit Reconnect — one OAuth round‑trip and you’re back.

Next steps

Tool reference

The eleven tools available over MCP.

Security & scopes

How to audit what ChatGPT can see.

References