- Home
- MCP servers
- SpiderFoot
SpiderFoot
- javascript
0
GitHub Stars
javascript
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can access SpiderFoot functionality programmatically by running an MCP (Model Context Protocol) server that exposes SpiderFoot actions as tools. Connect your MCP client to either the HTTP endpoint or a local stdio transport to run scans, fetch data, and integrate SpiderFoot capabilities into your automation workflows.
How to use
Connect to the MCP server from any MCP-compatible client. Choose HTTP transport to connect remotely, or run a local stdio transport and launch the MCP server from your environment. Once connected, you can list available tools, initiate scans, retrieve results, and access SpiderFoot endpoints exposed as MCP tools like ping, module listing, event types, scan controls, and logs.
How to install
Prerequisites you need before starting:
-
Node.js 18+ is required. (Node.js 20+ is recommended for better compatibility.)
-
A local SpiderFoot instance is required. You can run SpiderFoot directly or via Docker. Ensure you can reach SpiderFoot at the default web interface URL: http://127.0.0.1:5001
Steps to run and configure
-
Clone the MCP server repository and move into the project directory.
-
Install dependencies.
-
Create and edit the environment configuration to point to your SpiderFoot instance.
-
Start the MCP server in development mode or production mode as described below.
Development mode and production mode
Development mode using stdio transport
npm run dev
Development mode using HTTP transport
npm run dev:http
Production build and start
# Build the project
npm run build
# Start the server
npm start
Available tools
spiderfoot_ping
GET /ping; checks if the SpiderFoot MCP bridge is responsive.
spiderfoot_modules
GET /modules; lists SpiderFoot modules available through the MCP interface.
spiderfoot_event_types
GET /eventtypes; retrieves supported event types from SpiderFoot.
spiderfoot_scans
GET /scanlist; returns the list of scans in progress or completed.
spiderfoot_scan_info
GET /scanopts?id=<sid>; fetches options for a specific scan.
spiderfoot_start_scan
POST /startscan; initiates a new SpiderFoot scan (guarded by ALLOW_START_SCAN).
spiderfoot_scan_data
POST /scaneventresults; submits scan results back to the MCP endpoint.
spiderfoot_scan_data_unique
POST /scaneventresultsunique; submits unique scan event results.
spiderfoot_scan_logs
POST /scanlog; sends log data for a scan.
spiderfoot_export_json
POST /scanexportjsonmulti; exports scan data to JSON.