npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@socketsecurity/mcp

v0.0.16

Published

Socket MCP server for scanning dependencies

Readme

Socket MCP Server

npm version License: MIT Socket Badge

A Model Context Protocol (MCP) server for Socket integration, allowing AI assistants to efficiently check dependency vulnerability scores and security information.

✨ Features

  • 🔍 Dependency Security Scanning - Get comprehensive security scores for npm, PyPI, and other package ecosystems
  • 🌐 Public Hosted Service - Use our public server at https://mcp.socket.dev/ with no setup required
  • 🚀 Multiple Deployment Options - Run locally via stdio, HTTP, or use our service
  • 🤖 AI Assistant Integration - Works seamlessly with Claude, VS Code Copilot, Cursor, and other MCP clients
  • 📊 Batch Processing - Check multiple dependencies in a single request
  • 🔒 No Authentication Required - Public server requires no API keys or registration

🛠️ This project is in early development and rapidly evolving.

🚀 Quick Start

Option 1: Use the Public Socket MCP Server (Recommended)

The easiest way to get started is to use our public Socket MCP server. No API key or authentication required! Click a button below to install the public server in your favorite AI assistant.

Install in VS Code Install in Cursor

[!NOTE] Custom integrations are not available to all paid versions of Claude. Check here for more information.

To use the public Socket MCP server with Claude Desktop:

  1. In Claude Desktop, go to Settings > Developer > Edit Config.

  2. Add the Socket MCP server configuration:

{
  "mcpServers": {
    "socket-mcp": {
      "type": "http",
      "url": "https://mcp.socket.dev/"
    }
  }
}
  1. Save the configuration and restart Claude Desktop.

  2. Now you can ask Claude questions like "Check the security score for express version 4.18.2".

The process is similar for Claude Code. See the Claude Code documentation for more details. Here's an example command to add the Socket MCP server:

claude mcp add --transport http socket-mcp https://mcp.socket.dev/

You can install the Socket MCP server using the VS Code CLI:

# For VS Code with GitHub Copilot
code --add-mcp '{"name":"socket-mcp","type":"http","url":"https://mcp.socket.dev/}'

After installation, the Socket MCP server will be available for use with your GitHub Copilot agent in VS Code.

Alternatively, you can manually add it to your VS Code MCP configuration in .vscode/mcp.json:

{
  "servers": {
    "socket-mcp": {
      "type": "http",
      "url": "https://mcp.socket.dev/"
    }
  }
}

Go to Cursor Settings -> MCP -> Add new MCP Server. Name it "socket-mcp", use http type with URL https://mcp.socket.dev/.

{
  "mcpServers": {
    "socket-mcp": {
      "type": "http",
      "url": "https://mcp.socket.dev/"
    }
  }
}

[!WARNING] Windsurf does not support http type MCP servers yet. Use the stdio configuration below.

To use the Socket MCP server in Windsurf:

  1. Open Windsurf Settings
  2. Navigate to MCP Servers section
  3. Add a new server with the following configuration:
{
    "mcpServers": {
        "socket-mcp": {
            "serverUrl": "https://mcp.socket.dev/mcp"
        }
    }
}
  1. Save the configuration and restart Windsurf if needed.

Option 2: Deploy Socket MCP Server on your machine

If you prefer to run your own instance, you can deploy the Socket MCP server locally using either stdio or HTTP modes.

Getting an API key

To use a local Socket MCP Server, you need to create an API key. You can do this by following these steps. The only required permission scope is packages:list, which allows the MCP server to query package metadata for dependency scores.

For local deployment, you have two options:

Option 2a: Stdio Mode (Default)

Click a button below to install the self-hosted stdio server in your favorite AI assistant.

Install in VS Code Install in Cursor (stdio)

Claude Code (stdio mode) can be set up with the following command:

claude mcp add socket-mcp -e SOCKET_API_KEY="your-api-key-here" -- npx -y @socketsecurity/mcp@latest

This is how the configuration looks like on most MCP clients:

{
  "mcpServers": {
    "socket-mcp": {
      "command": "npx",
      "args": ["@socketsecurity/mcp@latest"],
      "env": {
        "SOCKET_API_KEY": "your-api-key-here"
      }
    }
  }
}

This approach automatically uses the latest version without requiring global installation.

Option 2b: HTTP Mode
  1. Run the server in HTTP mode using npx:

    MCP_HTTP_MODE=true SOCKET_API_KEY=your-api-key npx @socketsecurity/mcp@latest --http
  2. Configure your MCP client to connect to the HTTP server:

    {
      "mcpServers": {
        "socket-mcp": {
          "type": "http",
          "url": "http://localhost:3000"
        }
      }
    }

Tools exposed by the Socket MCP Server

depscore

