urlDNA
आधिकारिकurlDNA.io का उपयोग करके संभावित रूप से दुर्भावनापूर्ण URL को गतिशील रूप से स्कैन और विश्लेषण करें।
urlDNA MCP के साथ आप क्या कर सकते हैं?
- Instant URL safety check —
fast_checkका उपयोग करके तुरंत जाँचें कि कोई URL SAFE, MALICIOUS, या UNRATED है या नहीं। - Full URL scanning —
new_scanके साथ किसी URL का व्यापक स्कैन सबमिट करें औरget_scanके माध्यम से ID द्वारा परिणाम प्राप्त करें। - CQL-based threat search —
searchका उपयोग करके डोमेन, IP, तकनीकों, और दुर्भावनापूर्ण फ़्लैग्स में AND/OR एक्सप्रेशन के साथ स्कैन खोजें। - Saved query management —
create_query,list_queries,update_query, औरdelete_queryके साथ पुनः उपयोग योग्य CQL फ़िल्टर बनाएं, सूचीबद्ध करें, अपडेट करें, और हटाएं। - Brand monitoring —
list_brands,get_brand, औरbrand_scansका उपयोग करके ब्रांड सूचीबद्ध करें, विवरण प्राप्त करें, और संबंधित स्कैन पुनः प्राप्त करें। - API documentation lookup —
search_docsके साथ सीधे पूर्ण urlDNA OpenAPI दस्तावेज़ प्राप्त करें।
दस्तावेज़
urlDNA MCP सर्वर

