GetResponse MCP by usefulapi

Manage GetResponse contacts, campaigns, newsletters and autoresponders.

Should I use this

Quality & Safety

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

Findings (1)

  • LOWTool 'getresponse_list_autoresponders' name length outside 3-30 rangein getresponse_list_autoresponders

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,446Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (1.91% 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": {
    "getresponse": {
      "url": "https://getresponse.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

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

What it can do

Tool inventory

Tools (14)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢getresponse_get_account

Get the authenticated GetResponse account profile (id, email, name, company, plan, timezone, etc.). REST: GET /accounts.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_campaigns(name, sortName, sortCreatedOn, page, perPage)

List the account's campaigns — GetResponse's name for mailing lists a contact can subscribe to. Paginated. Optional name filter and sort. REST: GET /campaigns.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Filter by campaign (list) name substring (→ query[name]).",
      "type": "string"
    },
    "sortName": {
      "description": "Sort by campaign name ASC/DESC (→ sort[name]).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    },
    "sortCreatedOn": {
      "description": "Sort by created date ASC/DESC (→ sort[createdOn]).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    },
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_get_campaign(campaignId)

Get a single campaign (mailing list) by id, including subscription confirmation settings. REST: GET /campaigns/{campaignId}.

Input Schema

{
  "type": "object",
  "properties": {
    "campaignId": {
      "type": "string",
      "description": "The campaign (list) id — the alphanumeric token, not the numeric id."
    }
  },
  "required": [
    "campaignId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_contacts(email, name, campaignId, sortEmail, sortCreatedOn, ...)

List/search contacts across the account. Paginated, with optional email/name/campaign filters, sort, and a fields selector. REST: GET /contacts.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "description": "Filter by email substring (→ query[email]).",
      "type": "string"
    },
    "name": {
      "description": "Filter by name substring (→ query[name]).",
      "type": "string"
    },
    "campaignId": {
      "description": "Restrict to contacts in this campaign (list) id (→ query[campaignId]).",
      "type": "string"
    },
    "sortEmail": {
      "description": "Sort by email ASC/DESC (→ sort[email]).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    },
    "sortCreatedOn": {
      "description": "Sort by created date ASC/DESC (→ sort[createdOn]).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    },
    "fields": {
      "description": "Comma-separated list of fields to return, e.g. \"name,email\" (GetResponse `fields`).",
      "type": "string"
    },
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_get_contact(contactId, fields)

Get a single contact by id, including campaign membership, tags, custom field values and engagement scoring. REST: GET /contacts/{contactId}.

Input Schema

{
  "type": "object",
  "properties": {
    "contactId": {
      "type": "string",
      "description": "The contact id."
    },
    "fields": {
      "description": "Comma-separated list of fields to return, e.g. \"name,email\" (GetResponse `fields`).",
      "type": "string"
    }
  },
  "required": [
    "contactId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_newsletters(subject, sortCreatedOn, page, perPage)

List newsletters (one-off email broadcasts). Paginated, with optional subject filter and sort. REST: GET /newsletters.

Input Schema

{
  "type": "object",
  "properties": {
    "subject": {
      "description": "Filter by subject substring (→ query[subject]).",
      "type": "string"
    },
    "sortCreatedOn": {
      "description": "Sort by created date ASC/DESC (→ sort[createdOn]).",
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ]
    },
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_get_newsletter(newsletterId)

Get a single newsletter (email broadcast) by id, including its status and send settings. REST: GET /newsletters/{newsletterId}.

Input Schema

{
  "type": "object",
  "properties": {
    "newsletterId": {
      "type": "string",
      "description": "The newsletter id."
    }
  },
  "required": [
    "newsletterId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_autoresponders(page, perPage)

List autoresponders (drip/cycle emails sent automatically on a schedule after subscription). Paginated. REST: GET /autoresponders.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_tags(page, perPage)

List the account's tags (labels applied to contacts for segmentation). REST: GET /tags.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_custom_fields(page, perPage)

List the account's custom field definitions (custom contact attributes) — id, name, type and values. REST: GET /custom-fields.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢getresponse_list_from_fields(page, perPage)

List the account's verified 'from' fields (sender name/email addresses usable when sending). REST: GET /from-fields.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "1-based page number (pagination).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "perPage": {
      "description": "Records per page (GetResponse `perPage`; default 100, max 1000).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴getresponse_create_contact(email, campaignId, name, dayOfCycle, tags, ...)

Add a contact to a campaign (mailing list). GetResponse processes this asynchronously and returns HTTP 202 (queued) with no body — the contact appears in the list within a few minutes. REST: POST /contacts.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "description": "Contact email address (required)."
    },
    "campaignId": {
      "type": "string",
      "description": "The campaign (list) id to add the contact to (required)."
    },
    "name": {
      "description": "Contact name (defaults to 'Friend' if omitted).",
      "type": "string"
    },
    "dayOfCycle": {
      "description": "Autoresponder cycle day to place the contact on (→ dayOfCycle).",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "tags": {
      "description": "Array of tag ids to apply to the contact.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "note": {
      "description": "A free-text note to attach to the contact.",
      "type": "string"
    },
    "ipAddress": {
      "description": "Contact IP address, used by GetResponse for geolocation.",
      "type": "string"
    }
  },
  "required": [
    "email",
    "campaignId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴getresponse_update_contact(contactId, name, tags, customFieldValues)

Update an existing contact's mutable fields (name, tags, custom field values). Only the fields you supply are changed. REST: POST /contacts/{contactId}.

Input Schema

{
  "type": "object",
  "properties": {
    "contactId": {
      "type": "string",
      "description": "The contact id to update."
    },
    "name": {
      "description": "New contact name.",
      "type": "string"
    },
    "tags": {
      "description": "Array of tag ids to set on the contact.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "customFieldValues": {
      "description": "Custom field values to set (each { customFieldId, value:[...] }).",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "customFieldId": {
            "type": "string",
            "description": "The custom field id."
          },
          "value": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The value(s) for the custom field (array, even for single values)."
          }
        },
        "required": [
          "customFieldId",
          "value"
        ]
      }
    }
  },
  "required": [
    "contactId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴getresponse_delete_contact(contactId, messageId, ipAddress)

Delete (remove) a contact from the account. This unsubscribes them and deletes their data. REST: DELETE /contacts/{contactId}.

Input Schema

{
  "type": "object",
  "properties": {
    "contactId": {
      "type": "string",
      "description": "The contact id to delete."
    },
    "messageId": {
      "description": "Optional id of the message this deletion is attributed to (→ query[messageId]).",
      "type": "string"
    },
    "ipAddress": {
      "description": "Optional IP address to record for the deletion (→ query[ipAddress]).",
      "type": "string"
    }
  },
  "required": [
    "contactId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded14 tools
verifiedversion not recorded14 tools