Install
$ agentstack add mcp-blacktop-alf ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Agentic LLDB Fuzzer
ALF lets an AI drive LLDB via the Model Context Protocol to explore crashes, inject mutation hooks, and generate targeted fuzzing corpus. Focused on Apple Mach-O targets on arm64(e).
Getting Started
# 1. Install
uv sync --dev
# 2. Check prerequisites (lldb-dap, Developer Mode, etc.)
uv run alf doctor
# 3. Pick an LLM provider
uv sync --extra anthropic # or openai, google, all-providers
export ANTHROPIC_API_KEY=sk-ant-...
# 4. Try it on the example target
make -C examples/toy_bug
uv run alf analyze --pipeline \
--binary examples/toy_bug/out/toy_bug_fuzz \
--crash examples/toy_bug/crashes/crash_div0
Commands
Crash Triage (alf analyze)
Post-mortem crash analysis: triage, classify, report, minimize, corpus generation.
# Full pipeline (triage -> classify -> report)
uv run alf analyze --pipeline --binary ./fuzz_bin --crash ./crash_input
# Individual steps
uv run alf analyze triage --binary ./fuzz_bin --crash ./crash_input
uv run alf analyze classify --binary ./fuzz_bin --crash ./crash_input --dap-log ./triage.json
uv run alf analyze report --context-json ./triage.json
uv run alf analyze minimize ./fuzz_bin ./crash_input
uv run alf analyze corpus ./fuzz_bin ./crash_input --llm
Fuzzing (alf fuzz)
Three fuzzing engines, all under alf fuzz:
# LLM-driven fuzzing with mutation hooks (default)
uv run alf fuzz auto ./fuzz_bin --corpus ./seeds
# Hybrid: LLM cold-start + native libFuzzer + LLM triage
uv run alf fuzz hybrid ./fuzz_target --corpus ./seeds --max-time 3600
# Jackalope/TinyInst hybrid (macOS framework fuzzing)
uv run alf fuzz jackalope ./harness \
--fuzzer /path/to/fuzzer \
--corpus ./in \
--instrument-module ImageIO \
--target-method _fuzz \
--persist --delivery shmem --threads 4
Jackalope prerequisites: Build from googleprojectzero/Jackalope. See docs/JACKALOPE.md.
Interactive MCP Server (alf server)
Expose 40+ LLDB tools for Claude/Gemini/GPT to drive interactively.
uv run alf server --transport stdio
uv run alf server --transport sse --listen-port 7777
Director Mode (alf director)
End-to-end AI director loop for crash analysis:
uv run alf director --binary ./fuzz_bin --crash ./crash_input --mode auto
LLM Providers
export ANTHROPIC_API_KEY=sk-ant-... # Claude (recommended)
export OPENAI_API_KEY=sk-... # GPT
export GOOGLE_API_KEY=... # Gemini
Auto-detection priority when --provider is not specified:
ALF_LLM_PROVIDERenv varANTHROPIC_API_KEYpresentOPENAI_API_KEYpresentGOOGLE_API_KEYpresent- Local server probe (ports 11434, 1234, 8000, 8080)
For local models (Ollama/LM Studio):
uv run alf fuzz auto ./bin --provider ollama --model llama3.2
Binaries
| Binary | Purpose | |--------|---------| | alf | Main CLI | | alf-llm | LLM adapter (stdin/stdout JSON chat). Used internally by alf analyze classify. Not an MCP server. |
macOS Setup
uv run alf doctor # Check prerequisites
If you see process exited with status -1, enable Developer Mode in System Settings > Privacy & Security > Developer Mode.
Configuration
Copy .alf.toml to your project root and customize. Key settings:
[provider]- LLM provider and model[lldb]- Backend selection (dap/sbapi/lldb_mcp)[fuzz]- Fuzzing parameters[director]- Agent settings
Documentation
docs/ARCHITECTURE.md- System designdocs/QUICKSTART_MCP.md- MCP server setupdocs/JACKALOPE.md- Jackalope/TinyInst integration guideexamples/README.md- Example harnessesskills/README.md- Claude / Claude Code skills for driving alf
License
Apache 2.0 Copyright (c) 2025 blacktop
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: blacktop
- Source: blacktop/alf
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.