urlDNA MCP Server सुरक्षा-केंद्रित LLM एजेंटों जैसे OpenAI GPT, Google Gemini और Claude Desktop के लिए नेटिव टूल उपयोग सक्षम करता है, जो API के माध्यम से urlDNA खतरा खुफिया प्लेटफ़ॉर्म के साथ इंटरैक्ट करने के लिए एक सीधा इंटरफ़ेस प्रदान करता है।
रिपॉजिटरी दो ट्रांसपोर्ट पर समान टूलसेट प्रदर्शित करती है:
stdioक्लाउड डेस्कटॉप जैसे स्थानीय डेस्कटॉप एकीकरण के लिए।streamable-httpक्लाउड रन जैसे होस्टेड डिप्लॉयमेंट के लिए।
इंस्टॉलेशन और सेटअप
यह प्रोजेक्ट तेज़ Python पैकेज प्रबंधन के लिए uv का उपयोग करता है।
पूर्वापेक्षाएँ
यदि आपने पहले से नहीं किया है तो uv इंस्टॉल करें:
# On macOS and Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# On Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# Or with pip
pip install uv
त्वरित प्रारंभ
- प्रोजेक्ट क्लोन करें और सेटअप करें:
git clone <repository-url>
cd urlDNA-mcp-server
uv sync
- MCP सर्वर को स्थानीय रूप से चलाएं (stdio मोड):
uv run python urldna_mcp/run.py
- MCP सर्वर को स्ट्रीमेबल HTTP मोड में चलाएं:
uv run python urldna_mcp/server.py
होस्टेड सर्वर इन पर्यावरण चरों को पढ़ता है:
PORT: बाइंड करने के लिए HTTP पोर्ट। डिफ़ॉल्ट8080है।MCP_PATH: सार्वजनिक MCP एंडपॉइंट पथ। डिफ़ॉल्ट/है।
विकास
# Install development dependencies
uv sync --dev
# Run tests (when available)
uv run pytest
# Format code
uv run black .
# Type checking
uv run mypy .
# Lint code
uv run flake8 .
होस्टेड MCP सर्वर
urlDNA MCP सर्वर पहले से होस्टेड और उपलब्ध है:
https://mcp.urldna.io/
यह सर्वर स्ट्रीमेबल HTTP पर सुलभ है, जो इसे क्लाउड रन और अन्य अनुरोध-संचालित प्लेटफ़ॉर्म के लिए उपयुक्त बनाता है।
आप इसे सीधे किसी भी प्लेटफ़ॉर्म या LLM के साथ उपयोग कर सकते हैं जो MCP विनिर्देशन का समर्थन करता है (जैसे, क्लाउड डेस्कटॉप, OpenAI GPT, Google Gemini)।
समर्थित उपकरण
स्कैनिंग
| उपकरण | विवरण |
|---|---|
fast_check | तुरंत जांचें कि क्या URL स्कैन किया गया है। SAFE / MALICIOUS / UNRATED लौटाता है। |
new_scan | पूर्ण स्कैन के लिए URL सबमिट करें और परिणाम की प्रतीक्षा करें (~30–60 सेकंड)। |
get_scan | ID द्वारा पूर्ण स्कैन परिणाम प्राप्त करें। |
खोज
| उपकरण | विवरण |
|---|---|
search | डोमेन, IP, प्रौद्योगिकी, दुर्भावनापूर्ण फ़्लैग और अधिक में CQL (कस्टम क्वेरी भाषा) का उपयोग करके स्कैन खोजें। AND और OR एक्सप्रेशन के साथ-साथ पेजिनेशन का समर्थन करता है (पेज 2+ के लिए PREMIUM आवश्यक है)। |
सहेजी गई क्वेरी
| उपकरण | विवरण |
|---|---|
list_queries | प्रमाणित उपयोगकर्ता के लिए सभी सहेजी गई क्वेरी सूचीबद्ध करें। |
get_query | ID द्वारा विशिष्ट सहेजी गई क्वेरी और उसके फ़िल्टर प्राप्त करें। |
create_query | एक या अधिक CQL फ़िल्टर शर्तों के साथ नई सहेजी गई क्वेरी बनाएं। |
update_query | मौजूदा क्वेरी का नाम और फ़िल्टर अपडेट करें (पूर्ण प्रतिस्थापन)। |
delete_query | ID द्वारा सहेजी गई क्वेरी को स्थायी रूप से हटाएं। |
query_scans | सहेजी गई क्वेरी के लिए सभी मिलान स्कैन प्राप्त करें। |
ब्रांड निगरानी
| उपकरण | विवरण |
|---|---|
list_brands | वैकल्पिक नाम खोज और दृश्यता फ़िल्टर (ALL / FREE / PREMIUM / USER_BRANDS) के साथ उपलब्ध ब्रांड सूचीबद्ध करें। |
get_brand | ID द्वारा विशिष्ट ब्रांड का पूर्ण विवरण प्राप्त करें। |
brand_scans | ब्रांड से जुड़े सभी स्कैन प्राप्त करें। अतिरिक्त CQL फ़िल्टरिंग का समर्थन करता है। |
API संदर्भ
| उपकरण | विवरण |
|---|---|
search_docs | पूर्ण urlDNA OpenAPI और दस्तावेज़ प्राप्त करें। |
क्लाउड डेस्कटॉप के साथ एकीकरण
क्लाउड डेस्कटॉप में urlDNA MCP server को एकीकृत करने के लिए, अपना claude_desktop_config.json अपडेट करें:
{
"mcpServers": {
"urlDNA": {
"command": "uv",
"args": [
"--directory",
"<YOUR_PATH>\\urldna_mcp",
"run",
"urldna_mcp\\run.py"
],
"env": {
"x-api-key": "<urlDNA_API_KEY>"
}
}
}
}
<YOUR_PATH>को उस पैरेंट निर्देशिका से बदलें जिसमें यह रिपॉजिटरी है और<urlDNA_API_KEY>को https://urldna.io से अपनी API कुंजी से बदलें।
होस्टेड MCP क्लाइंट के लिए, उन्हें https://mcp.urldna.io/ या अपने स्वयं के तैनात MCP_PATH पर इंगित करें।
एक बार कॉन्फ़िगर हो जाने पर, आप क्लाउड को प्राकृतिक भाषा में संकेत दे सकते हैं, उदाहरण के लिए:
"urlDNA में paypal जैसे शीर्षक वाले दुर्भावनापूर्ण स्कैन खोजें"
"इटली से दुर्भावनापूर्ण के रूप में चिह्नित मोबाइल स्कैन के लिए एक सहेजी गई क्वेरी बनाएं"
"Google ब्रांड से जुड़े सभी स्कैन दिखाएं"
क्लाउड स्वचालित रूप से सही उपकरण को कॉल करेगा और urlDNA प्लेटफ़ॉर्म से परिणाम लौटाएगा।
OpenAI GPT के साथ MCP सर्वर का उपयोग करना
from openai import OpenAI
# Initialize OpenAI client (assumes OPENAI_API_KEY is set via environment variable)
client = OpenAI()
response = client.responses.create(
model="gpt-3.5-turbo", # Note: MCP tool use requires a Responses API-compatible model
input=[
{
"role": "system",
"content": [{"type": "input_text", "text": "You are a cybersecurity analyst using urlDNA."}]
},
{
"role": "user",
"content": [{"type": "input_text", "text": "Search in urlDNA for malicious scans with title like paypal or login"}]
}
],
text={"format": {"type": "text"}},
reasoning={},
tools=[
{
"type": "mcp",
"server_label": "urlDNA",
"server_url": "https://mcp.urldna.io/",
"headers": {
"x-api-key": "<URLDNA_API_KEY>" # Replace with your urlDNA API key
},
"allowed_tools": [
# --- Scanning ---
"new_scan", # Submit a URL for a full scan and wait for the result
"get_scan", # Retrieve a scan result by ID
"fast_check", # Lightweight instant safety check (SAFE / MALICIOUS / UNRATED)
# --- Search ---
"search", # Search scans using CQL (Custom Query Language, AND/OR supported)
# --- Saved Queries (PREMIUM) ---
"list_queries",
"get_query",
"create_query",
"update_query",
"delete_query",
"query_scans",
# --- Brand Monitoring (PREMIUM) ---
"list_brands",
"get_brand",
"brand_scans",
# --- API Reference ---
"search_docs",
],
"require_approval": "never"
}
],
temperature=0.7,
top_p=1,
max_output_tokens=2048,
store=True
)
print(response.output)
Google Gemini के साथ MCP सर्वर का उपयोग करना
Gemini fastmcp के माध्यम से urlDNA MCP सर्वर से जुड़ता है, और उपकरण स्वचालित रूप से खोजे जाते हैं बजाय allowed_tools सूची के रूप में पारित किए जाने के।
import os
import asyncio
from fastmcp import Client
from fastmcp.client.transports import StreamableHttpTransport
from google import genai
async def main():
# 1. Connect FastMCP client directly to streamable-http
transport = StreamableHttpTransport(
"https://mcp.urldna.io/",
headers={"x-api-key": os.getenv("URLDNA_API_KEY", "YOUR_KEY")},
)
client_mcp = Client(transport)
async with client_mcp:
ai = genai.Client(vertexai=True, project=os.getenv("GOOGLE_CLOUD_PROJECT", "YOUR_PROJECT_ID"))
response = await ai.aio.models.generate_content(
model="gemini-2.5-flash",
contents="Search in urlDNA for malicious scans with title like paypal",
# Pass the live MCP session (not just tool declarations) so Gemini
# can automatically call tools and receive their results.
config=genai.types.GenerateContentConfig(tools=[client_mcp.session]),
)
print(response.text)
if __name__ == "__main__":
asyncio.run(main())
कंटेनर डिप्लॉयमेंट
Docker के साथ बिल्ड और चलाएं:
# Build the container
docker build -t urldna-mcp-server .
# Run the server
docker run -p 8080:8080 -e x-api-key=<URLDNA_API_KEY> urldna-mcp-server
# Optional: override the public MCP path if you do not want /
docker run -p 8080:8080 -e MCP_PATH=/custom-path -e x-api-key=<URLDNA_API_KEY> urldna-mcp-server
# Cloud Run example
gcloud run deploy urldna-mcp-server \
--source . \
--allow-unauthenticated \
--set-env-vars MCP_PATH=/
खोज सिंटैक्स
search और brand_scans उपकरण प्रदान किए गए CQL को सीधे urlDNA API पर अग्रेषित करते हैं। आप शर्तों को AND या OR के साथ जोड़ सकते हैं।
उदाहरण:
malicious = true AND technology LIKE wordpress
domain = google.com OR domain = youtube.com
(domain = paypal.com OR title LIKE paypal) AND country_code = IT
योगदान
- रिपॉजिटरी को फोर्क करें
- एक फीचर ब्रांच बनाएं:
git checkout -b feature-name - विकास निर्भरताएं इंस्टॉल करें:
uv sync --dev - अपने परिवर्तन करें और सुनिश्चित करें कि परीक्षण पास हों
- कोड को फॉर्मेट करें:
uv run black . - एक पुल अनुरोध सबमिट करें
संपर्क और समर्थन
समर्थन या API पहुंच के लिए, https://urldna.io पर जाएं या urldna@urldna.io पर ईमेल करें।