takedown
DMCA takedown & host reveal for AI agents: who hosts an infringing URL, even behind Cloudflare.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"takedown": {
"url": "https://mcp.lawyerd.net/takedown"
}
}
}Puntos de conexión remotos
https://mcp.lawyerd.net/takedownstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
🟢resolve_host(url)
Look up who hosts a URL and where an abuse/takedown notice would go. Identifies the CDN/proxy in front (e.g. Cloudflare), the platform, or the direct host and its abuse contact. For direct hosts and previously-revealed domains it returns the real host immediately; for a domain hidden behind a proxy it explains that revealing the true host requires initiating an abuse report. Read-only; files nothing. A lookup, not legal advice; it does not guarantee removal.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"description": "The infringing URL or bare domain"
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"domain": {
"type": "string"
},
"frontedBy": {
"type": "string",
"enum": [
"platform",
"cdn_proxy",
"direct_host",
"unknown"
]
},
"proxy": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"platform": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"abuseChannel": {
"type": "string",
"enum": [
"api",
"form",
"email"
]
},
"formUrl": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"abuseChannel",
"formUrl"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"host": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"abuseEmail": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"abuseEmail"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"revealSource": {
"anyOf": [
{
"type": "string",
"enum": [
"direct",
"cached_reveal"
]
},
{
"type": "null"
}
]
},
"takedownRoute": {
"type": "string",
"enum": [
"host_abuse",
"platform_form",
"search_deindex",
"needs_reveal",
"undetermined"
]
},
"realHostHidden": {
"type": "boolean"
},
"nextStep": {
"type": "string"
}
},
"required": [
"url",
"domain",
"frontedBy",
"proxy",
"platform",
"host",
"revealSource",
"takedownRoute",
"realHostHidden",
"nextStep"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢assess_takedown(url, what)
Assess how a takedown for this URL would proceed: where the notice goes (host, platform, or a hidden host that must be revealed first), what documents and attestation the content owner must supply, the step-by-step process, and the legal caveats (§512(f), scope limits). Read-only; does not judge the merits of the claim and files nothing. Use resolve_host first if you only need the hosting answer.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"description": "The infringing URL or bare domain"
},
"what": {
"type": "string",
"maxLength": 500,
"description": "One line on what was copied (e.g. \"my photo set\", \"my course videos\") — echoed into the plan, not judged"
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"domain": {
"type": "string"
},
"route": {
"type": "string",
"enum": [
"host_abuse",
"platform_form",
"search_deindex",
"needs_reveal",
"undetermined"
]
},
"target": {
"type": "string"
},
"fileable": {
"type": "boolean"
},
"requiredFromYou": {
"type": "array",
"items": {
"type": "string"
}
},
"process": {
"type": "array",
"items": {
"type": "string"
}
},
"legalNotes": {
"type": "array",
"items": {
"type": "string"
}
},
"nextStep": {
"type": "string"
}
},
"required": [
"url",
"domain",
"route",
"target",
"fileable",
"requiredFromYou",
"process",
"legalNotes",
"nextStep"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢start_takedown(url)
Get the secure onboarding link to actually start a takedown. The content owner opens it once in a browser to identify themselves, sign the standing authorization (the one step that legally requires a human), and provide proof of ownership. Returns the link plus what to prepare and what happens next. Creates nothing by itself; filings targeting lawful criticism, reviews or journalism are declined at intake.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"description": "The infringing URL or bare domain"
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"onboardingUrl": {
"type": "string"
},
"whatToPrepare": {
"type": "array",
"items": {
"type": "string"
}
},
"whatHappensNext": {
"type": "array",
"items": {
"type": "string"
}
},
"humanNote": {
"type": "string"
},
"nextStep": {
"type": "string"
}
},
"required": [
"url",
"onboardingUrl",
"whatToPrepare",
"whatHappensNext",
"humanNote",
"nextStep"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡preserve_evidence(url, email, name, company)
Preserve a public web page as evidence BEFORE it disappears: a forensic-grade package — full-page screenshot, raw and rendered HTML, HTTP headers, hosting/registrar context, SHA-256 hashes of every artifact, an OpenTimestamps Bitcoin anchor and an Internet Archive snapshot — delivered to the USER'S OWN email in ~2 minutes (free: 3/day, 10/month per email). Use when the user wants to "save proof", "screenshot for court" or fix a scam/infringing page before takedown. Sends one email to the address given; captures only public pages (no logins/paywalls); lawful preservation only. Not notarization — Lawyerd counsel can add a signed declaration of the capture procedure on request.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 4,
"description": "The public page URL to preserve"
},
"email": {
"type": "string",
"format": "email",
"description": "The USER'S OWN email — the evidence package is delivered there"
},
"name": {
"type": "string",
"maxLength": 200,
"description": "Requester's name (appears in the capture record)"
},
"company": {
"type": "string",
"maxLength": 300,
"description": "Company or the work being protected"
}
},
"required": [
"url",
"email"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Esquema de salida
{
"type": "object",
"properties": {
"accepted": {
"type": "boolean"
},
"url": {
"type": "string"
},
"captureId": {
"type": [
"string",
"null"
]
},
"verificationUrl": {
"type": [
"string",
"null"
]
},
"deliveredTo": {
"type": [
"string",
"null"
]
},
"alreadyCaptured": {
"type": "boolean"
},
"whatHappensNext": {
"type": "array",
"items": {
"type": "string"
}
},
"errorCode": {
"type": [
"string",
"null"
]
},
"nextStep": {
"type": "string"
}
},
"required": [
"accepted",
"url",
"captureId",
"verificationUrl",
"deliveredTo",
"alreadyCaptured",
"whatHappensNext",
"errorCode",
"nextStep"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Comunidad
Evidencia