Odel
mlab.sh

mlab.sh

@mlab-sh1MITUpdated 1w ago

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

Server endpointStreamable HTTPOAuthProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

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.