# ── CORE ──────────────────────────────────────────────────────
pylow attach <PID>
pylow flow --last
pylow stitch --services api,worker,ml-service
pylow slow --threshold 200ms --watch
pylow diff --before v1.2 --after v1.3
# ── KERNEL & SYSCALL ──────────────────────────────────────────
pylow syscall <PID>
pylow malloc <PID>
pylow tcp <PID>
pylow io <PID>
pylow flame <PID> --duration 5
pylow sched <PID>
pylow page-faults <PID>
pylow context-switches <PID>
pylow kernel-blocked <PID>
pylow tlb-shootdowns <PID>
pylow irq-impact <PID>
# ── PYTHON RUNTIME ────────────────────────────────────────────
pylow pycall <PID>
pylow pyframe <PID>
pylow pycpu <PID>
pylow pyexcept <PID>
pylow pyiowait <PID>
pylow pygil <PID>
pylow pyleak <PID>
pylow pyreq <PID>
pylow timeline <PID> --duration 5.0
pylow pythread <PID>
pylow pyasync <PID>
pylow pyargs <PID>
pylow pysyscall <PID>
pylow pynplus1 <PID>
pylow pygraph <PID>
pylow pyanomaly <PID>
pylow pydash <PID>
pylow pysingle <PID> handle_request
# ── DIAGNOSTIC WORKFLOWS ──────────────────────────────────────
pylow triage <PID>
pylow cpu-bound <PID>
pylow io-bound <PID>
pylow syscall-storm <PID>
pylow deadlock <PID>
pylow service-map <PID>
pylow ordered-log <PID> --filter-internals
pylow intercept <PID> process_payment
pylow anomaly-trigger <PID> validate_payment
pylow correlation <PID> api-gateway
# ── HTTP & API ────────────────────────────────────────────────
pylow curl-perf <PID> https://api.example.com/endpoint
pylow jwt-decode <PID>
pylow cert-check <PID> api.example.com
pylow rate-limit-test <PID>
pylow parallel-fetch <PID> --concurrency 8
# ── PIPELINE PATTERNS ─────────────────────────────────────────
pylow jq-search <PID> error
pylow awk-stats <PID>
pylow tee-branch <PID>
pylow pipe-decouple <PID> /tmp/payment_pipe
pylow sed-mask <PID>
pylow wire-grep --payload '{"payment_id": "pay_982"}' --pattern '"payment_id"\s*:\s*"([^"]+)"'
pylow jq-foreach <PID>
pylow jq-custom-stdlib --action percentile --data "10,20,30,40,50"
pylow pipeline-etl
pylow grep-jq-interleave --size 1000
pylow jq-sql-export <PID> --table payments
# ── JSON ANALYSIS ─────────────────────────────────────────────
pylow jq-schema <PID>
pylow jq-nulls <PID>
pylow jq-null-paths <PID>
pylow jq-locate-key <PID> salesActivities
pylow jq-key-path <PID> name
pylow jq-all-keys <PID>
pylow jq-leaf-paths <PID> --filter-val COMPLETED
pylow jq-clean-nulls <PID>
pylow jq-depth-map <PID>
pylow jq-type-map <PID>
pylow jq-find-value <PID> gravity_admin
pylow jq-structural-diff <PID>
pylow jq-extract-subtree <PID> appModulesId
pylow jq-summary <PID>
pylow jq-validate-schema <PID> schema.json
pylow jq-array-schema <PID>
pylow jq-null-pct <PID>
pylow jq-non-null-leaves <PID>
pylow jq-parent-context <PID> salesActivities
pylow jq-locate-value-contains <PID> Kernel
pylow jq-trace-all-keys <PID> username
pylow jq-heavy-objects <PID>
pylow jq-repeated-schema <PID>
pylow jq-common-audit <PID>
pylow jq-schema-evolution <PID>
pylow jq-validate-fields <PID>
pylow jq-watch-changes <PID>
pylow jq-reduce <PID>
pylow jq-early-exit <PID> --threshold 1000.0
pylow jq-path-find <PID> --type null
pylow jq-stream-filter <PID>
pylow jq-flat-map <PID>
pylow jq-format-matrix <PID> --format csv
# ── DAG ENGINE ────────────────────────────────────────────────
pylow dag-dry-run --dag "auth: get_user:auth get_catalog:auth create_order:get_user,get_catalog"
pylow dag-run --dag "auth: get_user:auth get_catalog:auth create_order:get_user,get_catalog" --workers 4
pylow dag-run --dag-file dag.json
pylow dag-status
# ── SAGA ORCHESTRATOR ─────────────────────────────────────────
pylow saga-run --steps auth,create_order,reserve_inventory,create_payment
pylow saga-run --steps auth,create_order --fail-at create_order
pylow saga-log
pylow saga-log --log-file /var/log/my_saga.log
pylow saga-replay
pylow saga-replay --log-file /var/log/my_saga.log
# ── PROTOCOL & ADVANCED PIPELINE CONTROL ───────────────────────
pylow net-tcp <PID> --url https://api.example.com
pylow chaos-run --url https://api.example.com/payments --rate 30
pylow contract-test <PID> --contract /path/to/contract.json
pylow rate-limit-check <PID> --headers-file /tmp/headers.txt
pylow shadow-compare --prod-file /tmp/prod.json --staging-file /tmp/staging.json
pylow load-gen --url https://api.example.com/payments --rps 20 --duration 10
pylow webhook-mock --port 9000 --secret whsec_secretkey
pylow behavior-fingerprint --url https://api.example.com/payments
pylow mtls-diagnose --cert /tmp/client.crt --key /tmp/client.key
pylow grpc-proto --method PaymentsService/GetPayment --payload '{"id": 462}'
pylow graphql-nplus1 --url https://api.example.com/graphql
pylow ws-handshake --url wss://api.example.com/ws
pylow infra-fingerprint --url https://api.example.com/payments
pylow diff-fuzz --url-a https://api-v1.example.com --url-b https://api-v2.example.com
pylow mtls-diagnoseVerify mutual TLS configuration, certificate chains validity and pin server certificates.
pylow mtls-diagnose --cert /tmp/client.crt --key /tmp/client.key
pylow grpc-protoEncode protobuf structures to gRPC 5-byte frame binary formats and analyze status trailers.
pylow grpc-proto --method PaymentsService/GetPayment --payload '{"id": 462}'
pylow graphql-nplus1Audit GraphQL schemas for N+1 database round-trip loop overheads and depth limits checks.
pylow graphql-nplus1 --url https://api.example.com/graphql
pylow ws-handshakeVerify WebSocket protocol upgrades and handshake connection status.
pylow ws-handshake --url wss://api.example.com/ws
pylow infra-fingerprintProbe reverse proxy paths, CDN edge caching latency, and WAF rulesets.
pylow infra-fingerprint --url https://api.example.com/payments
pylow diff-fuzzExecute differential fuzz testing between two API versions using prototype pollution and boundary payloads.
pylow diff-fuzz --url-a https://api-v1.example.com --url-b https://api-v2.example.com
pylow jq-reduce <PID>Calculate group summary reductions and running averages from streaming lists.
pylow jq-reduce 4821
pylow jq-early-exit <PID>Perform conditional breaks inside pipelines to exit loops early when values exceed thresholds.
pylow jq-early-exit 4821 --threshold 1000.0
pylow jq-path-find <PID>Locate absolute nested keys matching targeted types (e.g. null, number, string, boolean).
pylow jq-path-find 4821 --type null
pylow jq-stream-filter <PID>Process heavy arrays incrementally without memory overflows using streaming paths.
pylow jq-stream-filter 4821
pylow jq-flat-map <PID>Serialize nested structures into a flat map of dotted keys, and reconstruct them back.
pylow jq-flat-map 4821
pylow jq-format-matrix <PID>Convert JSON payloads to TSV, CSV, Prometheus metrics, or Elasticsearch bulk index maps.
pylow jq-format-matrix 4821 --format csv
pylow wire-grepExtract raw structured values directly from text payloads using PCRE regex capture groups.
pylow wire-grep --payload '{"payment_id": "pay_982"}' --pattern '"payment_id"\s*:\s*"([^"]+)"'
pylow jq-foreach <PID>Track running average values and state bounds dynamically over lists of entries.
pylow jq-foreach 4821
pylow jq-custom-stdlibRun JQ Custom stdlib math routines (percentile, zscore, sliding window) over a list of parameters.
pylow jq-custom-stdlib --action percentile --data "10,20,30,40,50"
pylow pipeline-etlPerform multi-stage ETL extraction, data cleaning, type coercion, and validation checking.
pylow pipeline-etl
pylow grep-jq-interleaveBenchmark DFA regex pre-filtering speeds vs JQ AST interpreter parser checks.
pylow grep-jq-interleave --size 1000
pylow jq-sql-export <PID>Convert JSON attributes into SQL INSERT statements.
pylow jq-sql-export 4821 --table payments
pylow-mcpStart the MCP server (Streamable-HTTP on port 8765 by default). Exposes all 113 pylow tools to any MCP-compatible client.
# HTTP mode (MCP Inspector, Cursor, remote clients)
pylow-mcp
# stdio mode (Claude Desktop local config)
pylow-mcp --stdio
# Custom host/port via env vars
MCP_HOST=0.0.0.0 MCP_PORT=9000 pylow-mcp
Every CLI command maps to an MCP tool with the same name (hyphens become underscores):
| CLI command | MCP tool name |
|---|---|
pylow attach <PID> | attach(pid) |
pylow wire-grep --payload ... --pattern ... | wire_grep(payload, pattern) |
pylow jq-locate-value-contains <PID> <term> | jq_locate_value_contains(pid, partial_val) |
pylow dag-run --dag ... | dag_run(dag, dag_file, workers) |
pylow saga-run --steps ... | saga_run(steps, fail_at, log_file) |
pylow pipeline-etl | pipeline_etl() |
pylow graphql-nplus1 --url ... | graphql_nplus1(url) |
pylow mtls-diagnose --cert ... --key ... | mtls_diagnose(cert, key) |
Tip
Use MCP Inspector (`http://localhost:6274` when running docker-compose) to browse all 113 tools, view their schemas, and run them interactively from the browser.
Content type
Image
Digest
sha256:06e5b4e5f…
Size
62.9 MB
Last updated
4 months ago
docker pull chiefj/pylow-mcp