netwitness-mcp-server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@netwitness-mcp-serverShow me all open incidents from the past 24 hours."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
netwitness-mcp-server
A Model Context Protocol (MCP) server that lets an LLM agent (Claude, or any other MCP-compatible client) query a NetWitness environment directly — sessions, meta values, alerts, and incidents — through natural-language requests instead of hand-written queries against the NetWitness UI or REST API.
Built against the NetWitness home lab described in my other repos, mainly to answer a practical question: can an agent actually reason usefully about detection/response data if it's given the right tools, instead of just a raw API wrapper? This is the tool layer that lets it try.
What it exposes
Nine tools, each returning a consistent JSON envelope (status, tool,
query, data, metadata, error) so a calling agent can parse results
predictably instead of guessing at response shape:
Tool | Purpose |
| Query session/packet metadata from a Concentrator or Broker |
| List distinct values for a given meta key |
| Query alerts by criteria |
| List available meta keys and their descriptions |
| Return NetWitness query syntax reference |
| Query incidents from the Admin Server / Respond module |
| Get alerts tied to a specific incident |
| Change an incident's status |
| Add a journal entry to an incident |
Related MCP server: Vectra AI On-Premise MCP Server
Architecture
netwitness_mcp_server.py— the server itself, built on the officialmcpPython SDK (FastMCP). Talks to a NetWitness Concentrator/Broker for session/meta/alert data and to the NetWitness Admin Server REST API for incident management. All credentials and endpoints come from environment variables — nothing is hardcoded.Dockerfile— packages the server as a container image, run as a non-root user.config/— reference configs for wiring this into Docker's MCP Gateway/Toolkit and Claude Desktop, both local (same host) and remote (server on a different host than the MCP client).
Setup
Requires a NetWitness environment (Concentrator/Broker + Admin Server) and Docker Desktop with the MCP Toolkit.
docker build -t netwitness-mcp-server .
docker mcp secret set NETWITNESS_API_URL="https://<concentrator-or-broker-ip>:50105"
docker mcp secret set NETWITNESS_USERNAME="<username>"
docker mcp secret set NETWITNESS_PASSWORD="<password>"
docker mcp secret set NW_ADMIN_URL="https://<admin-server-ip>"
docker mcp secret set NW_ADMIN_USERNAME="<username>"
docker mcp secret set NW_ADMIN_PASSWORD="<password>"Then register the server with Docker's MCP catalog/registry using the files
in config/docker-mcp-catalog.yaml and config/docker-mcp-registry.yaml
(copy or merge into ~/.docker/mcp/catalogs/custom.yaml and
~/.docker/mcp/registry.yaml), and point your MCP client at it — see
config/claude_desktop_config.local.json for same-host setup or
config/claude_desktop_config.remote.json plus an
MCP Gateway container
for cross-host setup.
Notes
This talks to NetWitness's own REST APIs the way any external integration would — it doesn't embed or redistribute any NetWitness product code.
Not affiliated with or endorsed by RSA/NetWitness. Built independently against a personal home lab instance.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search log events, investigate anomalies, and manage cases in your Knowledge Grid tenant.
MCP-Native LLM Orchestration Agent
LLM Observability & Orchestration Agent
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceConnects AI agents with the CrowdStrike Falcon platform to enable intelligent security analysis, providing programmatic access to detections, incidents, threat intelligence, vulnerabilities, and other security capabilities for advanced security operations and automation.256MIT
- AlicenseNot gradedqualityDmaintenanceConnects AI assistants to the Vectra AI On-Premise security platform for natural language threat detection, investigation, and automated incident response workflows.3MIT
- AlicenseNot gradedqualityAmaintenanceEnables natural language threat hunting and incident response by connecting LLMs to enterprise security data sources like Elasticsearch, EVTX logs, PCAP files, and Velociraptor.206GPL 3.0
- AlicenseNot gradedqualityBmaintenanceConnects AI agents with the CrowdStrike Falcon platform to programmatically access detections, threat intelligence, host management, and other security capabilities for intelligent security analysis and automation.1MIT