Skip to main content
Glama
aqamahn

Tenable OT Security MCP Server

by aqamahn

Query OT vulnerabilities

query_vulnerabilities

Filter Tenable OT vulnerabilities by severity, CVE, family, or source. Each result shows CVSS v3 data, exploit availability flags, and vendor solutions to prioritize patching.

Instructions

Returns Tenable plugins (vulnerabilities) matching the filter criteria. Each result includes CVEs, CVSS v3 score and vector, exploit availability flags (CISA KEV, exploit-available, exploited-by-malware), age, public disclosure date, and the official vendor solution. Call get_vulnerability on a returned plugin id to see every affected asset.

total_count is the full number of plugins matching the filter, independent of the page size — use it to answer 'how many' questions directly. When the match exceeds one page the response sets has_more: true and returns an end_cursor; pass that as after to fetch the next page, repeating until has_more is false to walk the entire matched set.

Filter values use natural OT vocabulary: • severity_at_least: one of 'info', 'low', 'medium', 'high', 'critical' • cve: a CVE substring (e.g. 'CVE-2023-25619' or 'CVE-2023' for a year-bucket) • family / source: exact-match plugin metadata

For KEV-only or exploit-available filtering, inspect the projected flags in the response — those live on plugin details and aren't filterable server-side.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cveNo
afterNo
limitNo
familyNo
searchNo
sourceNo
severity_at_leastNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

With no annotations provided, the description fully carries behavioral transparency. It discloses pagination behavior (total_count, has_more, end_cursor), the nature of results (CVEs, CVSS, exploit flags, age, solution), and the server-side filtering limitation. It makes clear the tool is a query operation without side effects.

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 well-structured with a clear first sentence, a pagination explanation paragraph, and bullet-style filter explanations. Every sentence earns its place and adds value; it is appropriately sized for the tool's complexity.

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

Completeness5/5

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

Given the tool's complexity, an output schema, and no annotations, the description is remarkably complete. It explains result contents, pagination, total_count for 'how many' questions, and filter vocabularies. It also tells the agent when to use a complementary tool. No significant gaps remain.

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

Parameters4/5

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

Schema coverage is 0%, so the description must explain parameters. It explicitly explains severity_at_least, cve, family, and source with natural vocabulary. It also explains 'after' through pagination (pass end_cursor as after). However, the 'search' parameter is not mentioned at all, and 'limit' is only implicitly referenced via page size, so not every parameter is illuminated.

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 tool 'Returns Tenable plugins (vulnerabilities) matching the filter criteria' with a specific verb and resource. It distinguishes itself from sibling query tools like query_assets and query_events by focusing on vulnerabilities and listing the exact return fields.

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?

Provides clear guidance on when to use this tool versus get_vulnerability: 'Call get_vulnerability on a returned plugin id to see every affected asset.' It also explains pagination usage with after/has_more/end_cursor, and notes filtering limitations (KEV flags are not filterable). Lack of explicit when-not-to-use alternatives prevents a higher score.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aqamahn/MCP-server-Tenable-OT-V2'

If you have feedback or need assistance with the MCP directory API, please join our Discord server