Skip to main content
Glama
d3ltasecurity

opnsense-guard-mcp

firewall_states

Read-onlyIdempotent

Retrieve the active firewall connection state table, limited to 1–1000 entries, and optionally filter by address or port to inspect current traffic.

Instructions

Active connection state table.

Args: limit: number of states to return (1-1000). search: optional filter on address or port.

Input Schema

NameRequiredDescriptionDefault
limitNo
searchNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that these are *active* states (i.e., current, not historical), which meaningfully distinguishes it from the log tool, but it says nothing about whether the table is truncated, sampled, or how large the underlying table can be.

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

Conciseness4/5

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

Very short with the resource identified up front and parameters immediately after. The inline "Args:" block is slightly awkward inside a description but wastes no words.

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?

With only two optional params and no output schema, the definition covers the essentials, but it never indicates what fields a state entry contains or whether results are capped/paginated — information an agent needs to interpret an empty or truncated result.

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 carries the full burden, and it delivers: limit is given a range (1-1000) that the schema lacks, and search is explained as filtering on address or port. It omits the documented default of 25 and doesn't say what happens when more states exist than the limit.

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

Purpose3/5

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

The phrase "Active connection state table" names the resource (live firewall connection states) but supplies no verb, so the agent must infer that this lists/returns entries. It is reasonably distinguishable from siblings like firewall_log (historical) and firewall_rules (configuration), but that distinction is left implicit.

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?

There is no guidance on when to use this instead of firewall_log, firewall_rules, or arp_table, and no stated prerequisites or exclusions. The agent must guess from the name alone whether this is the right tool for troubleshooting live connections.

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