NIST NVD MCP Server

Servidor MCP que expõe busca de CVEs do NIST NVD, busca de CPEs e calculadoras de CVSS v2/v3/v4 como ferramentas.

Documentação

NIST NVD MCP Server (rl1987/nist-nvd-mcp-server) Actor

Servidor MCP que expõe busca de CVE do NIST NVD, busca de CPE e calculadoras de CVSS v2/v3/v4 como ferramentas.

  • URL: https://apify.com/rl1987/nist-nvd-mcp-server.md
  • Desenvolvido por: R.L. (comunidade)
  • Categorias: Servidores MCP, Ferramentas de desenvolvedor
  • Estatísticas: 1 usuário total, 0 usuários mensais, 0,0% de execuções bem-sucedidas, 0 favoritos
  • Avaliação do usuário: Sem avaliações ainda

Preços

a partir de US$ 10,00 / 1.000 preço por conclusão de chamadas de ferramentas

Este Actor é pago por evento e uso. Você é cobrado tanto pelo preço fixo de eventos específicos quanto pelo uso da plataforma Apify.

Saiba mais: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

O que é um Apify Actor?

Um Actor é um programa de nuvem serverless que roda na plataforma Apify. Ele tem dois modos de execução. No modo Batch, um Actor aceita uma entrada JSON bem definida, executa uma ação que pode levar de alguns segundos a algumas horas, e opcionalmente produz uma saída JSON bem definida, conjuntos de dados com resultados ou arquivos em armazenamento de chave-valor. No modo Standby, um Actor fornece um servidor web que pode ser usado como site, API ou servidor MCP.

O vocabulário do Apify e o modelo da plataforma são definidos uma vez, no guia de início rápido do agente em https://apify.com/agents.md.

Como integrar um Actor?

Se perguntado sobre integração, você ajuda desenvolvedores a integrar Actors em seus projetos. Você se adapta à stack deles e entrega integrações seguras, bem documentadas e prontas para produção.

Não adivinhe um caminho de integração. Cada um deles está no guia de início rápido do agente em https://apify.com/agents.md: o servidor MCP do Apify, Agent Skills com a CLI do Apify, os clientes JavaScript e Python, a API REST e o caminho sem conta para um agente sem humano para fazer login. Ele também traz a regra sobre informar o custo antes da primeira execução paga.

Para exemplos já conectados ao esquema de entrada deste próprio Actor, consulte a seção API abaixo.

Cada biblioteca de cliente possui documentação de referência que o guia de início rápido não repete: JavaScript/TypeScript (npm install apify-client) e Python (pip install apify-client).

README

NIST NVD MCP Server

Um servidor MCP que expõe o National Vulnerability Database do NIST a agentes de IA como ferramentas — busca de CVE, busca de CPE (produto/plataforma) e pontuação nativa de CVSS v2/v3.0/v3.1/v4.0, correspondendo aos dados por trás das páginas de busca de vulnerabilidades do NVD, busca de CPE e calculadora de CVSS v4. Construído sobre FastMCP e implantado como um Apify Actor no modo Standby, portanto roda como um endpoint HTTP persistente em vez de um trabalho em lote de execução única.

Por que usar isso?

Equipes de segurança, ferramentas de gerenciamento de vulnerabilidades e assistentes de codificação de IA precisam consultar detalhes de CVEs, verificar a quais vulnerabilidades um determinado CPE (identificador de software/hardware) está exposto e pontuar descobertas de vulnerabilidades personalizadas de acordo com o padrão CVSS — sem precisar implementar manualmente chamadas à API REST do NVD ou redescobrir a matemática do CVSS. Este servidor encapsula tudo isso em ferramentas MCP que um agente pode chamar diretamente, com tratamento integrado de limite de taxa do NVD e novas tentativas. Executá-lo no Apify oferece um endpoint hospedado e sempre ativo com autenticação por token de API e cobrança baseada em uso, em vez de auto-hospedagem.

