Agents and MCP

Let Claude or Cursor scan lists for you: litigators, reassigned numbers, DNC, score ranking. Configs, prompts, and guardrails.

Connect Claude, Cursor, or any MCP client to DialRight and it can scan numbers for you: paste a list, ask a question, get an answer built from real scan results. No SDK, no glue code.

Monitoring Platform uses a different hub and token: Monitoring Agents.

What you can do

You askThe agent does
“Scan these 40 numbers and list any litigators with their case.”POST /v1/scan/bulk, then filters likely_litigator_associated, returns litigator_name, case_reference, repeat_filer
“Which of these were reassigned since we last spoke to them on 2025-06-01?”Same call with reassigned-numbers and last_point_contact, returns reassigned_numbers_result.contact_disconnected
“Rank this list by confidence and drop anything under 30.”Sorts on dialright_score (0–100)
“Which are on a federal or state Do Not Call list?”dnc_fed_number, dnc_state_number
“Which are prepaid mobile or non-fixed VoIP?”is_prepaid, line_type, carrier
“Is 12125550123 safe to call?”POST /v1/scan, summarizes score, risk, DNC, and line type for one number
“Scan leads.csv in batches of 1000 and give me a clean list.”Chunks at 1000, one request per second, merges data arrays

Every result field is documented on the ScanResult schema, so the agent knows what risk_level: "troll" means without guessing.

Connect

MCP URL and header, the same for every client:

https://dialright-developers.calleridrep.com/mcp
Authorization: Bearer YOUR_DIALRIGHT_ORG_TOKEN

Save as .cursor/mcp.json and restart Cursor.

{
  "mcpServers": {
    "DialRight": {
      "url": "https://dialright-developers.calleridrep.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_DIALRIGHT_ORG_TOKEN"
      }
    }
  }
}

Do not send a Monitoring Platform API token here.

Get a token

Scans accept organization API tokens only; a web-app login session is rejected on /v1/scan and /v1/scan/bulk.

  1. Sign in to the DialRight web app as an organization Administrator.
  2. Open the organization’s API tokens page and create a token with a role that is allowed to scan. Set an expiry.
  3. Copy the value once (it is not shown again) and paste it into your MCP config.

More tokens can be created over the API with POST /v1/org/apiTokens using an Administrator-role token. See Authentication.

How a scan happens

The server exposes the OpenAPI spec as generic tools (search-endpoints, get-endpoint, execute-request), not one tool per endpoint. Every scan is the same three steps:

  1. search-endpoints for scan → POST /v1/scan/bulk
  2. get-endpoint → reads ScanBulkRequest and ScanResult
  3. execute-request → sends the request below and filters the data array

The request the agent builds for “which of these were reassigned since 2025-06-01, and are any litigators?”:

{
  "data_sources": ["dr-score-and-basic-info", "reassigned-numbers"],
  "contacts": [
    { "phone_number": "12125550123", "last_point_contact": "2025-06-01" },
    { "phone_number": "13105550199", "last_point_contact": "2025-06-01" }
  ],
  "phone_number_format": "E164",
  "test_mode": false
}

Omit data_sources to run everything. reassigned-numbers needs last_point_contact (YYYY-MM-DD) on every contact. Lists over 1000 are chunked; the bulk endpoint allows 1 request per second.

Reading the results

QuestionField to filter on
Which are litigators?likely_litigator_associated, risk_level (tcpa, troll), litigator_name, case_reference, repeat_filer
Which are on a Do Not Call list?dnc_fed_number, dnc_state_number
Which were reassigned or disconnected?reassigned_numbers_result.contact_disconnected (needs last_point_contact), is_valid
Which are mobile / VoIP / prepaid?line_type, is_prepaid, carrier
Which are businesses?business_associated_number
Rank by confidencedialright_score (0–100, higher is more likely live, reachable, and low risk)

Do not dial when is_valid is false, likely_litigator_associated is true, risk_level is tcpa / troll / dnc_complainers, a DNC flag is true without consent, or contact_disconnected is true.

Cost and test mode

Real scans bill the organization per number and per data source; metadata.cost and metadata.remaining_funds show the charge. test_mode: true skips billing and returns synthetic placeholder values, so use it to check that the request is shaped right, not to make dialing decisions. Tell the agent to confirm with you before any test_mode: false scan of more than a few numbers.

First conversation

  1. “List the DialRight MCP tools.”
  2. “Show the request body for POST /v1/scan/bulk.”
  3. “Run a test_mode: true scan for 12125550123 and explain each field.”
  4. “Now scan it for real and tell me if it is safe to call.”

llms.txt

For agents that read docs rather than call APIs. Add .md to any page URL for its Markdown.

https://dialright-developers.calleridrep.com/llms.txt

Guardrails

  • The MCP also exposes billing, payment-method, and API-token routes. Tell your agent not to call them unless you ask.
  • Ask the agent to print the request before any real scan.
  • Tokens are secrets. Do not paste live tokens into chats, tickets, or shared configs.

Next


Did this page help you?