DAP MCP server
Use DAP from Codex or Claude.
Install dap-mcp-server locally, point it at the automation API URL provided with access, and let your agent upload binaries, poll jobs, and pull structured findings.
3
MCP tools
stdio
Local transport
Cloud
Execution path
1 file
Current scope
Workflow
How the MCP path works.
The local MCP server stays thin. It authenticates to the deployed automation API, uploads a binary, polls the job, and retrieves findings when ready.
01
Install the server
Install dap-mcp-server locally with pipx or in your own virtualenv.
02
Export your API config
Point the server at the deployed automation API and provide a raw API key.
03
Register it with your client
Add the stdio server to Codex or Claude so the agent can call the tools directly.
04
Ask for analysis
Tell the agent which local binary to inspect and let it drive the upload and polling flow.
Local stdio transport
Add it to Codex or Claude Code like any other local MCP server.
Documented API only
The server talks to the documented automation API contract and nothing private.
Single-file native binaries
Smart-contract flows and multi-file project uploads are out of scope for this MCP release.
Install
Install once, then export your API settings.
The server only needs a local executable plus the automation API URL and API key. Optional environment variables control polling, wait time, and upload size limits.
Install dap-mcp-server
Use pipx for a clean user-level install, or install from source inside your own environment if you prefer to pin dependencies directly.
Install
pipx install dap-mcp-serverSet required environment variables
At minimum, configure the automation API base URL provided with access and a valid raw API key. The other knobs are optional defaults for local behavior.
Environment
export DAP_AUTOMATION_API_URL="https://<dap-automation-api-base-url>"
export DAP_AUTOMATION_API_KEY="<raw-api-key>"
export DAP_MCP_DEFAULT_ANALYSIS_LEVEL="2"
export DAP_MCP_POLL_INTERVAL_SECONDS="5"
export DAP_MCP_MAX_WAIT_SECONDS="900"
export DAP_MCP_MAX_UPLOAD_BYTES="104857600"Client setup
Point your agent at the MCP server.
Both Codex and Claude Code can launch the MCP server locally over stdio. After this is configured, the agent can call the tools directly from normal conversation.
Add it to ~/.codex/config.toml
Codex reads local MCP servers from your home configuration. Add a dedicated dap entry with the required environment variables.
Codex config
[mcp_servers.dap]
command = "dap-mcp-server"
[mcp_servers.dap.env]
DAP_AUTOMATION_API_URL = "https://<dap-automation-api-base-url>"
DAP_AUTOMATION_API_KEY = "replace-me"Register with one command
Claude Code can add the same local stdio server directly from the terminal with a JSON payload.
Claude command
claude mcp add-json dap '{
"type": "stdio",
"command": "dap-mcp-server",
"env": {
"DAP_AUTOMATION_API_URL": "https://<dap-automation-api-base-url>",
"DAP_AUTOMATION_API_KEY": "replace-me"
}
}'Tool surface
Three tools, one binary workflow.
Most users only need dap_analyze_binary. The other two tools are there when you want explicit job polling or a separate findings fetch step.
dap_analyze_binary
Uploads one local binary, starts the cloud job, and can wait for structured findings before returning.
Example
“Analyze /tmp/suspect.exe with DAP and wait for findings.”
dap_get_analysis_status
Checks the current state of an existing analysis job when you want to poll without re-uploading.
Example
“Check the DAP status for job 9f6c0d5b.”
dap_get_analysis_findings
Retrieves the findings payload for a completed job, optionally including code-side detail.
Example
“Fetch findings for job 9f6c0d5b without code output.”
How to ask for analysis
Once the server is registered, you can talk to the agent normally. The agent decides when to call the MCP tools based on your instruction.
- Analyze /tmp/sample.exe with DAP and summarize the highest-confidence findings.
- Run DAP on ./artifacts/dropper.bin, wait for completion, and tell me which function is most suspicious.
- Check the status of my last DAP job, then fetch findings once they are ready.
Also in docs
Need direct HTTP instead?
Use the automation API directly when you want raw upload, polling, and findings endpoints outside an MCP client.
Need an API key for the MCP flow?
Request access to DAP, then point the local MCP server at the deployed automation API.