Skip to main content
Glama

Server Details

NVD MCP — wraps the NIST National Vulnerability Database API (free, no auth)

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
pipeworx-io/mcp-nvd
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.3/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: get_cve retrieves a specific CVE by ID, recent_cves fetches CVEs by date range, and search_cves searches by keyword. There is no overlap in functionality, making tool selection unambiguous for an agent.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (get_cve, recent_cves, search_cves) with clear, descriptive verbs and consistent snake_case formatting. This predictability aids in agent comprehension and usage.

Tool Count4/5

With 3 tools, the server is well-scoped for querying the NVD database, covering key operations: fetching specific CVEs, recent CVEs, and searching. It might benefit from additional tools for filtering or advanced queries, but the count is reasonable and not excessive.

Completeness4/5

The tools provide good coverage for basic CVE lookup and search operations, including fetching by ID, date range, and keyword. Minor gaps exist, such as lack of tools for updating or deleting data (though likely not needed for this read-only domain) or more advanced filtering options, but core workflows are supported.

Available Tools

3 tools
get_cveAInspect

Fetch a specific CVE by its ID (e.g. "CVE-2021-44228"). Returns full details including description, severity, and affected products.

ParametersJSON Schema
NameRequiredDescriptionDefault
cve_idYesCVE identifier, e.g. "CVE-2021-44228"
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the return content ('full details including description, severity, and affected products'), which is valuable behavioral information. However, it lacks details on error handling, rate limits, authentication needs, or data freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the purpose and includes essential details without waste. Every part earns its place by clarifying the action, input, and output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no annotations, no output schema), the description is reasonably complete. It covers purpose, input example, and return content. However, without an output schema, it could benefit from more detail on the structure of 'full details' to aid the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter 'cve_id' well-documented in the schema. The description adds minimal value by reinforcing the example format, but does not provide additional semantics beyond what the schema already specifies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Fetch a specific CVE') and resource ('by its ID'), with an explicit example ('CVE-2021-44228'). It distinguishes from sibling tools by specifying retrieval of a single CVE rather than recent or search operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by specifying 'a specific CVE by its ID,' suggesting this tool is for known CVE lookups. However, it does not explicitly state when to use this versus the 'recent_cves' or 'search_cves' alternatives, nor does it provide exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recent_cvesCInspect

Fetch CVEs published within a date range. Dates must be ISO 8601 format with timezone (e.g. "2024-01-01T00:00:00.000Z").

ParametersJSON Schema
NameRequiredDescriptionDefault
endYesEnd date in ISO 8601 format (e.g. "2024-01-31T23:59:59.000Z")
limitNoMaximum number of results to return (default 10, max 2000)
startYesStart date in ISO 8601 format (e.g. "2024-01-01T00:00:00.000Z")
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the date format requirement but does not cover other behavioral traits such as rate limits, authentication needs, error handling, or what the return format looks like (e.g., list of CVEs with details). This leaves significant gaps for a tool that fetches data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose in the first sentence, followed by a specific format requirement. It is appropriately sized with zero waste, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of fetching CVEs (a data retrieval operation with potential for large results), no annotations, and no output schema, the description is incomplete. It lacks information on return values (e.g., structure of CVE data), pagination, error cases, or performance considerations, which are important for effective tool use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the schema already documents all parameters (start, end, limit) with descriptions and defaults. The description adds value by reinforcing the ISO 8601 format requirement with an example, but does not provide additional meaning beyond what the schema offers, meeting the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Fetch' and the resource 'CVEs published within a date range', making the purpose specific and understandable. However, it does not explicitly differentiate this tool from its siblings 'get_cve' and 'search_cves', which would be needed for a score of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its siblings 'get_cve' and 'search_cves'. It only specifies a date format requirement, which is more about parameter semantics than usage context. No explicit alternatives or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_cvesBInspect

Search CVE vulnerabilities by keyword. Returns CVE ID, description, severity, and CVSS score.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return (default 10, max 2000)
queryYesKeyword(s) to search in CVE descriptions
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions the return format (CVE ID, description, severity, CVSS score) but lacks critical behavioral details such as pagination, rate limits, authentication needs, error handling, or data freshness. For a search tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with zero waste: the first states the purpose, and the second specifies the return format. It is front-loaded and appropriately sized, earning its place efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (search with two parameters) and no annotations or output schema, the description is minimally adequate. It covers purpose and return format but lacks behavioral context and usage guidelines, making it incomplete for optimal agent operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters (query and limit). The description adds no parameter-specific information beyond implying keyword search, which is already covered in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search CVE vulnerabilities by keyword' specifies the verb (search) and resource (CVE vulnerabilities). It distinguishes from 'get_cve' (likely fetch single CVE) and 'recent_cves' (likely fetch recent CVEs without search), but doesn't explicitly contrast them, keeping it at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get_cve' or 'recent_cves'. It mentions what the tool does but offers no context on appropriate use cases, exclusions, or comparisons with siblings, leaving the agent to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.