crowdsec-ops-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Python log level, defaults to `INFO`. | |
| CSCLI_PATH | No | Command name/path used only when formatting prepared `potential_cscli_command` text. The MCP does not run `cscli`. | |
| DEFAULT_WINDOW | No | Default lookback window, defaults to `24h`. | |
| CROWDSEC_LAPI_KEY | Yes | CrowdSec LAPI key for decision reads. | |
| CROWDSEC_LAPI_URL | Yes | CrowdSec LAPI base URL. Required for supported read operation. | |
| WRITE_AUDIT_LOG_PATH | No | JSON Lines audit trail for prepared write intents, defaults to `crowdsec-write-audit.jsonl`. |
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
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| crowdsec_healthA | Report read-only CrowdSec MCP backend health, configuration presence, and exposed capabilities without exposing secrets. |
| inspect_ipB | Inspect CrowdSec decisions and CrowdSec alerts for one IP. |
| security_summaryC | Summarize recent CrowdSec decisions and alerts. |
| top_offendersB | Return top source IPs by recent CrowdSec alert volume. |
| recent_crowdsec_decisionsC | Return active CrowdSec decisions. |
| decision_inventoryA | Summarize active CrowdSec decisions with filters, grouped counts, expiry views, and representative rows. |
| recent_crowdsec_alertsA | Return recent CrowdSec alerts and alert visibility status. LAPI alert lists require machine auth. |
| decision_gap_reportA | Compare active CrowdSec decisions with recent alerts and return read-only attention findings. |
| suggest_scenarioB | Suggest a CrowdSec scenario proposal from repeated CrowdSec patterns. |
| unban_ipA | Prepare and audit a potential cscli command to delete a CrowdSec decision for one IP. The MCP does not execute it. |
| allow_ipA | Prepare and audit a potential cscli command to add a temporary allow decision for one IP. The MCP does not execute it. |
| ban_ipA | Prepare and audit a potential cscli command to add a CrowdSec ban decision for one IP. The MCP does not execute it. |
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 12 tools
Most tools have distinct purposes (e.g., inspect_ip vs. top_offenders vs. decision_inventory), but security_summary and recent_crowdsec_decisions/alerts overlap slightly in scope. Descriptions clarify the differences, so ambiguity is low.
Tool names use consistent snake_case and are descriptive, but the pattern varies between verb_noun (allow_ip, suggest_scenario), adjective_noun (top_offenders, recent_crowdsec_decisions), and noun_noun (crowdsec_health, decision_inventory). Still predictable and readable.
12 tools is well-scoped for a CrowdSec operations server. Each tool serves a clear purpose without bloat, covering health, inspection, listing, summarizing, gap analysis, and command preparation.
The tool set covers core read-only operations (alerts, decisions, health, inspection) and includes command preparation for allow/ban/unban. Missing execution capability is intentional, but the server could benefit from a tool to list scenarios or more detailed alert filtering. Minor gaps.