Socket MCP server
Socket in any MCP client, through Memtro: Socket does not publish this server. Memtro's Socket connector reads Socket through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.
What the model can do
Socket supply-chain security for an organisation: repositories, full scans by repository, branch, pull request or commit, open and cleared alerts with package, severity, CVE, reachability and fix, triage rules, alert resolutions, repository labels and the API quota; when you ask, can add, edit or remove a repository, make, apply, remove or delete repository labels, set or delete a triage rule, resolve alerts by a named scope or undo a resolution, rescan or delete a full scan.
Reads
socketdev_list_repositoriesRepositories in the Socket organisation: slug, name, visibility, default branch, workspace, latest full scan id, archived state and link.socketdev_list_full_scansFull scans (a dependency snapshot of a repository at a commit): repository, branch, commit, pull request, scan type and state…socketdev_list_alertsSocket's latest alerts for the organisation: type, category, severity, status (open or cleared), the package and version, whether it is direct…socketdev_list_triageAlert triage rules: which alert type, alert key, package or CVE each one matches, the state it sets (block, warn, monitor, ignore…socketdev_list_alert_resolutionsActive alert resolutions (alerts hidden as a false positive, remediated, a tolerable risk or other): reason, comment, and the scope each covers…socketdev_list_repo_labelsRepository labels: name, the repositories it is on, and whether it carries a security or licence policy.socketdev_quotaHow much of the token's hourly API quota is left, the maximum, and when it refills.
Acts, when you ask
These change something in Socket. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.
socketdev_create_repositoryAdds a repository to the Socket organisation, so scans can be filed under it; nobody is notified and nothing is scanned yet.socketdev_update_repositoryChanges a Socket repository's name, description, homepage, visibility, default branch, workspace or archived state; only the fields passed change.socketdev_delete_repositoryRemoves a repository from the Socket organisation; permanent in Socket (its scans are no longer listed under it)…socketdev_create_repo_labelCreates a repository label in Socket (labels group repositories and can carry security or licence policies)…socketdev_label_repositoryApplies a label to a repository; any security or licence policy on the label then governs that repository's alerts.socketdev_unlabel_repositoryTakes a label off a repository, so the label's policies stop applying to it.socketdev_delete_repo_labelPermanently deletes a repository label, taking it off every repository and dropping any policy it carried.socketdev_set_alert_triageCreates an alert triage rule, or changes one when uuid is given, setting what Socket does with matching alerts for the whole organisation: block…socketdev_delete_alert_triageDeletes an alert triage rule, so its alerts go back to the organisation's policy.socketdev_resolve_alertsResolves (hides) every alert matching the scope you name, organisation-wide unless a repository is named, from Socket's next snapshot on…socketdev_delete_alert_resolutionUndoes an alert resolution; the alerts it hid reappear after Socket's next snapshot.socketdev_rescan_full_scanStarts a new full scan from an existing one: shallow (default) re-applies today's policies to the cached dependencies…socketdev_delete_full_scanPermanently deletes a full scan and its results from Socket.
Connect it
First connect Socket on Dashboard → Connections, then add Memtro to your client once. The Socket tools appear alongside the tools of everything else you have connected; nothing is configured per connector.
Claude Code
The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.
claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...Cursor
Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.
{
"mcpServers": {
"memtro": {
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Claude Desktop
Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…
OpenCode
A remote server in opencode.json.
{
"mcp": {
"memtro": {
"type": "remote",
"url": "https://platform.memtro.com/api/mcp",
"headers": {
"Authorization": "Bearer sk-memtro-..."
}
}
}
}Pi
One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.
Any other client
Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.
Who may use it
The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Socket connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.
Ask it like this
- › Which critical alerts are open in the web repo?
- › Which open alerts are on known-exploited CVEs?
- › When did the last full scan of the api repository's main branch run?
- › Which triage rules apply to lodash?
- › How much API quota is left this hour?
Questions
- Is this an official Socket MCP server?
- No. It is Memtro's MCP server with Memtro's Socket connector behind it: the connector reads Socket through its API with the credentials you connect on Dashboard → Connections, and Socket publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
- What does it cost?
- Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
- Can it change anything in Socket?
- Only when you ask, and only what it has been granted: add a repository to Socket; edit a repository's name, description, visibility, default branch or archived state; remove a repository from Socket; create a repository label; apply a label to a repository; remove a label from a repository; delete a repository label; create or change an alert triage rule; delete an alert triage rule; resolve the alerts matching a named scope; undo an alert resolution; rescan a full scan; delete a full scan. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
- Which clients work?
- Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.