A Softr MCP server turns your published no-code app into something ChatGPT can query directly. Softr's own documentation describes MCP as an integration that lets AI clients connect to your app's data and tools, and the setup runs through publish, copy URL, connect, authorize. This article walks through that flow and the limits you should know before shipping it.
Part 2 of a series, after Connect MCP Server to ChatGPT: Full Setup.
What a Softr MCP server actually is
A Softr MCP server is a per-app endpoint that Softr generates so AI clients can reach that app's data and tools. Softr's own help documentation describes the feature as turning an app into an MCP server, reachable by ChatGPT, Claude, Cursor and other MCP-compatible clients. Nothing is hosted or coded by you. The endpoint exists because Softr publishes it, and it stops working the moment you unpublish or disable the setting. The Model Context Protocol itself is the open standard that defines how an AI client discovers and calls those tools, published by Anthropic November 2024 and now maintained at modelcontextprotocol.io.
Enabling MCP in Softr settings and publishing the app
MCP is switched on per app in Settings, under the App as MCP panel, and it only becomes reachable once the app is published. Until then there is no live server URL, so a ChatGPT connector pointed at the app fails during the handshake rather than at the tool call.
The exact click path
- Open the app and go to Settings, then choose App as MCP in the settings panel.
- Toggle MCP for users on.
- Copy the server URL that appears in the panel.
- Return to the app, click Publish in the top right, and confirm the publish dialog.
- Re-test the connector in ChatGPT once the published version is live.
The URL stays the same across publishes, but the endpoint only responds for the published version. Softr's own documentation walks through the same sequence: open Settings, select App as MCP, enable MCP for users, then publish (Softr docs).
What the toggle does and does not do
The toggle exposes the app to any MCP client that holds the URL and completes authorization. It does not create a separate read-only scope. Softr's authorization screen, shown during the ChatGPT connection, lists both viewing application data and executing tools that modify application data, so if your app has write actions an authorized client can reach them (Softr docs).
| Setting or action | Where it lives | Effect | Required before the connector works |
|---|---|---|---|
| App as MCP toggle | Settings panel | Exposes the app to authorized MCP clients | Yes |
| MCP for users | App as MCP panel | Grants per-user access to the MCP endpoint | Yes |
| Server URL | App as MCP panel | Address the ChatGPT connector targets | Yes |
| Publish | Top right of the app | Makes the endpoint live | Yes |
| Read-only scope | Not offered | No separate view-only credential exists | n/a |
The scope list matters if your app already has write actions. Softr's authorization screen bundles viewing application data and executing tools that modify application data into the same consent, so an authorized client inherits both unless the app itself restricts them. Plan the toggle for apps that only read (Model Context Protocol spec).
Connecting the server URL to ChatGPT
Connecting the URL in ChatGPT requires developer mode, a new connector, and one OAuth login. ChatGPT does not auto-discover the Softr endpoint; you paste it into a connector you create yourself. OpenAI's connector documentation covers the same mechanism for custom MCP servers, and Softr's help center publishes client-specific setup guides for ChatGPT, Claude, Cursor and other tools.
Open ChatGPT settings, go to Connectors, and add a custom MCP connector. Give it a name, paste the Softr server URL copied from settings, and continue. ChatGPT redirects to Softr, where you sign in with the same account that owns the app and approve the requested scopes. After approval, the connector appears in the tool picker for new conversations.
What the authorization screen grants
The authorization screen grants one broad scope: read and write access to your app under your own Softr identity, not a restricted service account. Softr's consent text says the client can view application data and execute tools that modify application data, and there is no checkbox for read-only access during the consent step. In practice the client can therefore list, create, edit and delete records wherever your role allows it (Softr documentation).
That matters because the MCP client acts as you. Records it creates, edits or deletes carry your permissions, and the app's own user roles decide what those permissions are. If your app hides certain records from a given role, the MCP client inherits that restriction rather than bypassing it — a Viewer role sees only what a Viewer sees.
| Setting | What the screen offers | Result for the connected client |
|---|---|---|
| Read access | Granted on connect | Lists and reads app data as you |
| Write access | Granted on connect | Creates, edits and deletes as you |
| Read-only scope | Not offered in consent | Cannot be selected at authorization |
| Role inheritance | Applied from your app | Limited to your role's visibility |
Revocation runs through two paths: the connector settings in ChatGPT, or the Softr admin side by disabling MCP for users. The Softr-side toggle cuts off every connected client at once, which is the fastest way to stop access if a URL leaks — worth doing before rotating credentials in the ChatGPT connector itself.
Querying app data from a ChatGPT conversation
Once connected, ChatGPT reads your Softr app the way it reads any tool: it enumerates tables and operations, then filters rows and returns their field values. Answers come from your live data, never from model training. Softr documents the same read path for its MCP integration, so any client that supports tool calls can follow it (Softr docs).
A practical test is to ask about a known record rather than a broad one. Naming a specific event or category forces the client to locate the table and filter it, which surfaces configuration problems immediately. Broad questions can be answered from the model's own guesses, which makes a broken connector look like a working one.
A worked example
An events directory built in Softr might hold a harvest market in Riverside and a technology expo. Asking what technology events are upcoming makes the client find the events table, filter on category, and return the expo with its date and details. Asking what featured events an artist friend would like returns a featured-category record plus its app URL, which is the client passing through a field the app already stores. The order of operations is always the same:
- Enumerate the exposed tables and their fields.
- Match the question to one table and a filter field.
- Fetch matching rows and read back field values.
- Pass stored values, such as the app URL, straight through to the reply.
Why the table structure decides answer quality
The connector exposes whatever fields the app defines, so vague names, free-text categories and missing dates produce vague answers. A Category single-select filter returns exact matches, while a free-text Notes field depends on wording. Softr's own help centre covers building and mapping these fields (Softr help). Renaming fields and adding a category column before connecting is faster than debugging after. The specs below define what the client can filter on (MCP spec, JSON Schema).
| Field type | Filterable in the client | Typical answer quality |
|---|---|---|
| Single select | Yes, exact match | Precise, one record |
| Date | Yes, range compare | Precise, sorted by date |
| Free text | Weak, substring only | Vague, wording dependent |
| Empty or null | No | Relies on model guesswork |
A working Softr MCP setup should return a known record on the first named query. When it does, the connector, the schema and the client are all aligned.
Softr MCP server limits and the safe setup
The MCP endpoint inherits the app's visibility and permission model, so anything visible to the authorized user is reachable by the client. There is no separate MCP-level permission layer in the Softr integration as documented. Plan the app's own roles before you hand out the server URL.
A short checklist covers most of the risk:
- Publish the app only when you intend the endpoint to be live.
- Review user roles and field-level visibility before enabling MCP for users.
- Create test records in a separate app rather than in production data.
- Treat the server URL like a credential, since anyone who completes authorization reaches the same app.
- Turn the MCP for users toggle off when the integration is not in active use.
Softr's privacy and data-processing documentation governs where app data is stored and who processes it, and that layer sits under the MCP integration rather than replacing it.
When to skip MCP entirely
If you only need to read data, a direct table view or a CSV export is simpler than an MCP connector. The connector earns its place when the interaction is conversational and iterative, such as non-technical teammates asking questions about a directory, an event list or a resource directory they cannot easily filter themselves. Softr positions the integration as a way to let users reach app data through the AI tools they already use instead of visiting the visual interface, and that framing sets the right expectation: it is a convenience layer over the app, not a replacement for its pages.
FAQ
- Is a Softr MCP server free? The MCP integration is a Softr app feature, so access depends on the plan attached to your Softr workspace rather than a separate MCP charge. Check Softr's current pricing page for what your plan includes before assuming the feature is available.
- Which AI clients can connect to a Softr MCP server? Softr publishes setup guides for ChatGPT, Claude, Cursor and other MCP-compatible clients. Any client that supports a custom server URL and OAuth authorization can attempt the connection.
- Does the app need to be published first? Yes. Softr's settings panel states that the MCP setting takes effect only after the app is published, and an unpublished app has no live server URL for a client to reach.
- Can I limit the connector to read-only access? The consent screen Softr shows during authorization lists both viewing data and executing tools that modify data. Limiting access means limiting the app's own user role permissions, not the MCP consent.
- What happens if I disable MCP for users? The server URL stops working for every connected client. Disabling the toggle in settings is the fastest way to revoke access, and individual clients can also be removed from the connector list inside the AI tool.
Fork this article
Start a new branch from the same video, shaped your way. You keep the credit; the original keeps the attribution.
A fork in another language is filed as a translation of this article, so the two pages point at each other. You can unlink it later from the editor.
0/240
You are creating
- Format
- For
- Language
- Source
- Your angle
You will be asked to sign in before it is generated.
Buy credits