MCP Servers
MCP (Model Context Protocol) servers give your agents extra tools, such as a filesystem, GitHub or a database. The Gateway starts or connects to each server you list in its config, and the server’s tools then show up for your agents. MCP Servers in Gateway Settings lets you manage that list from your Mac or iPhone instead of editing the config file.
Opening MCP Servers
Section titled “Opening MCP Servers”- In Gateway Settings, choose MCP Servers in the sidebar, below Plugins. It works on macOS and iOS.
- Press ⌘ K and choose MCP Servers….
- Choose Open MCP Server on a transcript tool card. When Pincer has read that chat’s effective tools, the link uses the Gateway’s exact tool ID to open the matching server, including names that share the same sanitized prefix. Otherwise it uses the existing name match and opens the server list when the server can’t be resolved.
Searching the sidebar for mcp, oauth, stdio or sse also finds it. The sidebar row shows how many changes are unsaved, and a dot when a server has an error or needs sign-in.
The server list
Section titled “The server list”Each row shows the server’s name, how it starts (its command, or its URL) and a status. The list keeps the status title on one line; open a server to read its full status and error details:
| Status | Meaning |
|---|---|
| Connected | The server is running. It adds · N tools when the Gateway reports how many. |
| Connecting… / Idle | The Gateway is connecting, or hasn’t needed the server yet. |
| Error | The connection failed. The error is on a second line. |
| Retrying at time | The Gateway is waiting to try again after an error. |
| Needs Sign-In | The server uses OAuth and you haven’t signed in. |
| Sign-In Expired | You signed in before, but the session ran out. Sign in again. |
| Waiting for Sign-In… | A sign-in has started and isn’t finished. |
| Disabled | The server is turned off. |
| Invalid Config | It has neither a command nor a URL. |
| Not Saved | You added it and haven’t saved yet. |
| Status Unknown | This Gateway doesn’t report MCP status. Tools show up once an agent connects to the server. |
An OAuth server that’s signed in says Signed in as account, or Signed in. Choose a row to open the server.
If a refresh is already running, another refresh queues a new fetch and waits for it. The latest fetch controls the loading notice: a successful refresh clears an earlier refresh error, while a failed latest refresh keeps its error visible.
From Plugins
Section titled “From Plugins”Plugins can declare MCP servers of their own. They appear in a From Plugins section below your servers, with the server’s name and the plugin it belongs to. Each row shows one status: Unavailable if your Gateway can’t run the server, otherwise its live status when the Gateway reports one, otherwise its sign-in badge (Signed in, Sign-in required, Waiting for Sign-In…). These are read-only: you can’t edit, disable or remove them here. Choose one to open its plugin, and change it in the plugin’s settings.
Adding and editing
Section titled “Adding and editing”Choose + to add a server, or open a server and choose Edit. Pick how it connects:
Validation appears for a field after you edit that field. Choose Done to show any remaining problems before saving the draft.
- stdio starts a program on the Gateway host. Set the Command, Arguments and, if needed, a working directory and Environment variables.
- Streamable HTTP connects to a remote URL. Add Headers if the server needs them, such as
Authorization. - SSE is the older remote transport. Use it only if the server doesn’t offer Streamable HTTP.
Names can use letters, numbers, ., _ and -, and must start with a letter or number.
Advanced
Section titled “Advanced”Open Advanced in the editor for optional settings. Leave a field empty and it isn’t written to the config.
- Timeouts: Connection timeout and Request timeout, in milliseconds. Whole numbers only. When empty, the Gateway uses 30 seconds to connect and 60 seconds per request.
- Tool filter: Only allow tools and Hide tools take tool name patterns, one per row.
*matches any characters and is the only wildcard. The Gateway applies the allow list first, then hides anything that matches the hide list. - TLS (remote servers): Verify TLS certificate is on by default. Turn it off only for a server you trust, such as one with a self-signed certificate. Client certificate and Client key are file paths on the Gateway host, for servers that need mutual TLS.
- OAuth (remote servers that use OAuth sign-in): turn on Requires OAuth sign-in and set an optional Scope right under it. In Advanced, Sign-in is Shared (one sign-in for everyone) or Per person (each person signs in), and Auth profile picks a saved auth profile. Per-person sign-in can’t use an auth profile.
Switching a server to stdio removes the remote-only settings (TLS and OAuth), and the editor tells you which ones before you save.
Secrets
Section titled “Secrets”The Gateway hides the values of environment variables and headers when it sends its config, so Pincer shows them as •••• (saved). Leave a value alone and the saved secret stays. Type a new value to replace it.
Renaming a server needs its secrets typed in again. The Gateway can only keep a hidden value at the same name, so Pincer asks you to re-enter each one before you can save.
The Gateway doesn’t hide Arguments. Pincer masks values that look like secrets, such as ones after --token or --api-key, but they’re still stored in plain text in the config. Put secrets in Environment (or Headers), not in arguments.
Anything in the server’s config that Pincer doesn’t have a field for is kept when you save.
Enable, disable and remove
Section titled “Enable, disable and remove”Use the Enabled switch to turn a server off without losing its settings. Choose Remove to delete it. Like edits, both wait for Review & Save.
Undoing a removal resets only that server’s fields. Names containing a dot, such as acme.docs, remain separate servers: their unsaved text and validation errors are preserved when you undo changes to acme.
Review & Save
Section titled “Review & Save”Changes stay in a draft until you choose Review & Save, the same as the other Gateway Settings pages. You see what will change first, then save. The Gateway applies MCP changes live, so no Gateway restart is needed, and the list refreshes when it does. Revert throws the draft away.
Test Connection
Section titled “Test Connection”Choose Test Connection to try a server and see the result on the spot. In the editor it tests the settings you’ve typed, without saving. On the server’s page it tests the saved server, so save your changes first. The result is one of:
- Connected · 12 tools, which can also count resources and prompts.
- Needs sign-in. The server uses OAuth and nobody has signed in yet. In the editor, save first, then sign in from the server’s page. On the server’s page, use Sign In, then test again.
- Couldn’t connect, with the reasons below it and Copy Details.
If you change the settings after a test, the result is dimmed and marked Settings changed since the test. The button only appears when your Gateway supports it.
Reconnect
Section titled “Reconnect”If a server is in Error, or you fixed something on the Gateway host, choose Reconnect on the server to make the Gateway drop and reconnect it. The status goes to Connecting… and then Connected or Error.
OAuth sign-in
Section titled “OAuth sign-in”Some remote servers use OAuth. For those, the server page has Sign In…:
- Choose Sign In…. Pincer opens the provider’s page in a secure browser window (or Open in Browser if that can’t open).
- Approve access. The Gateway receives the reply itself and Pincer returns to the app.
- The status changes to Connected, and Signed in as account appears.
Cancel stops a sign-in that’s under way. Sign Out clears the Gateway’s saved sign-in for that server. When the status is Sign-In Expired, choose Sign In… again.
Viewing a server’s tools
Section titled “Viewing a server’s tools”Choose Tools on a server to open the Tools inspector for your default agent, filtered to that server. Its tools show as coming from an MCP server, with Allowed or Denied and the reason. If a server couldn’t connect, the inspector notes it, for example “MCP server postgres couldn’t connect: spawn uvx ENOENT”.
What your Gateway needs
Section titled “What your Gateway needs”- Editing works on any Gateway that offers
config.getandconfig.patch: add, edit, remove, enable and disable. - From Plugins works on Gateways that can inspect plugins.
- Test Connection, live status, Reconnect and in-app sign-in only appear when your Gateway supports them. Current OpenClaw releases don’t, so for OAuth servers Pincer shows the commands to run on the Gateway host instead, with a Copy button:
openclaw mcp login <name>to sign in andopenclaw mcp logout <name>to sign out. The proposals are mcp.status, mcp.reconnect and mcp.oauth.
Until then, status comes from the Tools inspector when it’s available, so it may read Status Unknown for servers that haven’t connected yet.
Try it in the demo
Section titled “Try it in the demo”Everything here works in Try the Demo, with sample servers in each state: linear needs sign-in, notion’s sign-in has expired, postgres has an error, sentry is disabled, and filesystem, home-assistant and github are connected. Under From Plugins, a linear server is signed in and another needs sign-in. Nothing touches a real Gateway.
Environment and header values from the Gateway can be strings, numbers or booleans. Large numbers remain displayable without changing their stored values; saved secrets remain redacted.