pg-cve-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PG_CVE_MCP_TTL | No | Cache TTL in seconds for CVE data | 3600 |
| PG_CVE_MCP_DATA_URL | No | CVE data source URL | https://meob.github.io/PG_CVE/postgresql_cves.json |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_cvesA | List all CVEs affecting a specific PostgreSQL version. Args: version: A PostgreSQL version string (e.g. "16.4", "15.8", "14.0"). |
| get_version_statusA | Get a comprehensive security status summary for a PostgreSQL version. Returns EOL status, yanked status, CVE count, max CVSS score, exploit count, and the latest minor in the same branch. Args: version: A PostgreSQL version string (e.g. "16.4", "15.8"). |
| compare_versionsA | Compare the CVE profiles of two PostgreSQL versions side by side. Shows CVEs fixed in v2 (present in v1 but not v2), new CVEs in v2, and CVEs still present in both. Args: v1: First PostgreSQL version (e.g. "16.3"). v2: Second PostgreSQL version (e.g. "16.4"). |
| get_upgrade_pathA | Suggest the recommended upgrade target for a PostgreSQL version. Returns the latest minor in the same branch and, if applicable, suggests upgrading to a newer non-EOL major version. Args: from_version: The currently installed PostgreSQL version (e.g. "16.3"). |
| get_yanked_versionsA | List all PostgreSQL releases that have been flagged as 'yanked' due to serious regressions or data corruption bugs. |
| get_exploitsA | List all CVEs with known public exploits. |
| get_latest_minorA | Find the latest minor release in a given major branch. Args: major: A PostgreSQL major version (e.g. "16", "17", "18"). |
| get_summaryB | Get an overview of the tracked PostgreSQL CVE database. Returns total unique CVEs, known exploits, yanked releases, active and EOL major counts. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool targets a distinct purpose: latest minor, summary stats, CVE listing, status summary, comparison, upgrade path, yanked list, and exploits. Some overlap exists between get_latest_minor and get_upgrade_path (both involve latest minor) and between get_cves and get_exploits (both list CVEs), but descriptions clarify the differences.
Seven of eight tools follow the get_<object> pattern (e.g., get_summary, get_yanked_versions), but compare_versions deviates by using a verb_prefix style. The overall pattern is clear and predictable, with only one outlier.
Eight tools is well within the ideal 3–15 range for a domain-specific server. Each tool covers a distinct query or operation relevant to PostgreSQL CVE tracking, with no redundancy or bloat.
The tool set covers core workflows: version lookup, CVE listing, comparison, upgrade suggestions, yanked releases, and exploit lists. Minor gaps include no tool to list all available major versions or fetch individual CVE details, but these are not critical for the server's apparent purpose.