Back to Directory/Security & Auth

ExposureGuard

Domain security scanning for AI agents. A-F grades, 8 checks, fix snippets.

Security & AuthPythonv1.0.2

ExposureGuard MCP Server

An MCP (Model Context Protocol) server that connects AI assistants to the ExposureGuard domain security scanning API.

Tools

ToolDescription
scan_domainFull security scan — 8 checks, A-F grade, score, findings, report URL (~8s)
get_gradeCached grade lookup (up to 24h old) — fast, no new scan triggered
get_remediationCopy-paste fix snippets for all failing checks
get_dependenciesThird-party scripts/resources loaded by the domain

Setup

1. Get an API Key

Sign up at getexposureguard.com and grab your API key from the dashboard.

2. Install

# Option A: pip install (recommended)
pip install -e /path/to/exposureguard-mcp

# Option B: just install deps
pip install mcp httpx

3. Configure Your AI Client

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "exposureguard": {
      "command": "python",
      "args": ["-m", "exposureguard_mcp.server"],
      "env": {
        "EXPOSUREGUARD_API_KEY": "your-api-key-here"
      }
    }
  }
}

If you installed as a package, you can also use:

{
  "mcpServers": {
    "exposureguard": {
      "command": "exposureguard-mcp",
      "env": {
        "EXPOSUREGUARD_API_KEY": "your-api-key-here"
      }
    }
  }
}
Cursor

Edit .cursor/mcp.json in your project root (or globally at ~/.cursor/mcp.json):

{
  "mcpServers": {
    "exposureguard": {
      "command": "python",
      "args": ["-m", "exposureguard_mcp.server"],
      "env": {
        "EXPOSUREGUARD_API_KEY": "your-api-key-here"
      }
    }
  }
}
Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "exposureguard": {
      "command": "python",
      "args": ["-m", "exposureguard_mcp.server"],
      "env": {
        "EXPOSUREGUARD_API_KEY": "your-api-key-here"
      }
    }
  }
}
VS Code (Copilot)

Edit .vscode/mcp.json in your project:

{
  "servers": {
    "exposureguard": {
      "type": "stdio",
      "command": "python",
      "args": ["-m", "exposureguard_mcp.server"],
      "env": {
        "EXPOSUREGUARD_API_KEY": "your-api-key-here"
      }
    }
  }
}

4. Usage Examples

Once connected, ask your AI assistant:

  • "Scan example.com for security issues"
  • "What's the security grade for cloudflare.com?"
  • "Show me how to fix the security issues on my-site.com"
  • "What third-party scripts does shopify.com load?"

Running Standalone

export EXPOSUREGUARD_API_KEY=your-api-key-here
python -m exposureguard_mcp.server

The server communicates over stdio using the MCP protocol — it's designed to be launched by an MCP client, not used interactively.

Rate Limits

Rate limits depend on your ExposureGuard plan. If you hit a 429 response, the server will return a message suggesting you upgrade at getexposureguard.com/pricing.

Publishing

PyPI

pip install build twine
python -m build
twine upload dist/*

Then users install with: pip install exposureguard-mcp

npm

npm publish

Then users install with: npx exposureguard-mcp

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx exposureguard-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-exposureguard-exposureguard-mcp": {
      "command": "uvx",
      "args": [
        "exposureguard-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

exposureguard-mcppypi

Compatible MCP Clients

ExposureGuard works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More