
Qualys Mcp
io.github.rijul170Published by GitHub account rijul170v0.1.0Updated Oct 24, 2026
Full Qualys portal management over MCP: VMDR, PC, WAS, Cloud Agent, Container Security & more
Overview
Local MCP server that exposes a Qualys portal — VMDR, Policy Compliance, WAS, Cloud Agent, Container Security and more — as roughly 400 tools for an MCP client.
- What you can do
- List hosts, host detections and knowledge base entries across VMDR and CSAM/GAV
- Launch scans and query vulnerability, patch and compliance data
- Search WAS findings and inspect container image vulnerabilities
- Work with Cloud Agent, TotalCloud/CloudView, EASM, FIM, EDR and PCRS modules
- Administer the portal, with destructive actions hidden unless explicitly enabled
- When to use it
- Useful when you want an assistant to query or operate your own Qualys subscriptions — triaging vulnerabilities, checking compliance or launching scans — without leaving the chat client. One process is needed per Qualys console.
- Requirements
- Runs locally as a Python package (qualys-mcp-full) over stdio; the README also shows a local HTTP transport. Needs a Qualys API user and password plus a platform/POD code, supplied through QUALYS_USERNAME, QUALYS_PASSWORD and QUALYS_PLATFORM (or explicit URL overrides), or via DPAPI-encrypted blobs on Windows. Network access to the Qualys APIs is required.
Installation
In SourceWeft
- Open Qualys Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Qualys MCP
A Model Context Protocol server for full Qualys portal management — expose VMDR, Policy Compliance, WAS, Cloud Agent, Container Security, TotalCloud, Patch Management, CSAM/GAV, EASM and administration to any MCP‑capable client (Claude, and other MCP hosts).
[CI] [Python] [License: MIT] [MCP] [Tools]
One process per Qualys console (run as many as you have subscriptions). Built on FastMCP, with a single client that speaks all three Qualys API families, a strict read / write / destructive safety model, and credentials that never touch chat or plaintext.
Highlights
- Broad coverage — 59 auto‑discovered feature modules spanning the whole portal: VMDR, PC, WAS, Cloud Agent, Container Security, TotalCloud/CloudView, Patch Management, CSAM/GAV, EASM, FIM, EDR, PCRS, and administration.
- ~400 tools —
list_hosts,list_host_detections,launch_scan,search_was_findings,list_knowledgebase,get_cs_image_vulnerabilities, and hundreds more, each mapped 1:1 to a documented Qualys API operation. - Three API regimes, one client — the classic "FO" XML API, the QPS REST
API, and the JWT‑authenticated Gateway are all handled behind
self._fo/self._qps/self._gateway. - Safety tiers are load‑bearing — every tool is annotated read‑only, write, or destructive. Destructive tools (delete / purge / deactivate) are not even registered unless you opt in per console, and still require a per‑call confirmation token.
- Lazy auth — no network calls at import or construction;
--checkruns fully offline with no credentials. - Secrets stay secret — on Windows, credentials live only in DPAPI‑encrypted blobs; on any OS you can supply them via environment variables. Nothing is ever written to the repo.
The three API regimes
Architecture
Adding a capability is just dropping a file in qualys_mcp/modules/ — see
docs/MODULE_BUILD_GUIDE.md.
Quick start
1. Install
2. Offline sanity check (no credentials required)
Lists every discovered module with its tool count and exits — a good first smoke test.
3. Provide credentials
You need a Qualys API user and your platform/POD code (e.g. US1, US2,
EU1; find it under your console URL or Help → About).
Any OS — environment variables:
Windows — DPAPI‑encrypted blobs (recommended for a persistent deployment):
See .env.example for every QUALYS_* setting.
4. Point your MCP client at it
A ready‑to‑use .mcp.json is included for Claude Code:
scripts/register_mcp_clients.py shows how to register the same local‑HTTP
servers into several MCP clients at once.
Safety model
- Tools are annotated read‑only, write, or destructive.
- Destructive tools (delete, purge, deactivate, uninstall) are not registered
unless the console runs with
QUALYS_ENABLE_DESTRUCTIVE=true. - Even when enabled, each destructive tool requires a matching
confirm=<id>argument before it will act — so a destructive call can never happen by accident from a single prompt.
Read docs/SAFETY_AUDIT.md for the full tiering.
Module & tool inventory
- 59 modules auto‑discovered from
qualys_mcp/modules/. - ~360 tools registered by default; ~400 with
QUALYS_ENABLE_DESTRUCTIVE=true(the extra ~40 are the guarded destructive tools that otherwise stay hidden). - Spread across the three API regimes, with a handful of modules spanning two.
The full per‑module table (registry name, API family, tool counts, one‑line description) is in docs/MODULE_INDEX.md, and a complete endpoint → tool → action breakdown is in docs/ENDPOINTS_TOOLS_ACTIONS.md.
Configuration reference
Development
Contributions welcome — see CONTRIBUTING.md.
Disclaimer
This is an independent, community project. It is not affiliated with, endorsed by, or supported by Qualys, Inc. "Qualys" and product names are trademarks of their respective owners. Use against your own subscriptions in accordance with your Qualys license and API terms. The software is provided "as is" (see LICENSE); you are responsible for what you run against your environment — especially the destructive tier.
Star history
[Star History Chart]License
MIT © 2026 Rijul Sharma
Source: README.md at commit edee0e1
Tools
0Version history
1- v0.1.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts