flameox
flameox is a runtime evidence server for coding agents that enables profiling, benchmarking, memory analysis, and execution investigation of Python workloads — all locally without uploading code or data. It provides MCP tools for:
Workspace initialization, validation, and workload configuration via
flameox.toml.Capability management: listing, installing, and approving adapters (e.g., py-spy, Memray, Perfetto).
Capture planning and execution (single-use and detached long-running captures).
Experiment design, execution, and retrieval of trial results.
Artifact import and query for external trace files.
Evidence extraction from various profilers and test frameworks.
Multiple analysis types: CPU hotspots, memory, execution coverage, PyTorch operators, accelerator launches, scaling, and failures.
Stack and trace inspection, including call graphs and trace windows.
Measurement queries across runs.
Investigations, hypotheses, and findings management.
Comparisons, run set freezing, and statistical analysis.
Reduction of failing artifacts.
Workspace integrity validation.
All operations are read-only on evidence except for explicit recording actions, keeping your code and data local.
Click on "Install 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., "@flameoxInitialize this project and show me which profiling capabilities are available."
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.
Flameox connects profilers, benchmark tools, and trace processors to a local evidence record. It preserves their native artifacts and provenance, then exposes bounded evidence to the agent. The agent states what it wants to test; Flameox captures the measurements and preserves the experiment record for review.
Quick start
Install the local runtime and connect a supported MCP client through the guided setup:
npx flameox@latest setupRestart the client, open the project you intend to inspect, and ask it to:
Initialize Flameox in this project and list the available profiling capabilities.
The setup command installs a versioned local runtime and changes only approved
client configuration. Project initialization is separate and creates
.diagnostics/ only after the client calls the initialization workflow for its
fixed project root.
For source development:
uv sync --extra dev
uv run flameox init .
uv run flameox statusPython 3.12 or newer and the committed uv.lock are required.
Related MCP server: scplus-mcp
Investigation path
symptom → capture or import → bounded evidence → hypothesis
→ discriminating experiment → supported, refuted, or inconclusive findingEvidence sources include pyperf, py-spy, pytest-reportlog, coverage.py, Memray, Perfetto, torch.profiler, Nsight Systems, Nsight Compute, ROCprofiler, Compute Sanitizer, NVBench, and typed inference-provider exports. Availability depends on the host, permissions, installed extras, and selected adapter. Flameox reports missing evidence instead of silently substituting a weaker source.
A profile helps explore a problem; it does not establish a performance or correctness conclusion. That requires a representative workload, a declared metric and estimand, compatible run identity, preserved samples, and an appropriate semantic oracle.
Named workloads
Commands live in flameox.toml as argument arrays. Parameters are declared
scalars; there is no shell expansion.
schema_version = 1
[workloads.scan]
argv = ["python", "bench.py", "--implementation", "{implementation}"]
cwd = "."
timeout_seconds = 60
[workloads.scan.parameters]
implementation = ["baseline", "candidate"]
[workloads.scan.oracle]
strength = "cross_treatment_equivalence"
argv = ["python", "validate.py", "--implementation", "{implementation}"]
[experiments.scan_comparison]
workload = "scan"
design = "randomized_complete_blocks"
blocks = 10
treatment_factor = "implementation"
combination_policy = "cartesian"
primary_metric = "pyperf.workload"
polarity = "lower_is_better"
estimand = "median_paired_log_ratio"
practical_threshold = 0.05
confidence_level = 0.95
random_seed = 1984
[experiments.scan_comparison.factors]
implementation = ["baseline", "candidate"]The MCP configure_workload tool validates and writes the canonical definition
without executing it. A manually authored valid definition is active
immediately; there is no approval copy or secondary workload registry.
uv run flameox workload show scan --json
uv run flameox capture plan pyperf --workload scan \
--parameters '{"implementation":"baseline"}' --json
uv run flameox capture run pyperf --workload scan \
--parameters '{"implementation":"baseline"}' --jsonPlanning resolves every executable once. The resulting binding contains the
exact invocation path, canonical target, trust decision, and file identity.
Execution revalidates that binding instead of searching PATH again. Plans are
short-lived, single-use capabilities whose complete intent is retained in the
workspace SQLite control plane.
Experiments and analysis
uv run flameox investigations create \
'{"question":"Does the candidate remove reverse-scan overhead?"}' --json
uv run flameox hypotheses record @hypothesis.json --json
uv run flameox experiment plan scan_comparison \
--investigation <investigation-id> --adapter pyperf --json
uv run flameox experiment run scan_comparison \
--investigation <investigation-id> --adapter pyperf --jsonExperiments retain randomized treatment order, attempted trials, failures, cancellations, validation receipts, and exclusions. Analyses resolve all input through one pinned corpus snapshot:
uv run flameox analyze hotspots <run-or-artifact>
uv run flameox analyze scaling <experiment-id>
uv run flameox analyze compare @comparison-request.json
uv run flameox analyze memory <run-or-artifact>
uv run flameox analyze execution <run-or-artifact>
uv run flameox analyze pytorch <run-or-artifact>
uv run flameox analyze failuresRead-only analysis does not create a durable claim. Use analyze record,
analyze record-comparison, or findings record when the result should become
part of the investigation history.
Data and safety boundaries
.diagnostics/ contains:
control-plane.sqlite3for plans, operations, runs, revisions, idempotency, and relationships;content-addressed native artifacts;
immutable Parquet generations and corpus commits;
a rebuildable
catalog.duckdbanalytical cache.
Large evidence does not live in SQLite. Deleting catalog.duckdb does not
delete evidence; flameox catalog rebuild recreates it from committed
generations.
The CLI and MCP server expose bounded task-shaped operations, not shell strings, raw SQL, or arbitrary artifact bytes. Workloads may access the network unless active containment denies it. The control process performs network I/O only for explicit setup, upgrade, approved provider acquisition, or explicitly enabled symbol services—not during ordinary capture or analysis.
The trusted-local capture path does not enforce containment for child processes; it records that limitation. Projects that require managed containment can select it explicitly. Planning refuses when the requested guarantee is unavailable.
CLI and MCP discovery
uv run flameox --help
uv run flameox mcp serve --project-root .
uv run flameox mcp inspect --project-root . --jsonmcp inspect is the authoritative inventory of tool schemas, annotations, and
resource templates for the installed version. See CLI and MCP
boundaries for workflow and trust semantics.
Integrity and retention
uv run flameox validate
uv run flameox validate --full
uv run flameox catalog validate
uv run flameox catalog rebuild
uv run flameox recover
uv run flameox gc
uv run flameox gc --applyValidation never repairs evidence. Garbage collection is a dry run unless
--apply is supplied, and applied candidates first move to recoverable trash.
Permanent purge requires a separate explicit command naming an expired trash
manifest.
Documentation
Architecture — authoritative module and process boundaries
Storage and evidence — authority, snapshots, and publication
Investigations — experiments, analysis, and claim quality
Adapters — producer ownership and compatibility
Runtime safety — execution, filesystem, cancellation, and retention
CLI and MCP — public workflow and trust boundaries
Testing — suite ownership and CI lanes
Contributing — development and pull-request workflow
Development
uv sync --extra dev
uv run ruff check src tests tools
uv run mypy src tests tools
uv run pytest -qSee the testing guide for marker and provider commands. Flameox is available under the MIT License.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceProvides local codebase intelligence as an MCP server, enabling AI agents to query dependencies, assess change impact, and produce tamper-evident change evidence packets.509Apache 2.0
- AlicenseBqualityDmaintenanceA local code-intelligence MCP server that provides structural, exact-query, related-search, and research capabilities from a validated repo-local index, enabling agents to perform deterministic lookups, semantic search, and code analysis.21MIT

CarpeOS MCP Serverofficial
AlicenseNot gradedqualityAmaintenanceEnables AI agents to capture, search, and manage structured memory from agent sessions with append-only events and provenance tracking, providing eight local MCP stdio tools.Apache 2.0- AlicenseAqualityCmaintenanceEnables MCP-compatible coding agents to debug applications using runtime log data, by providing tools to start a local log-ingestion server, track debugging sessions and hypotheses, and correlate logs to specific executions.1929MIT
Related MCP Connectors
A paid remote MCP for agent memory MCP, built to return verdicts, receipts, usage logs, and audit-re
A paid remote MCP for AI SDK data query MCP, built to return verdicts, receipts, usage logs, and aud
Remote MCP for A2A failure replay MCP, structured receipts, audit logs, and reviewer-ready evidence.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/morluto/flameox'
If you have feedback or need assistance with the MCP directory API, please join our Discord server