DMCA.com Cases

DMCA.com cases. Your own token via Authorization: Bearer. No function key, no shared token.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
97%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,479Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (1.16% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "dmca-cases": {
      "command": "npx",
      "args": [
        "dmca-cases-mcp"
      ]
    }
  }
}

Runnable packages

npmdmca-cases-mcp1.2.1stdio

Remote endpoints

https://mcp.dmca.com/runtime/webhooks/mcpstreamable-http

What it can do

Tool inventory

Tools (10)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡createCase(subject, description, copiedFromUrl, infringingUrl, infringingSiteIp, ...)

POST https://api.dmca.com/createCase — create managed takedown case. Uses the session/`token` DMCA API token.

Input Schema

{
  "type": "object",
  "properties": {
    "subject": {
      "type": "string",
      "description": "Case subject."
    },
    "description": {
      "type": "string",
      "description": "Case description."
    },
    "copiedFromUrl": {
      "type": "string",
      "description": "Optional original / copied-from URL."
    },
    "infringingUrl": {
      "type": "string",
      "description": "Optional infringing URL."
    },
    "infringingSiteIp": {
      "type": "string",
      "description": "Optional infringing site IP."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "subject",
    "description"
  ]
}
🟡createComplianceCase(submitterEmail, submitterFirstName, submitterLastName, description, siteId, ...)

POST https://api.dmca.com/createComplianceCase — create compliance case. siteId site owner must have feature enabled. Uses the session/`token` DMCA API token.

Input Schema

{
  "type": "object",
  "properties": {
    "submitterEmail": {
      "type": "string",
      "description": "Submitter email."
    },
    "submitterFirstName": {
      "type": "string",
      "description": "Submitter first name."
    },
    "submitterLastName": {
      "type": "string",
      "description": "Submitter last name."
    },
    "description": {
      "type": "string",
      "description": "Case description."
    },
    "siteId": {
      "type": "string",
      "description": "Id of the site the case is submitted to (site owner must have feature enabled)."
    },
    "submitterCompanyName": {
      "type": "string",
      "description": "Optional submitter company name."
    },
    "copiedFromUrl": {
      "type": "string",
      "description": "Optional original / copied-from URL."
    },
    "infringingUrl": {
      "type": "string",
      "description": "Optional infringing URL."
    },
    "infringingSiteIp": {
      "type": "string",
      "description": "Optional infringing site IP."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "submitterEmail",
    "submitterFirstName",
    "submitterLastName",
    "description",
    "siteId"
  ]
}
🟡createDIYCase(subject, description, type, copiedFromUrl, infringingUrl, ...)

POST https://api.dmca.com/createDIYCase — create DIY case. Uses the session/`token` DMCA API token.

Input Schema

{
  "type": "object",
  "properties": {
    "subject": {
      "type": "string",
      "description": "Case subject."
    },
    "description": {
      "type": "string",
      "description": "Case description."
    },
    "type": {
      "type": "string",
      "description": "DIY case type: Business - General | Personal - General | Toolkit Business Request CAN|EU|India | Toolkit Personal Request CAN|EU|India."
    },
    "copiedFromUrl": {
      "type": "string",
      "description": "Optional original / copied-from URL."
    },
    "infringingUrl": {
      "type": "string",
      "description": "Optional infringing URL."
    },
    "infringingSiteIp": {
      "type": "string",
      "description": "Optional infringing site IP."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "subject",
    "description",
    "type"
  ]
}
🟢getCaseById(id, token)

GET https://api.dmca.com/getCaseById?id= — fetch one case by id.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Case ID returned by listCases (or equivalent)."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "id"
  ]
}
🟢getSiteReport(domain, token)

GET https://api.dmca.com/getSiteReport/{domain} — site report for a fully qualified domain name. Uses the session/`token` DMCA API token.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "Fully qualified domain name (upstream path /getSiteReport/{domain})."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "domain"
  ]
}
🟢listCases(page, token)

GET https://api.dmca.com/listCases — list managed takedown cases. Optional page.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "description": "Optional page number (max 50 results per page)."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": []
}
🟢listComplianceCases(page, token)

GET https://api.dmca.com/listComplianceCases — list compliance cases. Optional page.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "description": "Optional page number (max 50 results per page)."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": []
}
🟢listDIYCases(page, token)

GET https://api.dmca.com/listDIYCases — list DIY cases. Optional page. An empty account comes back as an empty list.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "type": "number",
      "description": "Optional page number (max 50 results per page)."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": []
}
🟡login(email, password)

POST https://api.dmca.com/login — email/password, no Token header. Returns the DMCA API token; it is reused automatically for the rest of this MCP session, or pass it as `token`. Password never logged.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "description": "DMCA.com account email."
    },
    "password": {
      "type": "string",
      "description": "DMCA.com account password. Never logged."
    }
  },
  "required": [
    "email",
    "password"
  ]
}
🟡updateCase(case_id, subject, description, status, copiedFromUrl, ...)

POST https://api.dmca.com/updateCase — update managed takedown case. Status and priority are kept as they are unless you pass them. Uses the session/`token` DMCA API token.

Input Schema

{
  "type": "object",
  "properties": {
    "case_id": {
      "type": "string",
      "description": "Case ID to update."
    },
    "subject": {
      "type": "string",
      "description": "Case subject."
    },
    "description": {
      "type": "string",
      "description": "Case description."
    },
    "status": {
      "type": "string",
      "description": "Optional new case status. Left unchanged when omitted."
    },
    "copiedFromUrl": {
      "type": "string",
      "description": "Optional original / copied-from URL."
    },
    "infringingUrl": {
      "type": "string",
      "description": "Optional infringing URL."
    },
    "infringingSiteIp": {
      "type": "string",
      "description": "Optional infringing site IP."
    },
    "priority": {
      "type": "string",
      "description": "Optional new priority. Left unchanged when omitted."
    },
    "token": {
      "type": "string",
      "description": "DMCA API token from the login tool; optional if the server/session already has one."
    }
  },
  "required": [
    "case_id",
    "subject",
    "description"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded10 tools