takedown
DMCA takedown & host reveal for AI agents: who hosts an infringing URL, even behind Cloudflare.
使うべきか
品質と安全性
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"takedown": {
"url": "https://mcp.lawyerd.net/takedown"
}
}
}リモートエンドポイント
https://mcp.lawyerd.net/takedownstreamable-httpできること
ツール一覧
ツール(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.
入力スキーマ
{
"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#"
}出力スキーマ
{
"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.
入力スキーマ
{
"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#"
}出力スキーマ
{
"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.
入力スキーマ
{
"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#"
}出力スキーマ
{
"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.
入力スキーマ
{
"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#"
}出力スキーマ
{
"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#"
}コミュニティ
エビデンス