Automate analysis
Choose the narrowest interface that fits the integration. All interfaces use the same pass implementations and cached results.
Interfaces
Section titled “Interfaces”| Interface | Best for | Protocol |
|---|---|---|
| CLI | Batch jobs, CI, file exports | Command-line flags and stdout |
| JSON-RPC | Programmatic access from scripts | JSON-RPC 2.0 over TCP |
| MCP | LLM and IDE integration | Model Context Protocol |
| WebSocket | Real-time dashboards, streaming | FlatBuffers over WebSocket |
Quick start
Section titled “Quick start”# Batch analysis via CLI./tenet trace.bin --pattern --algorithm-summary --export-cfg func.dot
# Start JSON-RPC server./tenet trace.bin --rpc-port 4321
# Start MCP server for LLM integration./tenet trace.bin --mcp-port 13337
# Start WebSocket streaming./tenet trace.bin --ws-port 9090All interfaces share the same session lock: only one process may own a given trace at a time. Results are cached and shared across interfaces.