MCPcopy Index your code
hub / github.com/cisagov/Malcolm

github.com/cisagov/Malcolm @v26.06.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v26.06.1 ↗ · + Follow
3,042 symbols 11,682 edges 237 files 907 documented · 30% updated 20d agov26.06.1 · 2026-06-16★ 2,450152 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Malcolm

Malcolm is a powerful network traffic analysis tool suite designed with the following goals in mind:

  • Easy to use – Malcolm accepts network traffic data in the form of full packet capture (PCAP) files, Zeek logs, and Suricata alerts. These artifacts can be uploaded via a simple browser-based interface or passively captured live and forwarded to Malcolm using lightweight forwarders. In either case, the data is automatically normalized, enriched, and correlated for analysis.
  • Powerful traffic analysis – Visibility into network communications is provided through two intuitive interfaces: OpenSearch Dashboards, a flexible data visualization plugin with dozens of prebuilt dashboards providing an at-a-glance overview of network protocols; and Arkime, a powerful tool for finding and identifying the network sessions comprising suspected security incidents.
  • Streamlined deployment – Malcolm operates as a cluster of software containers – isolated sandboxes that each serve a dedicated function of the system. This container-based deployment model, combined with a few simple scripts for setup and run-time management, makes Malcolm suitable to be deployed quickly across a variety of platforms and use cases; whether it be for long-term deployment on a Linux server in a security operations center (SOC) or for incident response on a Macbook for an individual engagement.
  • Secure communications – All communications with Malcolm, both from the user interface and from remote log forwarders, are secured with industry standard encryption protocols.
  • Permissive license – Malcolm is comprised of several widely used open-source tools, making it an attractive alternative to security solutions requiring paid licenses.
  • Expanding control systems visibility – While Malcolm is great for general-purpose network traffic analysis, its creators see a particular need in the community for tools providing insight into protocols used in industrial control systems (ICS) environments. Ongoing Malcolm development will aim to provide additional parsers for common ICS protocols.

Although all the open-source tools that make up Malcolm are already available and in general use, Malcolm provides a framework of interconnectivity that makes it greater than the sum of its parts.

In short, Malcolm provides an easily deployable traffic analysis tool suite for network security monitoring.

Documentation

See the Malcolm documentation.

Share your feedback

You can help steer Malcolm's development by sharing your ideas and feedback. Please take a few minutes to complete this survey ↪ (hosted on Google Forms) so we can understand the members of the Malcolm community and their use cases for this tool.

Copyright and License

Malcolm is Copyright 2026 Battelle Energy Alliance, LLC.

Malcolm is licensed under the Apache License, version 2.0. See LICENSE.txt for the terms of its release.

Contact information of author(s):

malcolm@inl.gov

Core symbols most depended-on inside this repo

add
called by 266
malcolm-iso/config/includes.chroot/usr/local/bin/fstab.py
info
called by 254
scripts/installer/utils/logger_utils.py
error
called by 181
scripts/installer/ui/gui/components/label.py
debug
called by 170
scripts/installer/utils/logger_utils.py
get_value
called by 108
scripts/installer/core/item_store.py
warning
called by 105
scripts/installer/utils/logger_utils.py
val2bool
called by 97
scripts/malcolm_utils.py
keys
called by 83
filescan/python-filescan/filescan/redis.py

Shape

Function 1,599
Method 1,182
Class 239
Route 21
Enum 1

Languages

Python59%
TypeScript30%
C8%
Ruby3%
PHP1%

Modules by API surface

malcolm-iso/kiosk/interface/static/js/freeboard.thirdparty.min.js438 symbols
nginx/landingpage/js/bootstrap.bundle.min.js388 symbols
filescan/python-filescan/python-statfs/statfs.c241 symbols
scripts/malcolm_utils.py87 symbols
scripts/malcolm_common.py73 symbols
filescan/python-filescan/filescan/redis.py65 symbols
scripts/installer/utils/custom_transforms.py63 symbols
api/project/__init__.py52 symbols
scripts/installer/ui/gui/views/system_view.py45 symbols
scripts/installer/ui/gui/controllers/system_controller.py44 symbols
filescan/python-filescan/filescan/model.py38 symbols
scripts/installer/ui/gui/views/network_view.py35 symbols

For agents

$ claude mcp add Malcolm \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact