mlab.sh

Official registry Search and web

Threat intelligence: enrich IOCs (IP, domain, URL, hash), search CVEs and actors, scan SBOMs.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http mlab-sh 'https://mlab.sh/mcp' --header 'Authorization: <Bearer mcp_xxx static token. Leave empty if your client supports OAuth 2.1 (recommended): the server advertises its authorization server at /.well-known/oauth-authorization-server.>'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "mlab-sh": {
            "type": "http",
            "url": "https://mlab.sh/mcp",
            "headers": {
                "Authorization": "<Bearer mcp_xxx static token. Leave empty if your client supports OAuth 2.1 (recommended): the server advertises its authorization server at /.well-known/oauth-authorization-server.>"
            }
        }
    }
}
Remote (sse)
Claude Code
claude mcp add --transport sse mlab-sh 'https://mlab.sh/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "mlab-sh": {
            "type": "sse",
            "url": "https://mlab.sh/mcp"
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. mlab.sh MCP server
  2. Connect
  3. Tools
  4. Authentication
  5. Rate limits and quotas
  6. Registry
  7. Other public servers
  8. Security
  9. License

mlab.sh MCP server

Public metadata and connection guide for the remote MCP server at https://mlab.sh/mcp, a threat intelligence server for SOC and DFIR work.

This repo is the registry listing and the documentation. It is not the server source: the server runs inside the mlab.sh backend and is closed source.

Connect

Endpoint: https://mlab.sh/mcp (Streamable HTTP via POST, SSE via GET).

Claude.ai

Settings > Connectors > Add custom connector, then paste the URL. OAuth runs in the browser, no token to copy.

https://mlab.sh/mcp
Claude Desktop

claude_desktop_config.json:

{
  "mcpServers": {
    "mlab": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mlab.sh/mcp",
        "--header",
        "Authorization: Bearer mcp_xxx"
      ]
    }
  }
}

Drop the --header pair to use OAuth instead of a static token.

Cursor

~/.cursor/mcp.json:

{
  "mcpServers": {
    "mlab": {
      "url": "https://mlab.sh/mcp",
      "headers": {
        "Authorization": "Bearer mcp_xxx"
      }
    }
  }
}
VS Code

.vscode/mcp.json:

{
  "servers": {
    "mlab": {
      "type": "http",
      "url": "https://mlab.sh/mcp",
      "headers": {
        "Authorization": "Bearer mcp_xxx"
      }
    }
  }
}
curl
curl -sS -X POST https://mlab.sh/mcp \
  -H "Authorization: Bearer mcp_xxx" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0.0"}}}'

Ready to paste versions of these four configs live in examples/.

Officially supported clients are Claude.ai and Claude Desktop. Other MCP clients (Cursor, VS Code, Windsurf and friends) work but are best effort.

Tools

IOC enrichment
ToolPurpose
detect_iocAuto detect the IOC type of a value and return relevant threat intel
scan_ipThreat intel for an IPv4 or IPv6 address
scan_urlStatic analysis of a URL without visiting it
scan_hashFile hash lookup (MD5, SHA1, SHA256) in CIRCL hashlookup
scan_cryptoThreat intel for a blockchain address: labels, sanctions, risk score, 18 chains
scan_emailOffline style analysis of an email address
scan_phoneOffline style analysis of a phone number
scan_macOffline style analysis of a MAC address
smishing_riskScore an SMS for smishing
Vulnerabilities and actors
ToolPurpose
cve_searchSearch CVEs
cve_detailFull CVE record
actors_by_cveThreat actors known to exploit a CVE
search_actorsSearch threat actors
get_actorFull threat actor profile
Scanning
ToolPurpose
start_domain_scanLaunch a domain scan: DNS, subdomains, SSL, security.txt, robots.txt
get_domain_scan_resultsPoll the results of a domain scan
scan_bashStatic analysis of an inline shell script
scan_sbomScan a dependency lockfile or SBOM for known CVEs
Account
ToolPurpose
get_scan_historyPast scans for the account
get_scan_limitsCurrent quotas and remaining scans
get_account_infoAccount details
add_bookmarkBookmark an IOC
remove_bookmarkRemove a bookmarked IOC
get_bookmarksList bookmarked IOCs
hello_worldConnectivity check

Authentication

OAuth 2.1 is the recommended path: authorization code with PKCE S256, dynamic client registration, CIMD supported. The server advertises its metadata at https://mlab.sh/.well-known/oauth-authorization-server, so a compliant client only needs the endpoint URL.

If your client does not speak OAuth, create a static token in Account > Settings > MCP Tokens and send it as Authorization: Bearer mcp_xxx.

Full details: https://doc.mlab.sh/docs/mlab.sh/integrations/mcp

Rate limits and quotas

Limits follow your mlab.sh account plan. Call get_scan_limits to read the quotas and remaining budget that apply to your account.

Registry

Published to the official MCP Registry as sh.mlab/mcp.

https://registry.modelcontextprotocol.io/v0.1/servers?search=sh.mlab

Other public servers

https://news.mlab.sh/mcp is a separate, unauthenticated, read only MCP server exposing a cyber news index. It is not published from this repo.

Security

Report vulnerabilities to security@mlab.sh. See https://mlab.sh/security.txt and SECURITY.md.

License

MIT, see LICENSE.

Frequently asked questions

What is mlab.sh?

Threat intelligence: enrich IOCs (IP, domain, URL, hash), search CVEs and actors, scan SBOMs.

How do I install mlab.sh?

It runs as a remote server. In Claude Code: claude mcp add --transport http mlab-sh 'https://mlab.sh/mcp' --header 'Authorization: <Bearer mcp_xxx static token. Leave empty if your client supports OAuth 2.1 (recommended): the server advertises its authorization server at /.well-known/oauth-authorization-server.>'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does mlab.sh need an API key?

Yes. It expects Authorization, which you set in its configuration.

Is mlab.sh open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains mlab.sh?

It is published by mlab-sh. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.