exploitdb-mcp-server

No description

GitHub Stars

9

User Rating

Not Rated

Forks

1

Issues

2

Views

1

Favorites

0

README
ExploitDB MCP Server

A Model Context Protocol server that provides access to ExploitDB functionality, developed by 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 Contact: 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:

    git clone https://github.com/Cyreslab-AI/exploitdb-mcp-server.git
    cd exploitdb-mcp-server
    
  2. Install dependencies:

    npm install
    
  3. Build the project:

    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:

    npm run update-db
    
  6. Run the server:

    node build/index.js
    
MCP Configuration

To use this server with Claude or other MCP-compatible assistants, add it to your MCP configuration:

{
  "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, maintained by Offensive Security. The data is either downloaded directly from the CSV file or cloned from the ExploitDB GitLab repository.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements
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 or contact us directly at contact@cyreslab.ai.

Author Information

18

Followers

21

Repositories

0

Gists

4

Total Contributions

Top Contributors

Threads