原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Otx

作者:w0h1v版本 1.2.0i★ –i在你的电脑上运行
注册名称io.github.w0h1v/otx

安装

概览

作者提供的说明(英文原文)

MCP server for AlienVault OTX threat intelligence: indicators, pulses, search, and users.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 网络安全
  • 你需要填写:OTX_API_KEY

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 需要你自己填写: OTX_API_KEY, OTX_MCP_READ_WRITE

标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。

你需要

  • PyPI已安装 Python 的 uv(用于 uvx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "otx": {
      "command": "uvx",
      "args": [
        "otx-mcp"
      ],
      "env": {
        "OTX_API_KEY": "your-value",
        "OTX_MCP_READ_WRITE": "your-value"
      }
    }
  }
}

在终端中运行这条命令

claude mcp add otx --env OTX_API_KEY=your-value --env OTX_MCP_READ_WRITE=your-value -- uvx otx-mcp

运行前请先填写空着的值。

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "otx": {
      "command": "uvx",
      "args": [
        "otx-mcp"
      ],
      "env": {
        "OTX_API_KEY": "your-value",
        "OTX_MCP_READ_WRITE": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "otx": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "otx-mcp"
      ],
      "env": {
        "OTX_API_KEY": "your-value",
        "OTX_MCP_READ_WRITE": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

需要你填写的值

  • OTX_API_KEY 机密 必填 env
    Your AlienVault OTX API key
  • OTX_MCP_READ_WRITE env
    Set to 1 to expose account-mutating tools (create/subscribe/follow/submit). Read-only by default.

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 w0h1v 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“网络安全”中的其他服务器比较i

  • 星标数多于此分类中其他 993 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 993 个服务器的 60% 更新
  • 基础检查结果等于或优于此分类中其他 993 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Otx 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

你需要填写:OTX_API_KEY

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(1.2.0)于26天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。

有什么可以替代它?

同一分类中有:ipdata MCP by usefulapi, MaxMind minFraud MCP by usefulapi, Lambda Labs MCP by usefulapi

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Look up location, network, company and threat data for IP addresses and ASNs in ipdata.

在云端运行今天更新
安装

Read GPU instances, types, images, filesystems and firewall rules; launch and terminate instances.

在云端运行今天更新
安装

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

Quickstart · Tools · HTTP · Security · Troubleshooting · Docs

mcp-otx is an MCP server that gives AI agents access to AlienVault OTX (Open Threat Exchange, now LevelBlue). Hand your agent an IP, domain, file hash, URL or CVE, or a malware family or adversary to research, and get back what the OTX community knows: pulses, reputation, passive DNS, whois, sandbox analysis and related indicators.

[!NOTE]

Independent project, not affiliated with AlienVault or LevelBlue. You need your own OTX API key; a free account is enough.

Highlights

  • Full API coverage. 29 tools across pulses, indicators, users, subscriptions and URL submissions, plus resource templates for pulses and indicators.
  • One-call indicator enrichment. Every OTX indicator type (IPv4, IPv6, domain, hostname, file hash, URL, CVE) and detail section: reputation, geo, passive DNS, malware, whois, URL lists, HTTP scans, sandbox analysis.
  • Read-only by default. The 9 tools that change your OTX account only appear with --read-write.
  • Context-sized output. Large OTX objects are summarized and capped, with the API's total counts kept, so one lookup doesn't fill the model's context.
  • Safe HTTP. stdio for desktop clients, plus streamable HTTP with bearer-token auth. The server refuses to listen on a network-facing address without a token.
  • Tested. Unit tests against a mocked OTX API run in CI on Python 3.10 to 3.13.

How it works

flowchart LR

A["AI agent (Claude, Codex, Gemini, VS Code)"] -->|"MCP over stdio or HTTP"| S["mcp-otx"] S -->|"HTTPS + X-OTX-API-KEY"| O["OTX DirectConnect API"] O -->|"JSON"| S S -->|"summarized, capped JSON"| A

Quickstart

Requirements: Python 3.10 or newer, uv (or pip), and an OTX API key.

# Claude Code

claude mcp add --transport stdio --env OTX_API_KEY=your-key otx -- uvx otx-mcp

Codex CLI

codex mcp add otx --env OTX_API_KEY=your-key -- uvx otx-mcp

Gemini CLI

gemini mcp add -e OTX_API_KEY=your-key otx uvx otx-mcp

With pip: pip install otx-mcp, then use the command otx-mcp. For Claude Desktop, VS Code, Cline, Docker and running from source, see Connect a client.

Then ask your agent: *"What does OTX know about 8.8.8.8, and are there recent pulses about Emotet?"* More prompts are in example workflows.

Tools

20 read tools, plus 9 write tools with --read-write. Full parameters and real sample output are in the tool reference.

AreaRead toolsWrite tools (--read-write)
Searchsearch_pulses, search_users
Pulsesget_pulse_details, get_pulse_indicators, get_related_pulses, search_related_pulses, list_pulse_activity, list_subscribed_pulses, get_subscribed_pulse_ids, get_pulse_eventscreate_pulse, subscribe_pulse, unsubscribe_pulse
Indicatorsget_indicator_details, validate_indicator, list_indicator_types, export_indicators
Usersget_user, get_current_user, list_user_pulses, list_my_pulsessubscribe_user, unsubscribe_user, follow_user, unfollow_user
Submissionslist_submitted_urls, list_submitted_filessubmit_url, submit_urls

Resource templates: otx://pulse/{pulse_id} and otx://indicator/{type}/{value}.

HTTP transport

stdio is the default. For remote or web clients, run streamable HTTP:

OTX_API_KEY=your-key uvx otx-mcp --transport streamable-http

→ http://127.0.0.1:8000/mcp

To listen on a network-facing address, set a bearer token. Clients must then send Authorization: Bearer :

OTX_API_KEY=your-key OTX_MCP_BEARER_TOKEN=a-long-random-secret \

uvx otx-mcp --transport streamable-http --host 0.0.0.0

docker build -t mcp-otx .

docker run --rm -p 127.0.0.1:8000:8000 -e OTX_API_KEY=your-key \ -e OTX_MCP_BEARER_TOKEN=a-long-random-secret \ -e OTX_MCP_TRANSPORT=streamable-http -e OTX_MCP_HOST=0.0.0.0 mcp-otx

OTX is slow on some endpoints (passive DNS and subscriptions can take 20 to 60 s), so give remote clients a long read timeout (120 s works).

Configuration
VariableCLI flagDefaultDescription
OTX_API_KEY*(required)*Your OTX API key. Also read from .env
OTX_API_BASEhttps://otx.alienvault.com/api/v1API root (for testing)
OTX_MCP_TRANSPORT--transportstdiostdio, streamable-http or sse
OTX_MCP_HOST--host127.0.0.1HTTP bind address
OTX_MCP_PORT--port8000HTTP port
OTX_MCP_READ_WRITE--read-writeoff1 exposes the account-changing tools
OTX_MCP_BEARER_TOKENoffRequire Authorization: Bearer on HTTP
--allow-remoteoffAllow a network-facing bind without a token (not recommended)
--json-responseoffPlain JSON instead of SSE streams (streamable HTTP)
--stateless-httpoffA new session per request (streamable HTTP)

Security

[!WARNING]

The server acts as your OTX account. Keep it read-only unless you need the write tools, and never expose HTTP without a bearer token and TLS.

  • Read-only by default. Pulse creation, subscriptions, follows and URL submissions need --read-write. Editing or deleting pulses isn't exposed as a tool at all.
  • Untrusted content. Pulse and indicator descriptions are written by the OTX community. The server tells the model to treat them as data, not instructions.
  • The API key is sent only to the OTX API, in a header.

Details are in the security model. Report vulnerabilities privately; see SECURITY.md.

Troubleshooting

  • 403 "Authentication required": the API key is wrong. get_current_user shows which account a key belongs to.
  • A write tool is missing: start the server with --read-write.
  • Timeouts: passive DNS and subscription calls can take up to 60 s. Raise your client's tool timeout.

More in the troubleshooting guide.

Development

git clone https://github.com/w0h1v/mcp-otx && cd mcp-otx

uv venv && uv pip install -e ".[dev]" .venv/bin/python -m pytest # mocked OTX API, no key or network

See CONTRIBUTING.md and the changelog.

License

MIT. See LICENSE.

问 PopNx