SerpShield
Enables AI agents to scan real-time search data for brand threats, security vulnerabilities, and DeFi risks via MCP-compatible tools.
README
š”ļø SerpShield ā AI Threat Intelligence from Real-Time Search Data
An AI agent that uses SerpApi real-time search data to detect brand threats, security vulnerabilities, and DeFi protocol risk signals across the live web ā exposed as MCP-compatible tools for agent orchestration.
Built for the DevNetwork [API + Cloud + AI] Hackathon 2026 ā SerpApi "Best AI Use Case" track.
Problem
Threat intelligence is reactive and slow. Security teams learn about phishing campaigns, brand impersonation, and DeFi exploits after the damage is done ā usually from a breach notification or a social media post. By then, the attack has already succeeded.
Meanwhile, the answer is already on Google. Search results contain real-time signals: phishing pages indexed hours ago, vulnerability disclosures trending on forums, rug pull discussions appearing in news. But nobody is systematically converting that search data into structured threat intelligence that an AI agent can act on.
Solution
SerpShield is an AI agent that queries SerpApi for real-time search results, classifies them into threat signals (phishing, vulnerability, DeFi risk, brand impersonation, reputation), and produces actionable threat intelligence reports ā all exposed as MCP-compatible tools that any AI agent can call.
How it works:
- Agent constructs threat-hunting queries (e.g.,
"OpenAI" phishing OR scam OR impersonation) - Queries SerpApi for real-time Google search results
- Classifies each result using threat-type keywords and severity heuristics
- Aggregates into a threat intelligence report with a 0ā100 threat score and recommendations
- Exposes everything as MCP tools so other agents can call them
Unique Angle
Unlike existing SerpApi demos (SEO trackers, price monitors, search aggregators), SerpShield turns search data into security intelligence ā and exposes every tool as an MCP-compatible endpoint for AI agent orchestration. It's a threat intel SaaS powered by search data, not a search tool.
Architecture
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Web UI (HTML/CSS/JS) ā
ā Dark dashboard ā threat scanner ā
āāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā fetch() calls
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā FastAPI Application (app/main.py) ā
ā ā
ā /api/health ā service status ā
ā /api/agent/status ā agent config + tool list ā
ā /api/mcp/tools ā MCP tool discovery endpoint ā
ā /api/mcp (POST) ā MCP tool dispatch endpoint ā
ā /api/demo ā full monitoring cycle (demo) ā
ā /api/tools/* ā individual tool endpoints ā
āāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā calls
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā SerpShield Agent (app/agent.py) ā
ā ā
ā scan_brand_threats() ā phishing/impersonation ā
ā scan_security_advisories() ā CVE/vuln detection ā
ā scan_defi_risks() ā rug pull/exploit scan ā
ā generate_threat_report() ā aggregated report ā
ā list_monitoring_targets() ā dashboard summary ā
āāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā HTTP GET
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā SerpApi ā
ā Real-time Google search results JSON API ā
ā (falls back to realistic mock data in demo) ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
Deployed on Vercel as a serverless Python function.
Setup (Under 5 Commands)
git clone https://github.com/0xConsole/serpshield.git
cd serpshield
pip install -r requirements.txt
export SERPAPI_API_KEY="your_key" # optional ā demo mode works without it
uvicorn api.index:app --reload # local dev at http://localhost:8000
Tech Stack
| Layer | Technology |
|---|---|
| Backend | FastAPI (Python) |
| Hosting | Vercel serverless (free tier) |
| Data Source | SerpApi (real-time Google search results) |
| Agent Protocol | MCP-compatible tools (Model Context Protocol) |
| Frontend | Vanilla HTML/CSS/JS ā dark threat intel dashboard |
| No paid services | 100% free tier |
What's Real vs. Mocked
| Component | Status |
|---|---|
| FastAPI backend | ā Real ā deployed and live |
| SerpApi integration | ā
Real ā live calls when SERPAPI_API_KEY is set |
| Threat classification engine | ā Real ā keyword + severity heuristics |
| MCP-compatible tool endpoints | ā
Real ā /api/mcp/tools + /api/mcp POST |
| Web dashboard | ā Real ā interactive threat scanner UI |
| Demo mode (no API key) | ā Real ā uses realistic mock data so judges can demo without a key |
| Threat score calculation | ā Real ā weighted severity aggregation |
| Recommendations engine | ā Real ā rule-based from detected signals |
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/ |
GET | Web dashboard |
/api/health |
GET | Service health + SerpApi mode |
/api/agent/status |
GET | Agent configuration + tool inventory |
/api/mcp/tools |
GET | MCP tool discovery (for agent orchestration) |
/api/mcp |
POST | MCP tool dispatch ({"tool": "scan_brand_threats", "args": {"target": "OpenAI"}}) |
/api/demo |
GET | Full autonomous monitoring cycle (judge demo flow) |
/api/tools/scan_brand_threats |
GET | Scan for brand threats (?target=OpenAI) |
/api/tools/scan_security_advisories |
GET | Scan for CVEs (?technology=FastAPI) |
/api/tools/scan_defi_risks |
GET | Scan DeFi risks (?protocol=Uniswap) |
/api/tools/generate_threat_report |
GET | Full threat report (?target=OpenAI) |
/api/tools/list_monitoring_targets |
GET | All monitoring targets + scores |
SerpApi Track Fit
SerpApi's challenge asks for "an innovative AI application using SerpApi APIs to access reliable, structured, real-time web data" that "solves a meaningful real-world problem."
SerpShield delivers:
- Innovation: Security/threat intelligence is an unexpected SerpApi use case (judges favor unexpected applications over incremental tweaks)
- Real-time web data: Every scan queries live Google results via SerpApi
- Meaningful problem: Threat intelligence is a $10B+ market
- AI agent: Not just a search tool ā an autonomous agent with MCP-compatible tools
License
Apache 2.0 ā See LICENSE
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.