Skip to content

feat(cursor): ship socket's hosted oauth mcp server in the cursor plugin - #26

Merged
Jordan Harband (ljharb) merged 1 commit into
SocketDev:mainfrom
ljharb:feat/cursor-socket-mcp
Nov 5, 2026
Merged

Jordan Harband (ljharb) merged 1 commit into
SocketDev:mainfrom
ljharb:feat/cursor-socket-mcp

Conversation

@ljharb

@ljharb Jordan Harband (ljharb) commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

The Cursor plugin now declares https://mcp.socket.dev/ in .cursor-plugin/mcp.json, so users sign in to Socket in the browser instead of pasting one org's API key. The manifest also gets a display name, a logo, and a rule that tells the agent when to use the Socket MCP tools and how to fall back to the CLI if sign-in does not complete.

The shipped-content gates now scan .cursor-plugin/rules, including .mdc files, because agents read and obey them.

Known limitation

Hosted OAuth does not complete in current Cursor versions. The socket-mcp README compatibility matrix lists Cursor 3.22.12 hosted OAuth as failing. The cause is described in the Cursor forum report: Cursor shows Authenticate only when the server returns 401 during connect. The live mcp.socket.dev answers an unauthenticated initialize with 200 and returns 401 only on tools/call.

The fix is on the server side:

Until then, the README and the Cursor rule say this plainly and point users to the CLI sign-in (pnpm dlx socket login).

Testing


Note

Medium Risk
Expands agent-obeyed shipped instructions and connects users to an external OAuth MCP endpoint; config avoids embedding secrets but auth and dependency-check behavior in Cursor sessions depend on this wiring.

Overview
The Cursor plugin now wires in Socket's hosted MCP at https://mcp.socket.dev/ (OAuth in the browser, no API key in config) instead of an empty MCP stub, and the manifest adds display name, logo, and rules that tell the agent when to run depscore / org tools and how to fall back to the Socket CLI if Cursor OAuth fails.

README documents the Customize → Authenticate flow and the known Cursor OAuth limitation.

Repo tooling follows suit: the Cursor plugin generator emits the OAuth-only MCP JSON, requires the hand-maintained logo and rules paths, and tests assert no credentials ship. Shipped-content gates now treat .cursor-plugin/rules (including .mdc files) like other agent-obeyed surfaces for fleet-leak and injection scans.

Reviewed by Cursor Bugbot for commit f88cdb7. Configure here.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might have some conflicts if multiple prs land but just iron them out as you go

The Cursor plugin declares https://mcp.socket.dev/ in
.cursor-plugin/mcp.json under the server name `socket`, the same name
the socket-connect marketplace entry and the Gemini extension use, so
users sign in to Socket in the browser instead of pasting one org's API
key. The manifest also gets a display name, a logo, and a rule that
tells the agent when to use the Socket MCP tools and how to fall back to
the CLI if sign-in does not complete.

The shipped-content gates now scan .cursor-plugin/rules, including .mdc
files, because agents read and obey them.
@ljharb
Jordan Harband (ljharb) merged commit d16ac48 into SocketDev:main Nov 5, 2026
10 checks passed
@ljharb
Jordan Harband (ljharb) deleted the feat/cursor-socket-mcp branch November 5, 2026 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants