Feature request: add MCP remote using oauth #707

Closed
opened 2026-02-16 17:27:58 -05:00 by yindo · 28 comments
Owner

Originally created by @benjamine on GitHub (Jul 14, 2025).

Originally assigned to: @thdxr on GitHub.

using OAuth 2.1, installing an MCP server would get much simpler and secure.

entering just a url (eg https://api.githubcopilot.com/mcp/ for github mcp), the CLI can trigger an oauth flow to complete authorization without copying secrets or putting them in config or env variables.

the process would be very similar to what you do already for authorizing a model.

VSCode has an implementation as MCP host that can be used for reference.

example server: https://github.com/github/github-mcp-server

update: Claude Code added this too (MCP server is added with a cli command, and then auth flow is done when starting the tUI, I guess it makes sense bc there it handles re-connect, disconnect too)

Originally created by @benjamine on GitHub (Jul 14, 2025). Originally assigned to: @thdxr on GitHub. using OAuth 2.1, installing an MCP server would get much simpler and secure. entering just a url (eg https://api.githubcopilot.com/mcp/ for github mcp), the CLI can trigger an oauth flow to complete authorization without copying secrets or putting them in config or env variables. the process would be very similar to what you do already for authorizing a model. VSCode has an implementation as MCP host that can be used for reference. example server: https://github.com/github/github-mcp-server update: Claude Code added this too (MCP server is added with a cli command, and then auth flow is done when starting the tUI, I guess it makes sense bc there it handles re-connect, disconnect too)
yindo closed this issue 2026-02-16 17:27:58 -05:00
Author
Owner

@bobbypiper commented on GitHub (Jul 17, 2025):

Would be ideal for access to Sentry's MCP https://docs.sentry.io/product/sentry-mcp/

@bobbypiper commented on GitHub (Jul 17, 2025): Would be ideal for access to Sentry's MCP https://docs.sentry.io/product/sentry-mcp/
Author
Owner

@adrielp commented on GitHub (Jul 24, 2025):

1 to this. Would be great for the Honeycomb MCP as well. OAuth is going to become even more common given the updates to the MCP spec. Also being able to clearly call out that the remote transport is http would be nice.

@adrielp commented on GitHub (Jul 24, 2025): ➕1 to this. Would be great for the [Honeycomb MCP](https://docs.honeycomb.io/integrations/mcp/configuration-guide/) as well. OAuth is going to become even more common given the updates to the MCP spec. Also being able to clearly call out that the `remote` transport is `http` would be nice.
Author
Owner

@idl3 commented on GitHub (Aug 3, 2025):

This would be useful for us before we can fully swap over as we have built quite a lot of workflows that rely on OAuth MCP's like Linear + Sentry.

@idl3 commented on GitHub (Aug 3, 2025): This would be useful for us before we can fully swap over as we have built quite a lot of workflows that rely on OAuth MCP's like Linear + Sentry.
Author
Owner

@wewelll commented on GitHub (Aug 5, 2025):

+1 on this feature request.

Github and Notion now support Remote MCP servers, which simplifies a lot the setup process

@wewelll commented on GitHub (Aug 5, 2025): +1 on this feature request. Github and Notion now support Remote MCP servers, which simplifies a lot the setup process
Author
Owner

@samholmes commented on GitHub (Aug 8, 2025):

This is also the official means of authenticating for Asana (https://developers.asana.com/docs/using-asanas-mcp-server)

@samholmes commented on GitHub (Aug 8, 2025): This is also the official means of authenticating for Asana (https://developers.asana.com/docs/using-asanas-mcp-server)
Author
Owner

@ThomasAlbrt commented on GitHub (Aug 10, 2025):

That would be fantastic as the current process is quite tedious.

@ThomasAlbrt commented on GitHub (Aug 10, 2025): That would be fantastic as the current process is quite tedious.
Author
Owner

@BN-JuzzyP commented on GitHub (Aug 12, 2025):

+1

@BN-JuzzyP commented on GitHub (Aug 12, 2025): +1
Author
Owner

@thdxr commented on GitHub (Aug 12, 2025):

yep on my list

@thdxr commented on GitHub (Aug 12, 2025): yep on my list
Author
Owner

@wkronmiller commented on GitHub (Aug 30, 2025):

As a temporary workaround, you can use mcp-remote, for example:

    "linear": {
      "type": "local",
      "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"]
    },

Just run npx mcp-remote https://mcp.linear.app/sse directly from the CLI to log in, first.

@wkronmiller commented on GitHub (Aug 30, 2025): As a temporary workaround, you can use `mcp-remote`, for example: ``` "linear": { "type": "local", "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"] }, ``` Just run `npx mcp-remote https://mcp.linear.app/sse` directly from the CLI to log in, first.
Author
Owner

@benjamine commented on GitHub (Aug 30, 2025):

As a temporary workaround, you can use mcp-remote, for example:

    "linear": {
      "type": "local",
      "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"]
    },

Just run npx mcp-remote https://mcp.linear.app/sse directly from the CLI to log in, first.

the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file.

reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that)

ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this

@benjamine commented on GitHub (Aug 30, 2025): > As a temporary workaround, you can use `mcp-remote`, for example: > ``` > "linear": { > "type": "local", > "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"] > }, > > ``` > > Just run `npx mcp-remote https://mcp.linear.app/sse` directly from the CLI to log in, first. the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file. reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that) ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this
Author
Owner

@rekram1-node commented on GitHub (Aug 30, 2025):

@benjamine it isnt up to me but I do like the bun secret storage

@rekram1-node commented on GitHub (Aug 30, 2025): @benjamine it isnt up to me but I do like the bun secret storage
Author
Owner

@wkronmiller commented on GitHub (Aug 30, 2025):

As a temporary workaround, you can use mcp-remote, for example:

    "linear": {
      "type": "local",
      "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"]
    },

