Query CISA KEV / EPSS vulnerability feeds with full per-record provenance and auditable versions
MCP server for Purify's production security-intelligence feeds. Lets Claude Desktop, Cursor and other MCP clients query live CISA KEV / EPSS / enriched vulnerability feeds — every answer carries an auditable feed version and full per-record provenance.
The feeds behind this server are continuously scheduled, quality-gated and
self-healing. Each record ships with a _purify data passport: where it was
fetched from, when, with which extractor, and the hash of the raw artifact it
came from.
| Tool | Purpose |
|---|---|
list_feeds | List feeds with record counts and current version (dataset artifact hash) |
search_feed | AND filters / sort / up to 50 rows, plus an exact total_matched count |
get_provenance | Return a record's _purify passport and the feed's run chain, by CVE id |
check_feed_changed | Incremental primitive: compare a known hash to detect new feed versions |
| Name | Contents |
|---|---|
kev | CISA Known Exploited Vulnerabilities catalog |
epss | EPSS high-risk slice (exploit prediction scores) |
enriched | EPSS + KEV joined view with risk bands |
go install github.com/eason4kim-rocket/purify-feeds-mcp@latest
Or use the Docker image (no Go toolchain needed):
docker pull ghcr.io/eason4kim-rocket/purify-feeds-mcp:latest
Or build from source:
git clone https://github.com/eason4kim-rocket/purify-feeds-mcp
cd purify-feeds-mcp && go build .
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"purify-feeds": {
"command": "/path/to/purify-feeds-mcp",
"env": {
"PURIFY_API_URL": "https://feeds.verifly.pro/feeds-api",
"PURIFY_API_KEY": "<your-api-key>"
}
}
}
}
Or with Docker (the image defaults PURIFY_API_URL to the public gateway):
{
"mcpServers": {
"purify-feeds": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "PURIFY_API_KEY",
"ghcr.io/eason4kim-rocket/purify-feeds-mcp:latest"],
"env": { "PURIFY_API_KEY": "<your-api-key>" }
}
}
}
The public gateway is read-only (GET only, feed whitelist, per-key rate
limits). Health check: https://feeds.verifly.pro/healthz — no key needed.
API keys are issued manually during the pilot — open an issue or
contact the maintainer to get one.
PURIFY_API_URL — feeds API base URL (default http://127.0.0.1:8091 for local/dev use)PURIFY_API_KEY — API key, sent as a bearer token (required for the public gateway)PURIFY_FEEDS — override the built-in feed table: name=spec_id,...get_provenance returns the full passport)artifact_hash, call check_feed_changed first on the
next run, and only re-triage when the feed actually changed.MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
docker run -i --rm ghcr.io/eason4kim-rocket/purify-feeds-mcp:1.0.1Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-eason4kim-rocket-purify-feeds-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/eason4kim-rocket/purify-feeds-mcp:1.0.1"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceghcr.io/eason4kim-rocket/purify-feeds-mcp:1.0.1dockerPurify Security Feeds works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.