Provides tools for querying and retrieving Falco security events from Falcosidekick UI, including normalized event data from syscall, Kubernetes audit, and AWS CloudTrail sources, with support for temporal filtering and full event inspection by UUID.
Enables access to Kubernetes audit events captured by Falco, including metadata about Kubernetes resources and operations for security monitoring and analysis.
Falcosidekick UI MCP Server
This folder contains a lightweight Model Context Protocol (MCP) server that exposes the Falcosidekick UI /api/v1/events/search endpoint as a tool. The server uses HTTP Basic Auth (default admin:admin) and runs in streamable HTTP mode so MCP clients can connect over plain HTTP.
Layout
falco_mcp_server.py– FastMCP implementation exposing Falco events over Falcosidekick UI API via two toolsrequirements.txt– Python dependencies (mcp,httpx,boto3)Dockerfile– Container image that launches the server on port8080k8s/– Deployment and Service manifests to run the server in Kubernetes
Environment variables
Variable | Default | Description |
|
| Falcosidekick UI base URL |
|
| Override the events endpoint path if needed |
/
|
/
| Basic Auth credentials |
|
| HTTP timeout in seconds |
|
| MCP HTTP listener port |
|
| Streamable HTTP mount path |
|
| Set to
if your MCP client expects stdio transport |
Available tools
Tool | Description |
| Returns Falco events with normalized
. Syscall, k8s_audit, and aws_cloudtrail sources keep only their most useful fields (container/process info, Kubernetes target metadata, CloudTrail principals). All events always retain
,
,
,
,
,
, and
. Syscall
values are truncated to ~120 chars to limit token usage. Use
/
for temporal windows instead of embedding time comparisons inside
. |
| Fetches the raw Falco event for a single
. It builds a UUID filter and leaves the response untouched so you can inspect every original field. |
When calling either tool you can pass start_time / end_time arguments. Provide timestamps in ISO 8601 UTC form (e.g. 2025-11-24T03:59:59.848208Z). The server converts them to timezone-aware datetimes internally and removes any events that fall outside that window, while still sending since=1M upstream to keep the search bounded.
Local run
Then configure your MCP client with:
Docker
Kubernetes
The provided manifests assume the Falcosidekick UI is exposed as http://falcosidekick-ui:2802 and that the admin credentials remain admin:admin (see k8s/falco-mcp-deployment.yaml). If your environment uses different credentials or a different service name, edit the env vars before deploying.