Just run npx mcp-remote https://mcp.linear.app/sse directly from the CLI to log in, first.

the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file.

reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that)

ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this

mcp-remote already supports oauth login (e.g. for Linear), and can therefore be used as a temporary work-around for the lack of secrets support in opencode

@wkronmiller commented on GitHub (Aug 30, 2025): > > As a temporary workaround, you can use `mcp-remote`, for example: > > ``` > > "linear": { > > "type": "local", > > "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"] > > }, > > ``` > > > > > > > > > > > > > > > > > > > > > > > > Just run `npx mcp-remote https://mcp.linear.app/sse` directly from the CLI to log in, first. > > the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file. > > reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that) > > ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this `mcp-remote` already supports oauth login (e.g. for Linear), and can therefore be used as a temporary work-around for the lack of secrets support in opencode
Author
Owner

@benjamine commented on GitHub (Aug 30, 2025):

As a temporary workaround, you can use mcp-remote, for example:

    "linear": {
      "type": "local",
      "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"]
    },

Just run npx mcp-remote https://mcp.linear.app/sse directly from the CLI to log in, first.

the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file.

reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that)

ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this

mcp-remote already supports oauth login (e.g. for Linear), and can therefore be used as a temporary work-around for the lack of secrets support in opencode

my bad sorry, didn't realize it supports oauth now, it stores secrets in a file in home dir it seems, but it makes sense as a workaround 👍 thanks

@benjamine commented on GitHub (Aug 30, 2025): > > > As a temporary workaround, you can use `mcp-remote`, for example: > > > ``` > > > "linear": { > > > "type": "local", > > > "command": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse"] > > > }, > > > ``` > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Just run `npx mcp-remote https://mcp.linear.app/sse` directly from the CLI to log in, first. > > > > the feature request is not to have MCP remote (opencode already supports that well), it's to connect without creating api keys or copy-pasting secrets / putting a secret in a config file. > > > > reconnect also becomes much simpler, bonus point if supporting refresh tokens (although I haven't seen other coding CLIs support that) > > > > ps: bun recently launched secret storage, just suggesting maybe worth looking into for implementing this > > `mcp-remote` already supports oauth login (e.g. for Linear), and can therefore be used as a temporary work-around for the lack of secrets support in opencode my bad sorry, didn't realize it supports oauth now, it stores secrets in a file in home dir it seems, but it makes sense as a workaround 👍 thanks
Author
Owner

@clouatre commented on GitHub (Sep 14, 2025):

Enterprise OAuth Need Validated

Our enterprise MCP testing confirms the critical need for native OAuth 2.1 support.

Enterprise Use Case: Multi-tenant Atlassian deployments (Slalom, Plusgrade, PointsBU) requiring separate OAuth sessions per tenant.

Current Limitation: Proxy solutions like mcp-remote share OAuth sessions via coordination lockfiles, preventing true instance isolation:

Claude Code Reference: Native SSE + OAuth implementation handles this seamlessly:

  • Separate OAuth sessions per server instance
  • Built-in re-authentication flows
  • No coordination conflicts

Impact: Without native OAuth support, OpenCode enterprise users face architectural limitations that prevent complex multi-tenant MCP workflows.

This feature would eliminate dependency on third-party proxy solutions and enable enterprise-grade MCP deployments.

