<p align="center">
  <a href="README.md">English</a> |
  <a href="README.zh.md">简体中文</a> |
  <a href="README.zh-TW.md">繁體中文</a> |
  <a href="README.ko.md">한국어</a> |
  <a href="README.de.md">Deutsch</a> |
  <a href="README.es.md">Español</a> |
  <a href="README.fr.md">Français</a> |
  <a href="README.it.md">Italiano</a> |
  <a href="README.da.md">Dansk</a> |
  <a href="README.ja.md">日本語</a> |
  <a href="README.pl.md">Polski</a> |
  <a href="README.ru.md">Русский</a> |
  <strong>Bosanski</strong> |
  <a href="README.ar.md">العربية</a> |
  <a href="README.no.md">Norsk</a> |
  <a href="README.pt-BR.md">Português (Brasil)</a> |
  <a href="README.th.md">ไทย</a> |
  <a href="README.tr.md">Türkçe</a> |
  <a href="README.uk.md">Українська</a> |
  <a href="README.bn.md">বাংলা</a> |
  <a href="README.el.md">Ελληνικά</a> |
  <a href="README.vi.md">Tiếng Việt</a> |
  <a href="README.hi.md">हिन्दी</a>
</p>

<p align="center">
  <br>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/badchars/cve-mcp/main/.github/banner-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/badchars/cve-mcp/main/.github/banner-light.svg">
    <img alt="cve-mcp" src="https://raw.githubusercontent.com/badchars/cve-mcp/main/.github/banner-dark.svg" width="700">
  </picture>
</p>

<h3 align="center">CVE i obavještajne informacije o ranjivostima za AI agente.</h3>

<p align="center">
  NVD, EPSS, CISA KEV, GitHub Advisory, OSV, Shodan, VulnCheck, Vulners, Nuclei, Metasploit, CIRCL, AttackerKB i MITRE ATT&amp;CK &mdash; objedinjeni u jednom MCP serveru.<br>
  Vaš AI agent dobija <b>obavještajne informacije o ranjivostima na zahtjev</b>, a ne izvještaj od 200 stranica.
</p>

<br>

<p align="center">
  <a href="#problem">Problem</a> &bull;
  <a href="#po-čemu-se-razlikuje">Po čemu se razlikuje</a> &bull;
  <a href="#brzi-početak">Brzi početak</a> &bull;
  <a href="#šta-ai-agent-može">Šta AI agent može</a> &bull;
  <a href="#referenca-alata-41-alat">Alati</a> &bull;
  <a href="#izvori-podataka">Izvori podataka</a> &bull;
  <a href="#arhitektura">Arhitektura</a>
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/cve-mcp"><img src="https://img.shields.io/npm/v/cve-mcp.svg" alt="npm"></a>
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="Licenca"></a>
  <img src="https://img.shields.io/badge/runtime-Bun-f472b6" alt="Bun">
  <img src="https://img.shields.io/badge/protocol-MCP-8b5cf6" alt="MCP">
  <img src="https://img.shields.io/badge/tools-41-f97316" alt="41 alat">
  <img src="https://img.shields.io/badge/sources-11-ef4444" alt="11 izvora">
</p>

---

## Problem

Obavještajne informacije o ranjivostima su raspršene po više baza podataka. NVD sadrži detalje o CVE. EPSS vam govori vjerovatnoću eksploatacije. CISA KEV prati aktivno eksploatisane ranjivosti. GitHub Advisory pokriva pakete otvorenog koda. OSV mapira ranjivosti na specifične verzije paketa. Shodan prati izloženost na internetu. Nuclei i Metasploit vam govore postoji li radni eksploit. Nijedan alat ih ne objedinjuje, i nijedan ne radi sa AI agentima.

```
Tradicionalni radni tok:
  pretraži NVD za detalje o CVE            →  navigiraj kroz nezgrapan web UI
  provjeri EPSS za rizik eksploatacije      →  zasebno API, zaseban format
  provjeri status CISA KEV                  →  preuzmi JSON feed ručno
  pretraži GitHub advisories                →  još jedan interfejs
  upitaj OSV za utjecaj na pakete           →  drugačije API, drugačija shema
  provjeri Shodan za izloženost             →  zasebna pretplata
  traži Nuclei/MSF eksploite               →  ručno pretraživanje na GitHub
  mapiraj na ATT&CK tehnike                →  zaseban MITRE upit
  koreliraj sve                             →  kopiraj-zalijepi u tabelu
  ──────────────────────────────────
  Ukupno: 30+ minuta po CVE, duže za masovnu triažu
```

