Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

mlab.sh

by mlab-shversion 1.2.0i★ –iRuns in the cloud
Registry namesh.mlab/mcp

Install

Overview

Description from the maker (original English)

Threat intel and DFIR: IOCs, CVEs, actors, SBOMs, domain scans, cases, memory, Kubernetes, Proxmox.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs in the cloud
  • Transport: Streamable HTTP, SSE
  • Category: Search & AI memory
  • You need to fill in: Authorization

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 3 of 3 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • You fill in yourself: Authorization

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Run this in your terminal

claude mcp add --transport http mlab https://mlab.sh/mcp --header 'Authorization: your-value'

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "mlab": {
      "url": "https://mlab.sh/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "mlab": {
      "type": "http",
      "url": "https://mlab.sh/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • Authorization secret HTTP header
    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.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain mlab.sh (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 321 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Search & AI memoryi

  • More stars than 0% of the other 7258 servers in this category
  • Published to the registry more recently than 96% of the other 7258 servers in this category
  • Basic checks equal to or better than 100% of the other 7258 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is mlab.sh safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: Authorization

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.2.0) reached the registry yesterday.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Context7, Codebase Memory, Exa

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Context7

by upstash

Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.

Computer or cloud★ 64,224MITUpdated today
Install

Codebase Memory

by DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

Runs on your computer★ 48,148MITUpdated 20 days ago
Install

Exa

by exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

Runs in the cloud★ 5,213MITUpdated last month
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

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

48 tools. tools/list only shows a token the tools its role and plan can use, so a client never sees a tool that would refuse every call. Every tool carries MCP annotations (read only, destructive, idempotent, open world), so a host can tell what it may run unattended. No tool deletes anything.

Parameters marked ? are optional.

Who can use what
GroupPlanRole
IOC lookups, domain scans, scan_bash, scan_sbomAnyOwner, admin, member (viewers cannot spend quota)
CVEs, actors, account, bookmarks, historyAnyAny, viewer included
Cases: reading (list_cases, get_case)Team, EnterpriseAny, viewer included
Cases: writing (create_case, add_case_indicators, add_case_comment)Team, EnterpriseOwner, admin, member
WorkspacesTeam (1 workspace), Enterprise (up to 20)Any; members only see the workspaces they were added to, owners and admins see all

Quotas are counted per organization over a rolling 24 hour window. get_scan_limits reads what is left.

IOC lookups
ToolParametersWhat it returns
detect_iocvalueDetects the type of an indicator (IPv4, IPv6, CIDR, domain, URL, MD5/SHA1/SHA256/SHA512 hash, email, MAC) and returns the relevant intel. A domain is typed, not scanned: use start_domain_scan for that. An IP spends IP quota
scan_ipipFor an address: geolocation, ISP, ASN, datacenter / proxy / VPN / mobile network, TOR consensus status, forward confirmed reverse DNS, RDAP record with the abuse contact. For a CIDR range: network, broadcast, host window, netmask, size, reserved blocks. Addresses spend IP quota (cached 7 days); ranges are free
scan_urlurl, resolve?Static analysis without visiting: scheme, host with its Unicode and punycode forms, IP literal hosts, credentials in the URL, dangerous extensions, shorteners, embedded redirect targets, and what a past domain scan recorded about the host. resolve follows the link to its real destination, the only part that visits anything. No quota
scan_hashhashMD5, SHA1 or SHA256 against CIRCL hashlookup (NIST NSRL): known good, known malicious or unknown, each feed's own answer, malware family, product and file name, CIRCL trust score, and mlab_sample when mlab analysed the file itself. unknown is not the same as safe. No quota
scan_cryptoaddress, chain?Labels, sanctions, risk score and address type across 18 chains (Bitcoin, Ethereum and 12 other EVM chains, Tron, Solana, TON, Dogecoin), with a checksum check. EVM addresses do not reveal their chain: pass chain when you know it. Spends crypto quota
scan_emailemailMailbox type (disposable, role, consumer, standard), SPF / DKIM / DMARC spoofability of its domain, MX presence, domain age when scanned, and a 0 to 100 score with its weighted reasons. No quota
scan_phonenumberE.164 number: validity, country, line type, allocated operator, formatting and scam shaped findings. Offline, no quota
scan_macmacOUI vendor, unicast or multicast, universal or local administration, randomized or virtual interface, EUI-64 IPv6, other formats. Offline, no quota
Domain scans and code
ToolParametersWhat it returns
start_domain_scandomainReturns a recent completed scan right away, or launches a new one and returns {"status": "started"}. A new scan contacts the target and spends domain scan quota
get_domain_scan_resultsdomainResults of a domain scan: DNS records, subdomains, SSL certificates, security.txt, robots.txt. Call again while the status is pending or scanning
scan_bashcontent, filename?Static analysis of an inline shell script: sha256, every IOC it holds, and well known suspicious constructs (download piped to a shell, base64 decoding, /dev/tcp reverse shells, persistence, anti forensics, destructive deletes). Nothing runs or is stored. No quota
scan_sbomcontent, format?Known vulnerabilities in a lockfile or SBOM (npm, yarn, pnpm, Cargo, pip, Poetry, uv, PDM, Pipfile, Composer, Gem, Go, Maven, Gradle, NuGet, pub, Hex, mise, CycloneDX, SPDX), one finding per package and CVE, worst first, with the fixed version and what the scan could not cover. Matched server side on vuln.mlab.sh (OSV, NVD for CPE only components). 2 MB at most; format defaults to auto
CVEs and threat actors
ToolParametersWhat it returns
cve_searchquery, severity?, date_start?, date_end?, limit?, page?CVEs by keyword, product, vendor or ID, filtered by severity (CRITICAL, HIGH, MEDIUM, LOW) and publication date, with CVSS, EPSS and KEV status
cve_detailcve_idThe full record: CVSS vector breakdown, affected products, references, CWEs, EPSS, CISA KEV status
search_actorsquery, origin?, motivation?, sector?, limit?Threat actors by name or alias from the MISP Galaxy cluster (CC0), narrowed by origin, incident type or targeted sector. Returns the slug for get_actor
get_actorslugMISP Galaxy profile (origin, suspected sponsor, synonyms, targeted countries and sectors, references) with the MITRE ATT&CK tools and techniques attributed to it. Keep the sources block when quoting: it carries MITRE's notice
Cases

Team and Enterprise. Each call goes through the same checks as the case pages.

ToolParametersWhat it returns
list_casesnoneThe organization's cases, open ones first, with indicator and comment counts
get_caseuuidTitle, summary, status, every indicator with a link to its analysis, and the comment thread
create_casetitle, summary?Opens a case and returns the uuid the other case tools take
add_case_indicatorsuuid, indicatorsFiles a paste of indicators (one per line, or comma or space separated, mixed types), typed automatically; anything mlab cannot look up comes back in skipped with the reason
add_case_commentuuid, body, indicator_uuid?A note on the case, or on one of its indicators
Workspaces

Team and Enterprise, and only in a workspace whose admin turned on AI agents (MCP): a workspace keeps its data on the organization's own hosts, and an answer goes to the LLM provider of whoever asked. workspace_list says which workspaces are open. Every tool except workspace_list takes workspace (the uuid from workspace_list). Each call is written to the workspace's audit log.

The tools read, and can start an index or a YARA scan. Creating, deleting, enrolling, members, policies, pushing a cluster config and binary downloads stay in the app. Answers carry data sent by the hosts, which may contain text planted by an attacker: the server says so before every answer.

Agents and memory forensics (engram)

ToolParametersWhat it returns
workspace_listnoneThe workspaces you can open, whether AI agents may read them, agents online and the tools they run
workspace_agentsworkspaceThe workspace's agents: live state, version, the tools each one reports
workspace_memory_dumpsworkspaceMemory dumps on the engram agents, and which ones are indexed. Asks every agent: allow a few seconds
workspace_memory_indexworkspace, agent, dumpStarts indexing a dump on its host, in the background. Follow it with workspace_memory_dumps
workspace_memory_overviewworkspace, agent, dumpA dump's index: system, process tree, findings (injected code and other anomalies), registry hives
workspace_memory_processworkspace, agent, dump, pidOne process in full: command line, environment, modules, memory regions, handles, findings
workspace_memory_readworkspace, agent, dump, address, len?, space?, pid?Up to 4 KiB read live from the dump, as hex and text. space is virtual (needs pid, the default) or physical
workspace_memory_registryworkspace, agent, dump, hive, path?One registry key: values, subkeys, last write time
workspace_memory_yaraworkspace, agent, dump, rules, pids?Runs YARA rules over the dump's processes on the host. Usually returns a job, a new one each call
workspace_memory_yara_statusworkspace, agent, jobProgress of a YARA scan, and its matches once done

Kubernetes clusters (k3sec)

ToolParametersWhat it returns
workspace_cluster_listworkspaceClusters reporting to the workspace: nodes online, images, vulnerabilities in packages really loaded, recent detections
workspace_cluster_imagesworkspace, clusterRunning images with their vulnerabilities, loaded ones first
workspace_cluster_imageworkspace, cluster, digestOne image: findings and packages, with which are loaded in memory
workspace_cluster_eventsworkspace, cluster, source?, kind?, namespace?, min_severity?, q?, before?, limit?Runtime events, newest first: Kubernetes events, eBPF activity, YARA detections, with cached reputation of destinations and binaries. 200 at most per call; before pages back
workspace_cluster_configworkspace, clusterWhat k3sec collects on each node, and the ceiling the nodes' local policies allow

Proxmox VE (virtsec)

ToolParametersWhat it returns
workspace_virt_listworkspaceProxmox clusters: nodes online, LXC and VM guests, guests with weakened isolation, vulnerabilities in loaded packages, critical events of the last 24 h
workspace_virt_guestsworkspace, clusterGuests and nodes: status, isolation risks from their config (privileged, host bind mounts, passthrough), vulnerabilities

| workspace_virt_guest | workspace, cluster, key, agent? | One guest by vmid, or a node (key = node with its agent): i

Only the beginning is shown; read the rest in the repo

Ask PopNx