How to connect MCP tools on your phone and desktop
Understand remote and local MCP connections, choose permissions, test one tool, and diagnose authentication or connection problems.
An AI assistant becomes more useful when it can reach the information needed for a task. That could mean reading a project issue, finding a document, or checking a calendar. Model Context Protocol, usually shortened to MCP, gives applications a common way to connect to those capabilities.
Each server you connect is also a new place your data can go. Start with one service, one clear job, and the smallest set of permissions that gets it done. One working connection is easier to understand than a long list of integrations you haven’t used.
Know what the connection provides
The MCP architecture guide explains the roles of hosts, clients, and servers. For setup, the practical question is what the chosen server exposes: callable tools, readable resources, reusable prompts, or a combination.
A connection doesn’t automatically include every feature of the underlying service. A calendar server that lists events can’t necessarily create invitations. Read the server’s own list of capabilities and check who publishes it. Choose a publisher you can identify, with current setup instructions and a clear explanation of how it handles data.
Keep MCP separate from the model itself. A model generates responses; an MCP server provides access to something outside the conversation. Using a local model doesn’t make a remote server local.
Choose remote HTTP or local stdio
The transport specification describes two ways to connect: Streamable HTTP and stdio. A remote HTTP connection uses a server address. A stdio connection starts a program on the same machine and talks to it through that program’s input and output.
On a phone, a remote connection is usually the place to start. A command that starts a server on your desktop won’t run on your iPhone just because you paste it into a mobile app. Whether local commands work depends on the app and the operating system.
Also remember that localhost means the device making the request. An address that works on your laptop won’t point to that laptop when you open it on your phone. Use a connection method that requires sign-in. Don’t open an unprotected local service to the internet just to make an example work.
Check the account and permissions
Before you sign in, compare the server address with the publisher’s documentation. If the server uses OAuth, check the account and the access it asks for on the sign-in page. A work account and a personal account can hold different data, even in the same app.
For a token-based setup, use a token that only covers the service and task you need. Enter it only in the app’s token field. Don’t paste tokens into a chat, a screenshot, or a shared troubleshooting document. The MCP authorization guide gives technical background on how sign-in works.
Reading data and changing data are separate permissions. Start with read-only access if the service offers it. Add write access only when you have a specific action to test, in a place you can check afterward.
Test one small, observable action
Suppose your goal is to find open issues in a project. Use a test project without sensitive content and ask:
List up to five open issues in the demo project. Include each issue’s title and link. Don’t create, edit, or close anything.
Check the result in the service itself. Confirm that the project, links, and account are the ones you meant. If nothing comes back, find out whether the project is empty, access is missing, or the request failed.
Then, if you need a write action, use a disposable test item. Ask for one precise change, review any approval, and verify the outcome in the original service. Keep deletion and external messaging out of the first connection test.
Diagnose the failed step
Connection problems are easier to fix once you know which step failed:
- No connection: check the URL, transport, network, and whether the server is running.
- Sign-in repeats: check the selected account, expired authorization, and the documented callback requirements.
- Connected but no tools: check which capabilities the server actually provides and what your account can access.
- A tool fails: inspect its required inputs, service limits, and the service’s own error message.
When you ask for help, share the error with private details removed, plus the app and server versions. Remove tokens, private document contents, and account IDs. Don’t keep retrying a write action before you check whether the last attempt went through.
Build a connection you can maintain
Keep a short record of the service, its owner, the account used, the access you granted, and how to revoke it. Check permissions again after adding capabilities. Removing a connection in the app and revoking access at the service are two different steps. To fully end access, use the service’s own controls too.
In Mono, you add MCP servers under Settings, then Integrations: by server URL or, where your device supports it, a local command, with OAuth or a token for sign-in. Connected servers can also power skills. Read our AI privacy guide before you connect sensitive material: a tool provider is one more participant in the data path. Mono is currently on a waitlist. Join the waitlist for updates.