@clouatre commented on GitHub (Sep 14, 2025): ## Enterprise OAuth Need Validated Our enterprise MCP testing confirms the critical need for native OAuth 2.1 support. **Enterprise Use Case**: Multi-tenant Atlassian deployments (Slalom, Plusgrade, PointsBU) requiring separate OAuth sessions per tenant. **Current Limitation**: Proxy solutions like mcp-remote share OAuth sessions via coordination lockfiles, preventing true instance isolation: - GitHub Issue: geelen/mcp-remote#25 - All instances connect to same tenant instead of separate ones **Claude Code Reference**: Native SSE + OAuth implementation handles this seamlessly: - Separate OAuth sessions per server instance - Built-in re-authentication flows - No coordination conflicts **Impact**: Without native OAuth support, OpenCode enterprise users face architectural limitations that prevent complex multi-tenant MCP workflows. This feature would eliminate dependency on third-party proxy solutions and enable enterprise-grade MCP deployments.
Author
Owner

@m407 commented on GitHub (Nov 25, 2025):

Opencode client must be registered with Figma to work even oAuth is implemented.

@m407 commented on GitHub (Nov 25, 2025): **Opencode** client must be registered with [Figma](https://www.figma.com/mcp-catalog/) to work even oAuth is implemented.
Author
Owner

@klaudworks commented on GitHub (Dec 10, 2025):

could also use this. using mcp-remote workaround atm.

@klaudworks commented on GitHub (Dec 10, 2025): could also use this. using mcp-remote workaround atm.
Author
Owner

@rekram1-node commented on GitHub (Dec 10, 2025):

we have oauth support now I think this can be closed

@rekram1-node commented on GitHub (Dec 10, 2025): we have oauth support now I think this can be closed
Author
Owner

@flybayer commented on GitHub (Dec 15, 2025):

Opencode client must be registered with Figma to work even oAuth is implemented.

Looks like this is still required to get Figma working with opencode

@flybayer commented on GitHub (Dec 15, 2025): > **Opencode** client must be registered with [Figma](https://www.figma.com/mcp-catalog/) to work even oAuth is implemented. Looks like this is still required to get Figma working with opencode
Author
Owner

@rekram1-node commented on GitHub (Dec 15, 2025):

Yeah we have that in the works @flybayer

waiting on figma people to approve

@rekram1-node commented on GitHub (Dec 15, 2025): Yeah we have that in the works @flybayer waiting on figma people to approve
Author
Owner

@jjjrmy commented on GitHub (Jan 1, 2026):

@rekram1-node any update on Figma? Getting 403 error still

@jjjrmy commented on GitHub (Jan 1, 2026): @rekram1-node any update on Figma? Getting 403 error still
Author
Owner

@damianpdr commented on GitHub (Jan 3, 2026):

+1

@damianpdr commented on GitHub (Jan 3, 2026): +1
Author
Owner

@jjjrmy commented on GitHub (Jan 3, 2026):

is there any way to spoof the request temporarily?

@jjjrmy commented on GitHub (Jan 3, 2026): is there any way to spoof the request temporarily?
Author
Owner

@rekram1-node commented on GitHub (Jan 3, 2026):

no updates on figma yet, i think holidays slow it down

@rekram1-node commented on GitHub (Jan 3, 2026): no updates on figma yet, i think holidays slow it down
Author
Owner

@connorads commented on GitHub (Jan 4, 2026):

is there any way to spoof the request temporarily?

You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround

@connorads commented on GitHub (Jan 4, 2026): > is there any way to spoof the request temporarily? You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround
Author
Owner

@joseehilton147 commented on GitHub (Jan 6, 2026):

is there any way to spoof the request temporarily?

You can try connorads/opencode@mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround

TY Worked

@joseehilton147 commented on GitHub (Jan 6, 2026): > > is there any way to spoof the request temporarily? > > You can try [connorads/opencode@`mcp-auth-workaround`?tab=readme-ov-file#mcp-auth-workaround](https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file&rgh-link-date=2026-01-04T17%3A45%3A25.000Z#mcp-auth-workaround) TY Worked
Author
Owner

@slimerence commented on GitHub (Jan 14, 2026):

is there any way to spoof the request temporarily?

You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround

Worked

@slimerence commented on GitHub (Jan 14, 2026): > > is there any way to spoof the request temporarily? > > You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround Worked
Author
Owner

@lzanek commented on GitHub (Jan 14, 2026):

is there any way to spoof the request temporarily?

You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround

Works!

@lzanek commented on GitHub (Jan 14, 2026): > > is there any way to spoof the request temporarily? > > You can try https://github.com/connorads/opencode/tree/mcp-auth-workaround?tab=readme-ov-file#mcp-auth-workaround Works!
Author
Owner

@mosheduminer commented on GitHub (Jan 27, 2026):

Still getting 403 when trying to authenticate to figma 😕.

@mosheduminer commented on GitHub (Jan 27, 2026): Still getting 403 when trying to authenticate to figma 😕.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#707