vdb-mcp
mcp-name: kr.ai.vdb/vdb
MCP (Model Context Protocol) server for VDB — the AI-aware vulnerability database. Lets Claude Desktop, Claude Code, Cursor, Cline, Continue, and any MCP client check packages while generating code: known CVEs, slopsquatting (LLM-hallucinated package names an attacker may have registered), CISA KEV status, MCP-server trust profiles, and more.
Quick start
uvx vdb-mcp # or: pipx run vdb-mcp
Claude Desktop (claude_desktop_config.json) / Cursor (.cursor/mcp.json):
{
"mcpServers": {
"vdb": { "command": "uvx", "args": ["vdb-mcp"] }
}
}
No install at all — point any streamable-HTTP MCP client at the hosted endpoint:
{
"mcpServers": {
"vdb": { "url": "https://vdb.ai.kr/mcp" }
}
}
That's it — the server talks to the hosted instance at https://vdb.ai.kr
by default. Every tool needs an API key (free at https://vdb.ai.kr/signup,
or the agent can request one by email itself: without a key each tool answers
agent_action: REFUSE with a request_key_url). Currently unmetered beyond
abuse protection:
{
"mcpServers": {
"vdb": {
"command": "uvx",
"args": ["vdb-mcp"],
"env": { "VDB_API_TOKEN": "vdb_..." }
}
}
}
Tools
| Tool | What it does |
|---|---|
vdb_check_package |
Check one package (purl + optional version) for vulnerabilities, slop risk, KEV |
vdb_check_packages |
Bulk slopsquatting / risk check for a list of packages |
vdb_scan_lockfile |
Merge verdict for a whole lockfile / SBOM (transitives included) |
vdb_lookup |
Fetch one advisory by ID (CVE-…, GHSA-…, VDB-SLOP-…) |
vdb_search |
Free-text search over the vulnerability corpus |
vdb_check_mcp_server |
Trust tier + permission scopes of a community MCP server |
vdb_list_slopsquatting |
Current slopsquatting candidates per ecosystem |
vdb_harden (local only) |
Call-site hardening: can attacker data reach a dangerous sink through your dependencies? Source never leaves the machine |
vdb_harden_verify (local only) |
Re-analyze after a fix and get signed evidence the path is closed |
vdb_vex (local only) |
OpenVEX document: which advisories cannot be reached |
The three local-only tools need your files, so the hosted endpoint does not
offer them — seven tools remote, ten with uvx vdb-mcp.
Environment
| Variable | Default | Meaning |
|---|---|---|
VDB_API_URL |
https://vdb.ai.kr |
VDB instance to query (set for self-hosted) |
VDB_API_TOKEN |
(empty) | vdb_… API key — required for every tool |
VDB_API_ADDR |
144.202.127.83 |
Where VDB lives when this machine's DNS cannot say — see below |
MCP_MODE |
stdio |
stdio or sse (long-running HTTP server) |
MCP_PORT |
7700 |
SSE port |
No outbound DNS?
Sandboxes often allow egress but not name resolution. When — and only when —
resolving vdb.ai.kr fails, the server retries against VDB_API_ADDR. That
bypasses DNS and nothing else: the TLS handshake still presents the real
hostname and validates its certificate, so a pinned connection is exactly as
authenticated as a resolved one. HTTP errors, refused connections and
timeouts are never retried — the name resolved, so the address would be the
same box.
Why
LLMs hallucinate package names; attackers register them (slopsquatting).
LLMs also happily recommend packages with known RCEs. VDB gives your agent a
guardrail: one tool call before npm install / pip install. See
https://vdb.ai.kr/connect for the one-line prompt variant that needs no MCP
at all.
License
Elastic License 2.0 — free to use, including inside commercial organizations and CI. The only restrictions: you may not offer this software to third parties as a hosted or managed service, or resell it as a product. Commercial licensing beyond that: dev@egdee.com. API usage is governed by the VDB service terms regardless of how you call it.
Release files for vdb-mcp 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vdb_mcp-0.2.1.tar.gz | 46.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vdb_mcp-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 88.7 kB
Release files / vdb_mcp-0.2.1.tar.gz
| Download URL | vdb_mcp-0.2.1.tar.gz |
|---|---|
| Size | 46.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
279351943df768f5e6912f9bedfe89f3836c8386a162f2e89df1d88b19244b54
|
|
BLAKE2b-256 checksum How to use checksums |
f6b706f9f69dfbc24dd630346919a8d93eca5974ae6fdfb25dd89857926d53e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.3
|
Release files / vdb_mcp-0.2.1-py3-none-any.whl
| Download URL | vdb_mcp-0.2.1-py3-none-any.whl |
|---|---|
| Size | 42.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9d46eccba0d4d7649ee63b8b438ef02080eb3174dd42bd6f797b3c7a6b5358ec
|
|
BLAKE2b-256 checksum How to use checksums |
e7ae876b109128d1186f973fc46d2e256339314c87ee2f70f87f07e85598b88c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.3
|