**cve-mcp** daje vašem AI agentu 41 alat putem [Model Context Protocol](https://modelcontextprotocol.io). Agent upituje 11 izvora paralelno, korelira podatke, detektuje signale naoružavanja, izračunava ocjene rizika i govori vam tačno šta je bitno.

```
Sa cve-mcp:
  Vi: "Prioritiziraj ovih 10 CVE prema stvarnom riziku eksploatacije"

  Agent: → preuzima CVSS ocjene iz NVD
         → dobija EPSS vjerovatnoću eksploatacije za svaki
         → provjerava CISA KEV za aktivno eksploatisane
         → unakrsno provjerava GitHub advisories za zakrpe
         → "3 su kritična: CVE-2024-3400 (EPSS 97%, u KEV),
            CVE-2023-44487 (HTTP/2 rapid reset, EPSS 96%),
            CVE-2021-44228 (Log4Shell, EPSS 97%, u KEV).
            Evo zakrpa i pogođenih verzija..."
```

---

## Po čemu se razlikuje

Postojeći alati vam daju sirove podatke. cve-mcp daje vašem AI agentu sposobnost da rezonuje o ranjivostima.

<table>
<thead>
<tr>
<th></th>
<th>Tradicionalni alati</th>
<th>cve-mcp</th>
</tr>
</thead>
<tbody>
<tr>
<td><b>Interfejs</b></td>
<td>Web UI / CLI / sirovi API pozivi</td>
<td>MCP &mdash; AI agent poziva alate konverzacijski</td>
</tr>
<tr>
<td><b>Izvori podataka</b></td>
<td>Jedna baza podataka istovremeno</td>
<td>11 izvora paralelno: NVD, EPSS, KEV, GHSA, OSV, Shodan, VulnCheck, Vulners, Nuclei, Metasploit, CIRCL</td>
</tr>
<tr>
<td><b>Ocjena rizika</b></td>
<td>Samo CVSS (ozbiljnost, ne eksploatabilnost)</td>
<td>CVSS &times; EPSS &times; KEV &times; multiplikator eksploita (Nuclei/MSF) = stvarni rizik</td>
</tr>
<tr>
<td><b>Korelacija</b></td>
<td>Ručno kopiraj-zalijepi</td>
<td>Agent obogaćuje: "CVSS 9.8, EPSS 97%, KEV, Nuclei šablon postoji, MSF modul dostupan, mapira se na T1190"</td>
</tr>
<tr>
<td><b>Masovna trijaža</b></td>
<td>Jedan CVE istovremeno</td>
<td>Agent prioritizira 50 CVE u jednom razgovoru</td>
</tr>
<tr>
<td><b>Utjecaj na pakete</b></td>
<td>Zasebno OSV/GHSA pretraživanje</td>
<td>Agent automatski pronalazi pogođene pakete + verzije</td>
</tr>
<tr>
<td><b>Zavisnosti</b></td>
<td>Teški CLI alati, Python okruženja</td>
<td>2 runtime zavisnosti, pokreće se sa npx</td>
</tr>
</tbody>
</table>

---

## Brzi početak

### Opcija 1: npx (bez instalacije)

```bash
npx cve-mcp
```

### Opcija 2: Kloniranje

```bash
git clone https://github.com/badchars/cve-mcp.git
cd cve-mcp
bun install
```

### Varijable okruženja (opcionalno)

```bash
# Povećava NVD ograničenje brzine sa 5 na 50 zahtjeva po 30 sekundi
export NVD_API_KEY=vaš-nvd-api-ključ

# Omogućava GitHub Advisory pretragu (60 → 5000 zahtjeva/sat)
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

# VulnCheck prošireni KEV, CPE, PURL pretraga
export VULNCHECK_API_KEY=vaš-vulncheck-ključ

# Vulners pretraga ranjivosti po 200+ izvora
export VULNERS_API_KEY=vaš-vulners-ključ

# AttackerKB procjene zajednice
export ATTACKERKB_API_KEY=vaš-attackerkb-ključ
```

Svi su opcionalni. Server radi bez njih — neki alati samo imaju niža ograničenja brzine ili smanjene podatke.

### Povežite sa vašim AI agentom

<details open>
<summary><b>Claude Code</b></summary>

```bash
# Sa npx
claude mcp add cve-mcp -- npx cve-mcp

# Sa lokalnim klonom
claude mcp add cve-mcp -- bun run /putanja/do/cve-mcp/src/index.ts
```

</details>

<details>
<summary><b>Claude Desktop</b></summary>

Dodajte u `~/Library/Application Support/Claude/claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "cve-mcp": {
      "command": "npx",
      "args": ["cve-mcp"],
      "env": {
        "NVD_API_KEY": "opcionalni-ključ",
        "GITHUB_TOKEN": "opcionalni-token",
        "VULNCHECK_API_KEY": "opcionalni-ključ",
        "VULNERS_API_KEY": "opcionalni-ključ",
        "ATTACKERKB_API_KEY": "opcionalni-ključ"
      }
    }
  }
}
```

</details>

<details>
<summary><b>Cursor / Windsurf / drugi MCP klijenti</b></summary>

Isti JSON format konfiguracije. Usmjerite komandu na `npx cve-mcp` ili vašu putanju instalacije.

</details>

### Počnite sa upitima

```
Vi: "Šta znaš o CVE-2024-3400?"
```

To je to. Agent se brine za ostalo.

---

## Šta AI agent može

### Odgovor na incident

```
Vi: "Pogodio nas je CVE-2024-3400. Daj mi sve."

Agent: → cve_enrich {cveId: "CVE-2024-3400"}
       → NVD: PAN-OS command injection, CVSS 10.0
       → EPSS: 97.2% vjerovatnoća eksploatacije
       → KEV: Dodano 2024-04-12, rok 2024-05-01
       → Shodan: 4 CPE, izložen na internetu
       → Nuclei: Šablon za detekciju postoji (critical)
       → Metasploit: Modul eksploita dostupan (excellent rank)
       → "Kritično. Naoružano — i Nuclei i MSF moduli postoje.
          PAN-OS GlobalProtect, verzije < 10.2.9-h1.
          Zakrpite odmah. CISA rok: 1. maj."
```

### Prioritizacija ranjivosti

```
Vi: "Prioritiziraj ove CVE iz našeg skena: CVE-2021-44228, CVE-2024-3400,
      CVE-2023-44487, CVE-2024-21762, CVE-2023-4966"

Agent: → cve_prioritize {cves: [...]}
       → Rangira po CVSS × EPSS × KEV multiplikator
       → "#1: CVE-2024-3400 (rizik: 19.44, CVSS 10.0, EPSS 97%, KEV)
          #2: CVE-2021-44228 (rizik: 19.40, CVSS 10.0, EPSS 97%, KEV)
          #3: CVE-2023-4966 (rizik: 19.10, CVSS 9.4, EPSS 97%, KEV)
          Svih 5 su u CISA KEV — zakrpite sve odmah."
```

### Revizija zavisnosti

```
Vi: "Provjeri da li lodash 4.17.20 i django 3.2.0 imaju poznate ranjivosti"

Agent: → osv_batch {queries: [
          {package: "lodash", version: "4.17.20", ecosystem: "npm"},
          {package: "django", version: "3.2.0", ecosystem: "PyPI"}
       ]}
       → "lodash 4.17.20: 3 ranjivosti (prototype pollution)
          django 3.2.0: 12 ranjivosti (SQL injection, XSS)
          Nadogradite lodash na 4.17.21+, django na 4.2+"
```

### Praćenje prijetnji

```
Vi: "Koji CVE imaju trenutno najveću vjerovatnoću eksploatacije?"

Agent: → cve_trending {limit: 10, minEpss: 0.9}
       → "Top 10 po vjerovatnoći eksploatacije:
          1. CVE-2024-3400 — PAN-OS (EPSS 97.2%, CVSS 10.0, KEV)
          2. CVE-2023-44487 — HTTP/2 Rapid Reset (EPSS 96.5%, CVSS 7.5, KEV)
          ..."
```

### Dubinska analiza CVSS (v3.1 i v4.0)

```
Vi: "Raščlani ovaj CVSS v4.0 vektor: 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"

Agent: → cvss_parse {vector: "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"}
       → "CVSS v4.0 — Ocjena: 9.3 (KRITIČNO)
          Mrežni napad, niska složenost, bez zahtjeva za napad.
          Bez privilegija, bez interakcije korisnika.
          Ranjivi sistem: puni C/I/A utjecaj.
          Naknadni sistemi: bez utjecaja."
```

### ATT&CK mapiranje

```
Vi: "Mapiraj CVE-2024-3400 na MITRE ATT&CK tehnike"

Agent: → cve_to_attack {cweIds: ["CWE-77"]}
       → "CWE-77 (Command Injection) mapira se na:
          T1059 — Command and Scripting Interpreter (Execution)
          T1190 — Exploit Public-Facing Application (Initial Access)"
```

---

## Referenca alata (41 alat)

<details>
<summary><b>NVD (4)</b></summary>

| Alat | Opis |
|------|------|
| `nvd_search` | Pretraži CVE po ključnoj riječi, ozbiljnosti, CWE, rasponu datuma |
| `nvd_get` | Preuzmi pune detalje CVE (CVSS, CWE, CPE, reference) |
| `nvd_recent` | Nedavno objavljeni/izmijenjeni CVE |
| `cve_by_product` | Pretraži CVE po nazivu proizvoda (CPE podudaranje ključnih riječi) |

</details>

<details>
<summary><b>EPSS (2)</b></summary>

| Alat | Opis |
|------|------|
| `epss_score` | EPSS vjerovatnoća eksploatacije za jedan ili više CVE |
| `epss_top` | Vrh CVE po vjerovatnoći eksploatacije |

</details>

<details>
<summary><b>KEV (3)</b></summary>

| Alat | Opis |
|------|------|
| `kev_check` | Provjeri da li su CVE u katalogu CISA Known Exploited Vulnerabilities |
| `kev_search` | Pretraži KEV po proizvođaču, proizvodu ili ključnoj riječi |
| `kev_recent` | Nedavno dodani KEV unosi |

</details>

<details>
<summary><b>GHSA (2)</b></summary>

| Alat | Opis |
|------|------|
| `ghsa_search` | Pretraži GitHub sigurnosne savjete po ključnoj riječi, ekosistemu, ozbiljnosti |
| `ghsa_get` | Preuzmi detalje savjeta po GHSA ID ili CVE ID |

</details>

<details>
<summary><b>OSV (3)</b></summary>

| Alat | Opis |
|------|------|
| `osv_query` | Upitaj ranjivosti za specifičnu verziju paketa |
| `osv_get` | Preuzmi detalje ranjivosti po OSV/GHSA/CVE ID |
| `osv_batch` | Grupni upit za više paketa odjednom |

</details>

<details>
<summary><b>Exploit (1)</b></summary>

| Alat | Opis |
|------|------|
| `exploit_search` | Pretraži javne PoC eksploite (GitHub repozitoriji) |

</details>

<details>
<summary><b>Shodan (3)</b></summary>

| Alat | Opis |
|------|------|
| `shodan_cve` | CVE upit putem Shodan CVEDB (EPSS, KEV, CPE integrisano, bez autentifikacije) |
| `shodan_product` | Pronađi CVE po imenu proizvoda/proizvođača putem Shodan |
| `shodan_ip_vulns` | Preuzmi poznate ranjivosti za IP adresu (InternetDB) |

</details>

<details>
<summary><b>VulnCheck (3)</b></summary>

| Alat | Opis |
|------|------|
| `vulncheck_kev` | Prošireni KEV katalog (~80% više unosa od CISA) |
| `vulncheck_cpe` | CVE pretraga po CPE stringu |
| `vulncheck_purl` | CVE pretraga po Package URL (purl) |

</details>

<details>
<summary><b>Vulners (2)</b></summary>

| Alat | Opis |
|------|------|
| `vulners_lookup` | CVE detalji iz Vulners (200+ izvora, reference na eksploite) |
| `vulners_search` | Pretraga ranjivosti po punom tekstu kroz Vulners bazu podataka |

</details>

<details>
<summary><b>Nuclei & Metasploit (2)</b></summary>

| Alat | Opis |
|------|------|
| `nuclei_check` | Provjeri da li postoji Nuclei šablon za detekciju CVE |
| `msf_check` | Provjeri da li postoji Metasploit modul eksploita za CVE |

</details>

<details>
<summary><b>CPE (2)</b></summary>

| Alat | Opis |
|------|------|
| `cpe_search` | Pretraži NVD CPE rječnik po ključnoj riječi |
| `cpe_match` | Preuzmi CPE podudaranja za specifičan CVE |

</details>

<details>
<summary><b>CIRCL (1)</b></summary>

| Alat | Opis |
|------|------|
| `circl_cve` | CIRCL CVE obogaćenje (CAPEC mapiranje, alternativne reference, vektori utjecaja) |

</details>

<details>
<summary><b>AttackerKB (1)</b></summary>

| Alat | Opis |
|------|------|
| `attackerkb_assess` | Procjene zajednice iz AttackerKB (vrijednost za napadača, eksploatabilnost) |

</details>

<details>
<summary><b>ATT&CK (1)</b></summary>

| Alat | Opis |
|------|------|
| `cve_to_attack` | Mapiraj CVE CWE ID-ove na MITRE ATT&CK tehnike i taktike |

</details>

<details>
<summary><b>CWE (4)</b></summary>

| Alat | Opis |
|------|------|
| `cwe_lookup` | Potraži CWE slabost po ID-u ili pretraži po ključnoj riječi (statička baza) |
| `cwe_get` | Puni CWE detalji iz MITRE API (1000+ CWE, mjere, primjeri) |
| `cwe_hierarchy` | CWE hijerarhija roditelj/dijete iz MITRE API |
| `cwe_top25` | MITRE CWE Top 25 Most Dangerous Software Weaknesses |

</details>

<details>
<summary><b>CVSS (1)</b></summary>

| Alat | Opis |
|------|------|
| `cvss_parse` | Parsiraj i objasni CVSS v3.1 ili v4.0 vektor sa izračunom ocjene |

</details>

<details>
<summary><b>Meta (6)</b></summary>

| Alat | Opis |
|------|------|
| `cve_enrich` | Potpuno obogaćenje: NVD + EPSS + KEV + GHSA + OSV + Shodan + Nuclei + MSF paralelno |
| `cve_prioritize` | Rangiraj CVE po riziku (CVSS &times; EPSS &times; KEV &times; multiplikator eksploita) |
| `cve_trending` | Trenutno u trendu CVE po vjerovatnoći eksploatacije |
| `cve_compare` | Uporedni prikaz dva CVE |
| `cve_list_sources` | Izlistaj svih 11 izvora podataka i njihovu dostupnost |
| `cve_report` | Generiši markdown izvještaj o ranjivostima |

</details>

---

## Izvori podataka

| Izvor | Autentifikacija | Šta pruža |
|-------|-----------------|-----------|
| [NVD](https://nvd.nist.gov/) | Opcionalni `NVD_API_KEY` | Detalji CVE, CVSS ocjene, CWE mapiranja, CPE pogođeni proizvodi, reference |
| [EPSS](https://www.first.org/epss/) | Ništa | Ocjena vjerovatnoće eksploatacije (0-1) i percentilni rang |
| [CISA KEV](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) | Ništa | Poznate eksploatisane ranjivosti sa rokovima za sanaciju |
| [GitHub Advisory](https://github.com/advisories) | Opcionalni `GITHUB_TOKEN` | Sigurnosni savjeti za otvoreni kod, pogođeni paketi, ozbiljnost |
| [OSV](https://osv.dev/) | Ništa | Podaci o ranjivostima na nivou paketa u 16+ ekosistema |
| [Shodan CVEDB](https://cvedb.shodan.io/) | Ništa | CVE upit sa integrisanim EPSS/KEV/CPE, skeniranje ranjivosti IP-a |
| [VulnCheck](https://vulncheck.com/) | Opcionalni `VULNCHECK_API_KEY` | Prošireni KEV (~80% više unosa), CPE/PURL pretraga ranjivosti |
| [Vulners](https://vulners.com/) | Opcionalni `VULNERS_API_KEY` | Pretraga ranjivosti po 200+ izvora, reference na eksploite |
| [Nuclei Templates](https://github.com/projectdiscovery/nuclei-templates) | Ništa | Provjera postojanja šablona za detekciju CVE (ozbiljnost, tagovi) |
| [Metasploit](https://github.com/rapid7/metasploit-framework) | Ništa | Provjera postojanja modula eksploita (tip, rang, putanja) |
| [CIRCL](https://cve.circl.lu/) | Ništa | CVE obogaćenje sa CAPEC mapiranjem, alternativne reference, vektori utjecaja |
| [AttackerKB](https://attackerkb.com/) | Opcionalni `ATTACKERKB_API_KEY` | Procjene zajednice (vrijednost za napadača, ocjene eksploatabilnosti) |
| [MITRE ATT&CK](https://attack.mitre.org/) | Ništa | CWE-u-ATT&CK mapiranje tehnika (taktike, tehnike) |
| [MITRE CWE](https://cwe-api.mitre.org/) | Ništa | Puna CWE baza podataka (1000+ slabosti, hijerarhija, mjere) |

### Formula ocjene rizika

```
Ocjena rizika = CVSS Base Score × EPSS Score × KEV Multiplikator × Multiplikator eksploita

Gdje:
  CVSS Base Score          = 0-10 (ozbiljnost iz NVD)
  EPSS Score               = 0-1 (vjerovatnoća eksploatacije iz FIRST)
  KEV Multiplikator        = 2 ako je u CISA KEV, 1 inače
  Multiplikator eksploita  = 1.5 ako postoji Nuclei šablon ILI Metasploit modul, 1 inače
```

Ovo daje praktičnu ocjenu rizika koja balansira ozbiljnost (CVSS) sa vjerovatnoćom eksploatacije u stvarnom svijetu (EPSS), poznatom aktivnom eksploatacijom (KEV) i signalima naoružavanja (javni alati za eksploataciju).

---

## Arhitektura

```
src/
├── index.ts                    Ulazna tačka + MCP stdio
├── types/
│   └── index.ts                ToolDef, ToolContext, ToolResult, API tipovi
├── protocol/
│   ├── tools.ts                41 definicija alata (Zod sheme)
│   └── mcp-server.ts           MCP server + stdio transport
├── nvd/
│   ├── index.ts                NVD API v2 — pretraga, preuzimanje, nedavni
│   └── cpe.ts                  Pretraga proizvoda/CPE
├── epss/
│   └── index.ts                EPSS — ocjena, vrh
├── kev/
│   └── index.ts                KEV — provjera, pretraga, nedavni (keširan)
├── ghsa/
│   └── index.ts                GitHub Advisory — pretraga, preuzimanje
├── osv/
│   └── index.ts                OSV — upit, preuzimanje, grupni
├── exploit/
│   └── index.ts                PoC pretraga putem GitHub repozitorija
├── shodan/
│   └── index.ts                Shodan CVEDB + InternetDB (bez autentifikacije)
├── vulncheck/
│   └── index.ts                VulnCheck KEV, CPE, PURL
├── vulners/
│   └── index.ts                Vulners pretraga + upit
├── nuclei/
│   └── index.ts                Provjera postojanja Nuclei šablona
├── metasploit/
│   └── index.ts                Provjera MSF modula (keširani metapodaci)
├── cpe/
│   └── index.ts                NVD CPE dictionary API
├── circl/
│   └── index.ts                CIRCL CVE obogaćenje
├── attackerkb/
│   └── index.ts                AttackerKB procjene
├── attack/
│   └── index.ts                CWE → MITRE ATT&CK mapiranje
├── cwe/
│   └── index.ts                CWE API (MITRE) + statički fallback
├── cvss/
│   └── index.ts                CVSS v3.1 + v4.0 parser + kalkulator
├── meta/
│   ├── enrich.ts               Potpuno obogaćenje CVE (8 izvora paralelno)
│   ├── prioritize.ts           Rangiranje CVE zasnovano na riziku
│   ├── trending.ts             CVE u trendu po EPSS
│   ├── compare.ts              Uporedni prikaz CVE
│   └── sources.ts              Provjera zdravlja 11 izvora
└── utils/
    ├── rate-limiter.ts          Red-bazirani rate limiter
    └── cache.ts                 TTL keš
```

**Projektne odluke:**

- **Obavještajne informacije, ne revizija** &mdash; Za razliku od [cloud-audit-mcp](https://github.com/badchars/cloud-audit-mcp) i [github-security-mcp](https://github.com/badchars/github-security-mcp), ovo je alat za podatke. Nema CheckResult, nema akumulacije nalaza. Svaki upit je nezavisan i bez stanja.
- **Paralelno obogaćenje** &mdash; `cve_enrich` poziva 8 izvora putem `Promise.allSettled`. Ako je jedan izvor nedostupan, ostali i dalje vraćaju podatke.
- **Detekcija naoružavanja** &mdash; Provjerava postojanje Nuclei šablona i Metasploit modula da označi CVE sa javnim alatima za eksploataciju.
- **Dijeljeni rate limiter** &mdash; Svi NVD moduli dijele jednu instancu `RateLimiter` (6s između zahtjeva) da izbjegnu 429 greške.
- **KEV + MSF keširanje** &mdash; KEV katalog (~1200 unosa) i MSF metapodaci modula (~15MB) učitavaju se jednom, keširaju sa TTL od 1 sata.
- **CWE dvojni režim** &mdash; MITRE CWE REST API za pune detalje (1000+ CWE), sa statičkim fallback-om (40+ unosa) kada API nije dostupan.
- **CVSS v3.1 + v4.0** &mdash; Automatska detekcija verzije po prefiksu vektora. V4.0 koristi MacroVector pristup ocjenjivanju.
- **ATT&CK mapiranje** &mdash; Statička CWE-u-tehniku tabela (33 CWE unosa → ATT&CK tehnike). Bez API poziva.
- **2 zavisnosti** &mdash; `@modelcontextprotocol/sdk` i `zod`. Ništa drugo.

---

## Ograničenja

- NVD API bez `NVD_API_KEY` je ograničen na 5 zahtjeva po 30 sekundi. Postavite ključ za produkcijsku upotrebu
- GitHub Advisory pretraga bez `GITHUB_TOKEN` je ograničena na 60 zahtjeva po satu
- VulnCheck, Vulners i AttackerKB zahtijevaju API ključeve za punu funkcionalnost
- Pretraga eksploita koristi GitHub pretragu repozitorija koja ima svoja ograničenja brzine
- MSF metapodaci modula (~15MB) se učitavaju pri prvoj upotrebi — prvi poziv `msf_check` je sporiji
- CVSS v4.0 ocjenjivanje koristi MacroVector aproksimaciju (tačna specifikacija je veoma složena)
- ATT&CK mapiranje pokriva 33 CWE unosa — neuobičajeni CWE se možda neće mapirati
- macOS / Linux (Windows nije testiran)

---

## Dio MCP Security Suite

| Projekat | Domena | Alati |
|----------|--------|-------|
| [hackbrowser-mcp](https://github.com/badchars/hackbrowser-mcp) | Sigurnosno testiranje zasnovano na pretraživaču | 39 alata, Firefox, testiranje injekcija |
| [cloud-audit-mcp](https://github.com/badchars/cloud-audit-mcp) | Sigurnost oblaka (AWS/Azure/GCP) | 38 alata, 60+ provjera |
| [github-security-mcp](https://github.com/badchars/github-security-mcp) | GitHub sigurnosni stav | 39 alata, 45 provjera |
| **cve-mcp** | Obavještajne informacije o ranjivostima | 41 alat, 11 izvora |

---

<p align="center">
<b>Samo za autorizirano sigurnosno testiranje i procjenu.</b><br>
Uvijek se uvjerite da imate odgovarajuću autorizaciju prije testiranja sistema.
</p>

<p align="center">
  <a href="LICENSE">MIT licenca</a> &bull; Izgrađeno sa Bun + TypeScript
</p>
