Munin with ChatGPT.
Developer mode lets you point ChatGPT at your own MCP server. An admin registers one HTTPS endpoint, and an operations person is running CRM, support, knowledge, and outreach by asking for things in the words they'd use with a colleague — with the irreversible writes waiting in a review queue.

The fair criticism of an MCP-first platform is that it asks the wrong person to use a terminal. If the working surface is a tool catalogue, then the people who actually run customer operations — who know which accounts are wobbling and which reply needs softening — are locked out by a command line they have no reason to learn. I think that criticism is right, and it has an answer that isn't "build a dashboard."
Can ChatGPT connect to Munin?
Yes. ChatGPT's developer mode lets an admin register a remote MCP server as a custom app from an HTTPS endpoint, so you point it at https://mcp.getmunin.com and get Munin's tools in an ordinary chat. Full MCP support including write actions is in beta on ChatGPT Business, Enterprise, and Edu, web only. Pro users can connect an MCP server in developer mode for read and fetch actions.
Once it's connected, running your customer platform looks like asking for things in the words you'd use with a colleague.
How do you set it up?
An admin or owner does it once, from workspace settings. On Business plans only admins and owners can enable developer mode at all. On Enterprise and Edu an admin grants access under Permissions & Roles → Connected Data, and each enabled person then turns it on under Settings → Apps → Advanced Settings. From there it is Workspace settings → Apps → Create: give it the Munin endpoint, pick the authentication mechanism, click Scan Tools, and publish the draft to the workspace.
OpenAI moves this UI around more than most — it has lived under Connectors and now lives under Apps — so if the path above doesn't match what you're seeing, check OpenAI's own help page for developer mode rather than trusting a screenshot in a blog post. The shape of it is stable even when the menus aren't: an admin enables developer mode, registers an HTTPS MCP endpoint, scans the tools, and publishes.
Two details are worth getting right the first time. Use OAuth rather than a static admin key — an operations person shouldn't be holding a credential that is full access to the org, and Munin supports scoped OAuth precisely so they don't have to. And if you use OAuth, check that your provider actually issues refresh tokens: OpenAI's guidance is that offline_access needs to be advertised in the .well-known discovery metadata, or ChatGPT can lose access once the original authorization expires and your operator has to reauthorise from scratch.
The tool list is a snapshot, not a live feed
Once an admin approves a custom MCP app, ChatGPT works from a frozen copy of its tools and inputs. Changes made on the server afterwards don't apply until an admin refreshes the actions and publishes an update, and a tool definition that changed incompatibly will simply start erroring — nobody gets prompted to go and look. Worth knowing before you upgrade a server a workspace depends on.
What can a non-technical operator actually do?
The work that used to require someone to open four tabs and know where to click:
- 01Ask across the whole record. "Which trial accounts opened a support thread this month and haven't had a reply?" One question, two modules, no export to a spreadsheet.
- 02Answer with the knowledge base behind you. Search what your team has already written, then draft a reply that cites it instead of reinventing it.
- 03Draft outreach and stop. Build a campaign proposal from a segment. The consent check runs, the draft waits for a human — that human being the person who just asked for it.
- 04Turn recurring questions into content. Read what keeps coming up in conversations and file a knowledge-base or blog draft for editorial review.
Is it safe to let ChatGPT touch real customer data?
The honest answer is that it depends on the credential, and the client's defaults only get you part of the way. ChatGPT may ask for confirmation before a write, based on the app's permissions and the context of the action, and it blocks some especially risky ones outright — but may is the word OpenAI uses, and the permissions are configured per app rather than guaranteed per call.
Underneath that, Munin's own split does the structural work. Cheap reversible actions apply directly; publishing a knowledge article, merging two contacts, or sending outreach can only be proposed into a review queue. That is enforced at the tool layer rather than by the client, so it holds whether the person on the other end is careful or not, and whichever client they happen to be using. Agents propose, humans decide isn't a slogan here, it's which tools exist.
On Enterprise and Edu there is a second layer worth using. An admin can select which actions a published app is allowed to take at all before publishing it, refresh that list when the server changes, and control access by group with RBAC. Deselect the writes you don't want reachable and the model cannot reach them, regardless of what it is asked to do.
What you should genuinely think about is where the data goes. Connecting ChatGPT means customer records pass through OpenAI's infrastructure. Munin Cloud is EU-hosted, and that boundary stops at the point you connect a third-party model — so if you have residency obligations, read your DPA before you enable this, not after.
Scope the credential to the person, not the platform
An admin key sees everything in the org. That's the wrong thing to hand someone whose job is answering support conversations.
Munin gates tool visibility by audience at the tool layer, so a scoped credential means the tools they don't need simply aren't there — which is a better protection than a policy asking them not to use them.
Why not just build a dashboard?
Because the dashboard was never the thing people wanted. It was the only way to expose a database to a human, and it came at the cost of every workflow having to be drawn as a screen before it could exist — if it wasn't a button, the company couldn't do it.
A chat client removes that constraint without removing the human. The operator asks for something in their own words; the model maps it to tools; the writes come back for approval. Munin still ships a thin dashboard for settings, auth, and the review queue — the places where a human genuinely needs to see state rather than describe intent.
And the same endpoint serves everyone. The tool catalogue is the canonical surface, so the developer in Cursor and the operator in ChatGPT are clients of one system with one audit log.
When is chat the wrong surface for the job?
When the job is reviewing a hundred things. If your operator's day is working a queue — scanning, comparing, batch-deciding — a list beats a conversation every time, and that is what the review queue in the dashboard is for.
It is also the wrong tool for exactness under repetition. "Do this for all 312 contacts" belongs in a scheduled skill with a written procedure, not in a chat message. Ask a chat client to do something 300 times and it will do 290 of them well.
And full MCP support sits behind a ChatGPT Business or Enterprise workspace, on the web, with an admin publishing the app — a plan and an approval step that a pure web app wouldn't have needed. If that isn't where your team already is, the same endpoint answers to Claude, Claude Desktop, and Claude Code with the same tools, the same scopes, and the same audit log, so the operator you had in mind is not waiting on a procurement decision.
None of which is an argument for picking one surface and living in it. The point of putting the catalogue underneath is that you don't have to: the same endpoint serves the review queue where a person clears decisions, the scheduled skills that handle the 312 contacts on a cadence, and the chat window where somebody asks a question nobody thought to draw a screen for. One tool catalogue, one audit log, one customer record — and the operator reaches for whichever surface suits the work in front of them rather than whichever one a vendor happened to build.
Frequently asked questions
How do I connect a custom MCP server to ChatGPT? An admin enables developer mode, then goes to Workspace settings → Apps → Create, supplies the server's HTTPS endpoint and authentication mechanism, runs Scan Tools, and publishes the draft. Full MCP with write actions is in beta on Business, Enterprise, and Edu; Pro users can connect a server for read and fetch actions. Web only — MCP apps are not available on ChatGPT mobile.
Do I need to be technical to use Munin this way? No, and that's the point of this setup. Once the app is published, you ask for what you want in plain language and confirm the writes it proposes. An admin has to do the initial registration and pick the right credential scope.
Will ChatGPT change my customer data without asking? It may ask for confirmation before a write, depending on the app's permissions and the context, and it blocks some high-risk actions outright. Munin doesn't rely on that: irreversible actions — publishing knowledge articles, merging contacts, sending outreach — can only be proposed into a review queue, enforced at the tool layer, so they wait for a person whatever the client allows.
Can ChatGPT connect to a self-hosted Munin on localhost?
Not directly — ChatGPT connects to remote MCP servers, so a docker compose up install on your laptop or inside a private network isn't reachable. OpenAI points at its Secure MCP Tunnel for that case. Otherwise, expose the server on a public HTTPS hostname, or use Munin Cloud, which is already remote.
Does connecting ChatGPT break EU data residency? It changes the picture, so check your obligations. Munin Cloud is EU-hosted, but connecting a third-party model means customer data passes through that provider's infrastructure. Read the relevant DPA before enabling it if residency matters to you.
Is this better than the Munin dashboard? For asking questions and drafting, usually yes. For working through a queue of decisions, a list is better than a conversation, which is what the dashboard's review queue exists for. Most teams use both, and both are clients of the same endpoint.
Can I use Claude or Gemini instead? Yes. Munin serves standard MCP with no client-specific behaviour, so Claude, Claude Desktop, Claude Code, Cursor, Codex, and Gemini all connect to the same endpoint with the same tools and the same audit log.
The short version
- ChatGPT developer mode registers a remote MCP server as a custom app from an HTTPS endpoint. Full MCP with write actions is in beta on Business, Enterprise, and Edu, web only; Pro gets read and fetch.
- An admin enables developer mode, then Workspace settings → Apps → Create, Scan Tools, publish. OpenAI moves this UI, so check their help page if the menus have shifted.
- Use scoped OAuth, not an admin key, and make sure your provider advertises
offline_accessso ChatGPT can refresh rather than dropping the connection. - Munin restricts agents to proposing publishes, merges, and outreach at the tool layer, so those wait for a person whatever the client's own confirmation settings do.
- Chat suits asking and drafting, a list suits working a queue, and a scheduled skill suits doing something 300 times exactly — and Munin serves all three from one endpoint with one audit log.
Connect it, then ask which customers went quiet this month and what you should do about it. Munin Cloud is free to start on, and the MCP tool reference shows what the model will have to work with.
The people who know the customers best were never the ones who wanted a terminal.