Connect external MCP servers to chat
The chat assistant has a lot of built-in tools, but you can add more. Any MCP-compatible server can be plugged into Moonjar’s chat — the assistant sees the new tools and can call them in any conversation. This is the outbound direction: your Moonjar chat reaching out to other services. (For the inbound direction — external Claude clients reaching into Moonjar — see Connect Moonjar to Claude.)
Before you start
Section titled “Before you start”- The MCP server’s URL.
- Any authentication the server needs — an API key (passed as a header) or OAuth credentials (Moonjar runs the OAuth dance for you).
- Open Moonjar.
- Go to Settings → MCP servers (or the MCP servers screen under More) — [TODO: VERIFY exact path].
- Tap Add.
- Fill in:
- Name — a short identifier. Lowercase, alphanumeric, hyphens or underscores; up to 40 characters. The chat assistant uses this name to namespace the server’s tools so they don’t collide with built-ins.
- Display name — what the server is called in the UI.
- URL — the MCP endpoint.
- API key (optional) — if the server needs a static key, enter it here.
- Headers (optional) — custom HTTP headers the server needs.
- Save. Moonjar tries to discover the server’s tools by handshaking with it.
- If the server supports OAuth (rather than a static key), Moonjar shows Authenticate — tap it, sign in to the third-party service, return to Moonjar. The token comes back through Moonjar’s OAuth callback and is stored against the server.
After tools are discovered, you choose which ones to expose to the chat assistant — see Pick which tools to expose below. Enabled tools appear alongside the built-ins; the assistant uses them when relevant, you don’t have to invoke them by name.
Pick which tools to expose
Section titled “Pick which tools to expose”Connected MCP servers publish their full tool catalogue, but most catalogues are noisy — Microsoft Graph alone has dozens of tools, many of which you’ll never use. Every tool counts against your chat allowance (the schema gets sent on every turn) and adds latency, so Moonjar lets you allow-list per server.
- Open the server’s detail screen.
- Each tool the server published is listed with its bare name
(e.g.
get_issue, notmcp_linear__get_issue) and the description the server returned. - Tap a tool to toggle whether it’s exposed. Toggling is instant — the next chat turn picks up the new allow-list.
Defaults:
- A newly-added server starts with no tools enabled. Opt in to each one you want.
- Older servers added before this feature shipped keep their legacy behaviour — every published tool is enabled — until you open the detail screen and change the selection.
If the server’s catalogue changes (the provider adds new tools, or you tap Test connection to refresh), the new tools land disabled by default so they don’t quietly start consuming chat budget.
Test a connection
Section titled “Test a connection”From the server’s detail screen, tap Test connection. Moonjar re-runs tool discovery and reports the result — if the server is reachable, how many tools were found, and any error.
Edit or remove
Section titled “Edit or remove”- Edit — change the URL, key, headers, or display name.
- Disable — keep the server registered but stop the assistant from seeing its tools.
- Reset OAuth — drop the stored token and re-authenticate from scratch.
- Delete — remove the server entirely. Tools disappear from the assistant’s surface immediately.
Limits
Section titled “Limits”- Maximum number of MCP servers per account is bounded
([TODO: VERIFY exact cap from
MAX_SERVERS_PER_USER]). The picker shows the limit when you hit it. - Server name must be 1–40 lowercase characters, hyphens, or underscores.
- The MCP URL must be HTTPS (or localhost for development); other schemes are rejected.
- An OAuth-protected server’s token is bound to one third-party account. To connect a different account, reset the OAuth and re-authenticate.
See also
Section titled “See also”- What the chat can do — the built-in tools alongside which yours appear.
- Connect Moonjar to Claude — the inbound direction.