WhatConverts MCP by usefulapi

Read WhatConverts leads, calls, forms, accounts and profiles; add leads and update lead value.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
96%
Qualität der Benennung
77%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (2)

  • LOWTool 'whatconverts_get_call_recording_info' name length outside 3-30 rangein whatconverts_get_call_recording_info
  • LOWTool 'whatconverts_list_phone_numbers' name length outside 3-30 rangein whatconverts_list_phone_numbers

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~4,606Tokens (Tool-Definitionen)
~2.5 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (3.60% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "whatconverts": {
      "url": "https://whatconverts.usefulapi.io/mcp"
    }
  }
}

Remote-Endpunkte

https://whatconverts.usefulapi.io/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (15)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢whatconverts_list_leads(start_date, end_date, lead_type, lead_status, quotable, ...)

List tracked leads (phone calls, web forms, chats, texts, emails, events, transactions) with source/medium/campaign/keyword attribution, contact details, quote and sales values, call duration and transcripts. start_date is REQUIRED because WhatConverts otherwise returns only today's leads; a range is at most 400 days. A Profile key sees its own profile; an Agency key can narrow by account_id/profile_id. GET /leads.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "description": "First day/time to include (UTC), e.g. 2026-10-01 or 2026-10-01T00:00:00Z."
    },
    "end_date": {
      "description": "Last day/time to include (UTC). Range from start_date at most 400 days.",
      "type": "string"
    },
    "lead_type": {
      "description": "Only this lead type.",
      "type": "string",
      "enum": [
        "appointment",
        "chat",
        "email",
        "event",
        "other",
        "phone_call",
        "text_message",
        "transaction",
        "web_form"
      ]
    },
    "lead_status": {
      "description": "Repeat or unique contacts.",
      "type": "string",
      "enum": [
        "repeat",
        "unique"
      ]
    },
    "quotable": {
      "description": "Only leads with this quotable state.",
      "type": "string",
      "enum": [
        "yes",
        "no",
        "pending",
        "not_set"
      ]
    },
    "quote_value": {
      "description": "Only leads with / without a quote value.",
      "type": "string",
      "enum": [
        "has_value",
        "no_value"
      ]
    },
    "sales_value": {
      "description": "Only leads with / without a sales value.",
      "type": "string",
      "enum": [
        "has_value",
        "no_value"
      ]
    },
    "phone_number": {
      "description": "Contact phone number, E.164 (+15551234567).",
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "email_address": {
      "description": "Contact email address.",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "user_id": {
      "description": "Only leads handled by this WhatConverts user id.",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "spam": {
      "description": "true = only spam leads.",
      "type": "boolean"
    },
    "duplicate": {
      "description": "true = only duplicate leads.",
      "type": "boolean"
    },
    "lead_source": {
      "description": "Traffic source, e.g. google.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_medium": {
      "description": "Traffic medium, e.g. cpc.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_campaign": {
      "description": "Campaign name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_content": {
      "description": "Ad content.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_keyword": {
      "description": "Keyword.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "account_id": {
      "description": "Agency key only: only this account (see whatconverts_list_accounts).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "profile_id": {
      "description": "Agency key only: only this profile.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "order": {
      "description": "Sort by date created: asc or desc (default desc).",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "customer_journey": {
      "description": "Include customer journey data (Elite plans only).",
      "type": "boolean"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "start_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_lead(lead_id, customer_journey)

One lead by id with every field: type, status, attribution (source, medium, campaign, keyword, landing page), contact details, location, device, quote/sales value, call details, transcripts, form/message content, and custom fields. GET /leads/{lead_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts lead id (from whatconverts_list_leads)."
    },
    "customer_journey": {
      "description": "Include the customer journey (Elite plans only).",
      "type": "boolean"
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_call_recording_info(lead_id)

Recording and voicemail facts for a phone-call lead: the recording and voicemail links, call duration, answer status, tracking/caller numbers and the call/voicemail transcripts. Returns links and text only, never audio. Taken from GET /leads/{lead_id} (the audio endpoint GET /recording returns raw MP3 and is not used).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts lead id of a phone call."
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴whatconverts_update_lead(lead_id, quotable, quote_value, sales_value, lead_url, ...)

WRITE: update a lead's sales data in WhatConverts: quotable state, quote value, sales value, the URL where the lead occurred, and/or custom/additional field values. Only the fields you pass change; it overwrites the previous values of those fields. Sends no notifications. At least one field is required. POST /leads/{lead_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts lead id."
    },
    "quotable": {
      "description": "Quotable state.",
      "type": "string",
      "enum": [
        "yes",
        "no",
        "pending",
        "not_set"
      ]
    },
    "quote_value": {
      "description": "Quote value (number, account currency).",
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "sales_value": {
      "description": "Sales value (number, account currency).",
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "lead_url": {
      "description": "URL where the lead occurred.",
      "type": "string",
      "maxLength": 2000,
      "format": "uri"
    },
    "additional_fields": {
      "description": "Additional field values by field name, e.g. {\"Reason\": \"pricing\"}.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "pattern": "^[^\\[\\]&=#%\\x00-\\x1f]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    },
    "custom_fields": {
      "description": "Custom lead field values by field name.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "pattern": "^[^\\[\\]&=#%\\x00-\\x1f]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡whatconverts_create_lead(lead_type, profile_id, date_created, quotable, quote_value, ...)

WRITE: add a lead to WhatConverts, for example an offline phone call, a form submission from another system or a sale you want attributed. It appears in reports and counts toward lead totals; send_notification is always off, so no emails go out. Not idempotent: calling twice creates two leads. A Profile key adds to its own profile; an Agency key must pass profile_id. POST /leads.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "lead_type": {
      "type": "string",
      "enum": [
        "appointment",
        "chat",
        "email",
        "event",
        "other",
        "phone_call",
        "text_message",
        "transaction",
        "web_form"
      ],
      "description": "Lead type."
    },
    "profile_id": {
      "description": "Profile to add the lead to (required with an Agency key, not with a Profile key).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "date_created": {
      "description": "When the lead happened (UTC); default now.",
      "type": "string"
    },
    "quotable": {
      "type": "string",
      "enum": [
        "yes",
        "no",
        "pending",
        "not_set"
      ]
    },
    "quote_value": {
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "sales_value": {
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "lead_source": {
      "description": "Traffic source, e.g. google.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_medium": {
      "description": "Traffic medium, e.g. cpc.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_campaign": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_content": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "lead_keyword": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email_address": {
      "description": "Contact email address (stored on the lead; nothing is sent to it).",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "phone_number": {
      "description": "Contact phone, E.164.",
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "lead_url": {
      "description": "URL where the lead occurred.",
      "type": "string",
      "maxLength": 2000,
      "format": "uri"
    },
    "landing_url": {
      "description": "URL where the visitor arrived.",
      "type": "string",
      "maxLength": 2000,
      "format": "uri"
    },
    "form_name": {
      "description": "Form name (web_form only).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "message": {
      "description": "Message body (text_message only).",
      "type": "string",
      "minLength": 1,
      "maxLength": 5000
    },
    "call_duration_seconds": {
      "description": "Call length in seconds (phone_call only).",
      "type": "integer",
      "minimum": 0,
      "maximum": 86400
    },
    "answer_status": {
      "description": "phone_call only.",
      "type": "string",
      "enum": [
        "Answered",
        "No Answer",
        "Busy"
      ]
    },
    "caller_number": {
      "description": "Caller number, E.164 (phone_call / text_message).",
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "tracking_number": {
      "description": "Tracking number, E.164 (phone_call / text_message).",
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "destination_number": {
      "description": "Destination number, E.164 (phone_call).",
      "type": "string",
      "pattern": "^\\+[1-9]\\d{6,14}$"
    },
    "additional_fields": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "pattern": "^[^\\[\\]&=#%\\x00-\\x1f]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    },
    "custom_fields": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "pattern": "^[^\\[\\]&=#%\\x00-\\x1f]+$"
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "lead_type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_accounts(start_date, end_date, order, page, per_page)

Agency key only: list the accounts (clients) of the agency with their profiles (id, name, date created). Use the ids to filter leads. start_date/end_date filter by creation date (WhatConverts defaults start_date to today, so pass an early start_date to see all). GET /accounts.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "start_date": {
      "description": "Accounts created from this date (UTC). Pass e.g. 2000-01-01 to list all.",
      "type": "string"
    },
    "end_date": {
      "description": "Accounts created up to this date (UTC).",
      "type": "string"
    },
    "order": {
      "description": "Sort by date created: asc or desc (default desc).",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_account(account_id)

Agency key only: one account by id with its profiles. GET /accounts/{account_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts account id."
    }
  },
  "required": [
    "account_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_profiles(account_id, start_date, end_date, order, page, ...)

Agency key only: list the profiles (websites/campaign sets) of one account. start_date/end_date filter by creation date (WhatConverts defaults start_date to today, so pass an early start_date to see all). GET /accounts/{account_id}/profiles.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts account id."
    },
    "start_date": {
      "description": "Profiles created from this date (UTC). Pass e.g. 2000-01-01 to list all.",
      "type": "string"
    },
    "end_date": {
      "description": "Profiles created up to this date (UTC).",
      "type": "string"
    },
    "order": {
      "description": "Sort by date created: asc or desc (default desc).",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "required": [
    "account_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_profile(account_id, profile_id)

Agency key only: one profile by id (name, date created). GET /accounts/{account_id}/profiles/{profile_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts account id."
    },
    "profile_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts profile id."
    }
  },
  "required": [
    "account_id",
    "profile_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_users(user_type, start_date, end_date, order, page, ...)

Agency key only: list WhatConverts users (email, role, whether activation is pending) of the master account or of client accounts. start_date/end_date filter by creation date (WhatConverts defaults start_date to today, so pass an early start_date to see all). GET /users.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "user_type": {
      "description": "master_account (default) or account users.",
      "type": "string",
      "enum": [
        "master_account",
        "account"
      ]
    },
    "start_date": {
      "description": "Users created from this date (UTC). Pass e.g. 2000-01-01 to list all.",
      "type": "string"
    },
    "end_date": {
      "description": "Users created up to this date (UTC).",
      "type": "string"
    },
    "order": {
      "description": "Sort by date created: asc or desc (default desc).",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_user(user_id)

Agency key only: one user by id with role, notification settings and (for account users) the accounts they can access. GET /users/{user_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "user_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts user id."
    }
  },
  "required": [
    "user_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_roles(role_type, order, page, per_page)

Agency key only: list user roles (id, name, master-account or account type). GET /roles.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "role_type": {
      "description": "master_account (default) or account roles.",
      "type": "string",
      "enum": [
        "master_account",
        "account"
      ]
    },
    "order": {
      "description": "Sort by role name (default asc).",
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_get_role(role_id)

Agency key only: one role with its permission levels (none/view/edit) per area. GET /roles/{role_id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "role_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "WhatConverts role id."
    }
  },
  "required": [
    "role_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_phone_numbers(account_id, profile_id, page, per_page)

List the call-tracking numbers: tracking and destination number, call flow, trigger (source/medium), call recording and messaging flags, last used. A Profile key lists its own profile; an Agency key may filter by account_id/profile_id. GET /tracking/numbers.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "account_id": {
      "description": "Agency key only: only this account.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "profile_id": {
      "description": "Agency key only: only this profile.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢whatconverts_list_web_forms(account_id, profile_id, page, per_page)

List the web forms WhatConverts tracks (id, name, how the form and its submit are matched on the page). A Profile key lists its own profile; an Agency key may filter by account_id/profile_id. GET /tracking/forms.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "account_id": {
      "description": "Agency key only: only this account.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "profile_id": {
      "description": "Agency key only: only this profile.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-250 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 250
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet15 Tools