Skip to main content
Glama

ExploitDB MCP Server

README.md6.14 kB
# ExploitDB MCP Server A Model Context Protocol server that provides access to ExploitDB functionality, developed by [Cyreslab.ai](https://cyreslab.ai). This server enables AI assistants like Claude to query information about security exploits and vulnerabilities, enhancing cybersecurity research and threat intelligence capabilities. **GitHub Repository**: [https://github.com/Cyreslab-AI/exploitdb-mcp-server](https://github.com/Cyreslab-AI/exploitdb-mcp-server) **Contact**: [contact@cyreslab.ai](mailto:contact@cyreslab.ai) ## Features - **Exploit Search**: Search for exploits by keywords, CVE IDs, platforms, and more - **Exploit Details**: Get comprehensive information about specific exploits, including code - **CVE Lookup**: Find all exploits related to specific CVE IDs - **Recent Exploits**: Track newly added exploits - **Statistics**: Get insights into exploit distribution by platform, type, and year - **Automatic Updates**: Keep the database up-to-date with scheduled updates ## Installation ### Prerequisites - Node.js (v16 or higher) - npm (v7 or higher) ### Installation Steps 1. Clone the repository: ```bash git clone https://github.com/Cyreslab-AI/exploitdb-mcp-server.git cd exploitdb-mcp-server ``` 2. Install dependencies: ```bash npm install ``` 3. Build the project: ```bash npm run build ``` 4. Configure the server: - Create a `.env` file in the root directory based on `.env.example` - Adjust settings as needed (data directory, update frequency, etc.) 5. Initialize the database: ```bash npm run update-db ``` 6. Run the server: ```bash node build/index.js ``` ### MCP Configuration To use this server with Claude or other MCP-compatible assistants, add it to your MCP configuration: ```json { "mcpServers": { "mcp-exploitdb-server": { "command": "node", "args": ["/path/to/exploitdb-mcp-server/build/index.js"] } } } ``` ## Usage ### Search Exploits Use the `search_exploits` tool to search for exploits in the database: ``` <use_mcp_tool> <server_name>mcp-exploitdb-server</server_name> <tool_name>search_exploits</tool_name> <arguments> { "query": "wordpress plugin", "platform": "php", "limit": 5 } </arguments> </use_mcp_tool> ``` Additional search parameters: - `type`: Filter by exploit type (e.g., webapps, remote, local) - `cve`: Filter by CVE ID - `author`: Filter by author name - `start_date`/`end_date`: Filter by date range (YYYY-MM-DD) - `verified`: Filter by verified status (true/false) - `offset`: For pagination ### Get Exploit Details Use the `get_exploit` tool to retrieve detailed information about a specific exploit: ``` <use_mcp_tool> <server_name>mcp-exploitdb-server</server_name> <tool_name>get_exploit</tool_name> <arguments> { "id": 12345, "include_code": true } </arguments> </use_mcp_tool> ``` ### Find Exploits by CVE Use the `find_by_cve` tool to find all exploits related to a specific CVE: ``` <use_mcp_tool> <server_name>mcp-exploitdb-server</server_name> <tool_name>find_by_cve</tool_name> <arguments> { "cve": "CVE-2021-44228", "limit": 10 } </arguments> </use_mcp_tool> ``` ### Get Recent Exploits Use the `get_recent_exploits` tool to retrieve recently added exploits: ``` <use_mcp_tool> <server_name>mcp-exploitdb-server</server_name> <tool_name>get_recent_exploits</tool_name> <arguments> { "limit": 10 } </arguments> </use_mcp_tool> ``` ### Get Statistics Use the `get_statistics` tool to get insights about the exploits in the database: ``` <use_mcp_tool> <server_name>mcp-exploitdb-server</server_name> <tool_name>get_statistics</tool_name> <arguments> {} </arguments> </use_mcp_tool> ``` ## Configuration Options The server can be configured using environment variables or a `.env` file: | Variable | Description | Default | | ------------------ | --------------------------------------------- | ----------------------------------------------------------------------------- | | `CLONE_REPOSITORY` | Whether to clone the ExploitDB repository | `false` | | `REPOSITORY_URL` | URL of the ExploitDB repository | `https://gitlab.com/exploit-database/exploitdb.git` | | `CSV_URL` | URL of the ExploitDB CSV file | `https://gitlab.com/exploit-database/exploitdb/-/raw/main/files_exploits.csv` | | `DATA_DIR` | Directory to store data | `./data` | | `DB_PATH` | Path to the SQLite database | `./data/exploitdb.sqlite` | | `UPDATE_INTERVAL` | Update frequency in hours (0 to disable) | `24` | | `MAX_RESULTS` | Maximum number of results to return per query | `10` | ## Data Sources This server uses data from the [Exploit Database](https://www.exploit-db.com/), maintained by [Offensive Security](https://www.offensive-security.com/). The data is either downloaded directly from the CSV file or cloned from the [ExploitDB GitLab repository](https://gitlab.com/exploit-database/exploitdb). ## License This project is licensed under the MIT License - see the LICENSE file for details. ## Acknowledgements - [Offensive Security](https://www.offensive-security.com/) for maintaining the Exploit Database - [Model Context Protocol](https://github.com/anthropics/model-context-protocol) for enabling AI assistants to access external tools ## Contributing Contributions are welcome! Please feel free to submit a Pull Request. Have feature suggestions or found a bug? Please open an issue on our [GitHub repository](https://github.com/Cyreslab-AI/exploitdb-mcp-server) or contact us directly at [contact@cyreslab.ai](mailto:contact@cyreslab.ai).

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cyreslab-AI/exploitdb-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server