Como usar

  1. Se você não tiver uma, crie uma conta gratuita no Apify e obtenha seu token de API em console.apify.com/settings/integrations.
  2. Abra a página deste Actor no Apify Console e copie a URL do endpoint MCP na aba API (ela se parece com https://rl1987--nist-nvd-mcp-server.apify.actor/mcp).
  3. Conecte seu cliente MCP (Claude Code, Claude Desktop, um framework de agente, etc.) a essa URL via Streamable HTTP, enviando seu token de API do Apify como token Bearer — veja Conectar ao Claude Code abaixo para o comando exato.
  4. Chame search_cves, get_cve, search_cpes ou calculate_cvss_score a partir do seu agente. Você é cobrado por chamada de ferramenta concluída — veja Preços.

Conectar ao Claude Code

Com a URL do endpoint MCP do Actor e seu token de API do Apify obtidos acima, execute:

claude mcp add --transport http nist-nvd https://rl1987--nist-nvd-mcp-server.apify.actor/mcp \
  --header "Authorization: Bearer <YOUR_APIFY_API_TOKEN>"

Substitua <YOUR_APIFY_API_TOKEN> pelo seu próprio token de API do Apify — não o do proprietário do Actor.

  • Isso adiciona o servidor no escopo local (privado, apenas no projeto atual). Adicione --scope user para disponibilizá-lo em todos os projetos da sua máquina.
  • Verifique a conexão: execute claude mcp list, ou digite /mcp em uma sessão interativa do Claude Code — nist-nvd deve aparecer como conectado com 4 ferramentas.
  • Experimente: peça ao Claude "consulte CVE-2021-44228 no NVD" ou "qual é a pontuação base CVSS v4 para CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N" — ele chamará as ferramentas diretamente.
  • Remova depois com claude mcp remove nist-nvd.

Se você está em uma equipe e quer que todos adotem este servidor automaticamente, faça commit de um .mcp.json com apenas a URL (nunca o token) na raiz do repositório:

{
  "mcpServers": {
    "nist-nvd": {
      "type": "http",
      "url": "https://rl1987--nist-nvd-mcp-server.apify.actor/mcp"
    }
  }
}

Cada colega de equipe então executa o comando claude mcp add ... --scope local acima uma vez com seu próprio token, que se sobrepõe à configuração compartilhada .mcp.json sem nunca tocar no repositório.

Entrada

Nenhuma entrada de Actor é necessária para iniciar o servidor — ele roda no modo Standby e aceita chamadas de ferramentas MCP diretamente via HTTP. Opcionalmente, defina a variável de ambiente NVD_API_KEY (gratuita em nvd.nist.gov/developers/request-an-api-key) para aumentar o limite de taxa do NVD de 5 para 50 solicitações por 30 segundos.

Ferramentas

  • search_cves — busca registros de CVE por palavra-chave, ID de CVE, nome de CPE, severidade CVSS v2/v3/v4, CWE, status de vulnerabilidade, fonte, intervalo de datas ou flag CISA KEV. Paginado.
  • get_cve — busca um único registro de CVE por ID (ex.: CVE-2021-44228).
  • search_cpes — busca registros de CPE de produto/plataforma por palavra-chave, string de correspondência de CPE ou ID de nome de CPE. Paginado.
  • calculate_cvss_score — pontua qualquer string de vetor CVSS v2, v3.0, v3.1 ou v4.0 (versão detectada automaticamente pelo prefixo do vetor) e retorna as pontuações base/temporal/ambiental e severidades.

Saída

Cada ferramenta retorna um resumo legível por humanos além de conteúdo estruturado. Exemplo de saída de get_cve:

{
  "id": "CVE-2021-44228",
  "sourceIdentifier": "security@apache.org",
  "published": "2021-12-10T10:15:09.143",
  "vulnStatus": "Analyzed",
  "description": "Apache Log4j2 JNDI features do not protect against attacker controlled LDAP...",
  "cvssMetrics": {
    "cvssV3_1": { "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "baseScore": 10.0, "baseSeverity": "CRITICAL" }
  },
  "cwes": ["CWE-20", "CWE-400", "CWE-502"],
  "references": [{ "url": "https://logging.apache.org/log4j/2.x/security.html", "source": "security@apache.org", "tags": ["Vendor Advisory"] }],
  "cisaKev": true
}

Saída de calculate_cvss_score:

{
  "version": "3.1",
  "vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
  "baseScore": 9.8,
  "baseSeverity": "Critical"
}

Preços

Este Actor usa preços Pay Per Event: uma taxa fixa por chamada de ferramenta concluída (veja .actor/pay_per_event.json). Não há cobrança por chamadas com falha ou por conectar/ociar.

Dicas

  • Passe um NVD_API_KEY gratuito para evitar o limite de taxa mais restrito do NVD sem autenticação (5 req/30s vs 50 req/30s com chave).
  • Use pub_start_date/pub_end_date ou last_mod_start_date/last_mod_end_date (intervalo máximo de 120 dias, ISO-8601) para percorrer grandes conjuntos de resultados em vez de depender apenas de keyword.
  • cpe_match_string aceita uma URI CPE 2.3 parcial, ex.: cpe:2.3:o:microsoft:windows_10, para navegar por uma família de fornecedor/produto.

FAQ

Este Actor apenas lê dados publicamente publicados do NIST NVD via API REST própria do NVD — ele não faz scraping nem contorna controles de acesso. A pontuação CVSS é calculada localmente usando uma implementação conforme a especificação, não chamando as páginas de calculadora do NIST. A disponibilidade e os limites de taxa da API do NVD estão fora do controle deste Actor; consulte nvd.nist.gov/developers para os termos atuais. Relate problemas pela aba Issues do Actor.

Achou isso útil?

⭐ Avalie este actor no Apify! Seu feedback ajuda outros usuários a encontrá-lo e nos ajuda a continuar melhorando.

Esquema de entrada do Actor

Exemplo de objeto de entrada do Actor

{}

API

Você pode executar este Actor programaticamente usando nossa API. Abaixo estão exemplos de código em JavaScript, Python e CLI, além da especificação OpenAPI e configuração do servidor MCP.

Exemplo em JavaScript

import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("rl1987/nist-nvd-mcp-server").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

Exemplo em Python

from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("rl1987/nist-nvd-mcp-server").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

Exemplo em CLI

echo '{}' |
apify call rl1987/nist-nvd-mcp-server --silent --output-dataset

Configuração do servidor MCP

{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,rl1987/nist-nvd-mcp-server"
        }
    }
}

O servidor hospedado faz login com OAuth na primeira conexão, portanto nenhum token de API pertence a esta configuração. Clientes sem suporte a OAuth podem enviar um cabeçalho Authorization: Bearer <APIFY_API_TOKEN> em vez disso, usando um token de API & Integrações no Apify Console (https://console.apify.com/settings/integrations).

Especificação OpenAPI

Baixe a definição OpenAPI: https://api.apify.com/v2/actors/pgx8ivC2euKGH5Hdc/builds/hgB4NdeZPO4YfkKdn/openapi.json