June logo
JuneDocumentation
June MCP

Set up your client

Add June MCP to Claude Code, Codex, Cursor, OpenCode or any client that adds remote MCP servers with a sign-in, then sign in with your June account.

Every client needs the same two things: June's address, and a sign-in with your June account in your browser. Each client, and each computer, signs in on its own.

The client uses the integrations in your personal space, never an organization's. With several June accounts, sign in with the one that holds them.

https://www.dearjune.ai/api/mcp

Add June for all your projects:

claude mcp add --transport http --scope user june https://www.dearjune.ai/api/mcp

--scope user keeps it in ~/.claude.json, for every project on this computer. Without --scope, June is added to the current project only. --scope project writes it to the repository's .mcp.json, for everyone who works there; each of them signs in with their own June account.

Sign in:

claude mcp login june

Or, inside Claude Code, run /mcp, pick june and authenticate. Your browser opens June's sign-in; sign in with your June account.

Check it: claude mcp list shows june with ✔ Connected, or ! Needs authentication until you sign in. Then ask Claude Code to list your June integrations.

Add June:

codex mcp add june --url https://www.dearjune.ai/api/mcp

Codex keeps it in ~/.codex/config.toml, which the Codex command line, the ChatGPT desktop app and the editor extension share.

Codex gives up on a tool after 60 seconds, the same as June's run limit, so a slow answer can be cut off on Codex's side first. Give it room:

[mcp_servers.june]
url = "https://www.dearjune.ai/api/mcp"
tool_timeout_sec = 120

Sign in:

codex mcp login june

Your browser opens June's sign-in; sign in with your June account. On a computer without a browser, add --no-browser, open the address it prints elsewhere and paste back the address you land on.

Check it: codex mcp list shows june, and so does /mcp inside Codex. Then ask Codex to list your June integrations.

Add June to ~/.cursor/mcp.json for every workspace, or to .cursor/mcp.json in one project:

{
  "mcpServers": {
    "june": {
      "url": "https://www.dearjune.ai/api/mcp"
    }
  }
}
When Cursor asks, sign in with your June account in the browser window it opens.
Check it: june shows, switched on, on Cursor's Customize page. Then ask Cursor's chat to list your June integrations.

Add June to ~/.config/opencode/opencode.json for every project, or to opencode.json at a project's root:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "june": {
      "type": "remote",
      "url": "https://www.dearjune.ai/api/mcp"
    }
  }
}

Sign in:

opencode mcp auth june

Your browser opens June's sign-in; sign in with your June account. OpenCode also asks on its own the first time it uses June.

Check it: opencode mcp list shows june and whether it is signed in. Then ask OpenCode to list your June integrations.

Any client works that adds a remote MCP server by its address over HTTP and signs in with OAuth, registering itself with the sign-in or naming itself by a client metadata address. Paste the address above as the server URL, and sign in with your June account when the client opens your browser.

There is no key or client ID to paste, so a client that only accepts one cannot connect. Neither can a client that only speaks the older SSE transport, or one that runs inside a web page and calls the server from your browser.

If the check fails

  • Not signed in, or needs authentication: sign in again with the step above.
  • Signed in with the wrong June account: sign out, with claude mcp logout june, codex mcp logout june or opencode mcp logout june, then sign in again with the right one.
  • June lists nothing: connect your tools on the Integrations page in your personal space first. June MCP uses what is there.

Stop a client

Sign a client out to keep June set up in it, ready for the next sign-in; remove June to delete it from the client.

ClientSign outRemove
Claude Codeclaude mcp logout juneclaude mcp remove june
Codexcodex mcp logout junecodex mcp remove june
OpenCodeopencode mcp logout junedelete june from opencode.json
Cursorswitch june off on the Customize pagedelete june from mcp.json

June checks the sign-in on every request but keeps no list of the clients signed in to it, so it cannot sign one out for you. If you lose a computer with a signed-in client, sign it out there if you still can; if not, ask support.

What June does not do

  • It does not list your clients or show which ones are signed in.