The depscore tool allows AI assistants to query the Socket API for dependency scoring information. It provides comprehensive security and quality metrics for packages across different ecosystems.

Parameters:

| Parameter | Type | Required | Default | Description | |-----------|------|----------|---------|-------------| | packages | Array | ✅ Yes | - | Array of package objects to analyze | | packages[].ecosystem | String | No | "npm" | Package ecosystem (npm, pypi, cargo, etc.) | | packages[].depname | String | ✅ Yes | - | Name of the dependency/package | | packages[].version | String | No | "unknown" | Version of the dependency |

Example Usage:

{
  "packages": [
    {
      "ecosystem": "npm",
      "depname": "express",
      "version": "4.18.2"
    },
    {
      "ecosystem": "pypi",
      "depname": "fastapi",
      "version": "0.100.0"
    }
  ]
}

Sample Response:

pkg:npm/[email protected]: supply_chain: 1.0, quality: 0.9, maintenance: 1.0, vulnerability: 1.0, license: 1.0
pkg:pypi/[email protected]: supply_chain: 1.0, quality: 0.95, maintenance: 0.98, vulnerability: 1.0, license: 1.0

How to Use the Socket MCP Server

  1. Ask your AI assistant to check dependencies:

    • "Check the security score for express version 4.18.2"
    • "Analyze the security of my package.json dependencies"
    • "What are the vulnerability scores for react, lodash, and axios?"
  2. Get comprehensive security insights including supply chain, quality, maintenance, vulnerability, and license scores.

Adjust tool usage with custom rules

You can further customize how the Socket MCP server interacts with your AI assistant by modifying your client rules. The rules are usually a markdown file and its location depends on the AI assistant you are using.

| MCP Client | Rules File Location | |---|---| | Claude Desktop/Code | CLAUDE.md | | VSCode Copilot | .github/copilot-instructions.md | | Cursor | .cursor/rules |

Rules that can be added to the client rules file include the following:

Always check dependency scores with the depscore tool when you add a new dependency. If the score is low, consider using an alternative library or writing the code yourself. If you are unsure about the score, ask for a review from someone with more experience. When checking dependencies, make sure to also check the imports not just the pyproject.toml/package.json/dependency file.

You can adjust the rules to fit your needs. For example, you can add rules to include specific manifest files, or guide the AI assistant on how to handle low scores. The rules are flexible and can be tailored to your workflow.

Development

For End Users

For most users, we recommend using either:

  1. Public server: https://mcp.socket.dev/ (no setup required)
  2. NPX command: npx @socketsecurity/mcp@latest (always latest version)

For Contributors

If you want to contribute to the Socket MCP server development:

Health Check Endpoint

When running in HTTP mode, the server provides a health check endpoint for Kubernetes and Docker deployments:

GET /health

Response:

{
  "status": "healthy",
  "service": "socket-mcp",
  "version": "0.0.3",
  "timestamp": "2025-06-17T20:45:22.059Z"
}

This endpoint can be used for:

  • Kubernetes liveness and readiness probes
  • Docker health checks
  • Load balancer health monitoring
  • General service monitoring

Prerequisites

  • Node.js v16 or higher
  • npm or yarn

Installation

Clone the repository and install dependencies:

git clone https://github.com/SocketDev/socket-mcp.git
cd socket-mcp
npm install

Build

This project is a directly runnable Node.js project using Type stripping. If you are on Node.js 22, run with node --experimental-strip-types index.ts. On any later versions of Node.js, you can simply run node index.ts. In either version you can also run the npm run scripts which include the correct flags.

The js files will automatically be build when running npm publish, and cleaned up afterwards with npm run clean.

If you want to preview the build you can run:

npm run build

Run from Source

To run the Socket MCP server from source:

export SOCKET_API_KEY=your_api_key_here
node --experimental-strip-types index.ts

Or in HTTP mode:

MCP_HTTP_MODE=true SOCKET_API_KEY=your_api_key_here node --experimental-strip-types index.ts --http

🔧 Troubleshooting

Common Issues

Q: The public server isn't responding

  • Check that you're using the correct URL: https://mcp.socket.dev/
  • Verify your MCP client configuration is correct
  • Try restarting your MCP client

Q: Local server fails to start

  • Ensure you have Node.js v16+ installed
  • Check that your SOCKET_API_KEY environment variable is set
  • Verify the API key has packages:list permission

Q: Getting authentication errors with local server

  • Double-check your Socket API key is valid
  • Ensure the key has the required packages:list scope
  • Try regenerating your API key from the Socket dashboard

Q: AI assistant can't find the depscore tool

  • Restart your MCP client after configuration changes
  • Verify the server configuration is saved correctly
  • Check that the MCP server is running (for local deployments)

Getting Help