FeedLetter MCP by usefulapi

List surveys, votes and feedback; create surveys and read Wall of Love items in FeedLetter.

Sollte ich dies verwenden

Qualität und Sicherheit

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

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

Kontextkosten

~2,107Tokens (Tool-Definitionen)
~5.1 KBTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.65% 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": {
    "feedletter": {
      "url": "https://feedletter.usefulapi.io/mcp"
    }
  }
}

Remote-Endpunkte

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

Was es kann

Tool-Inventar

Tools (4)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢feedletter_list_surveys(q, page)

List or search your FeedLetter surveys (newsletter surveys, one-time polls and web rating widgets), newest first, 50 per page. q matches the name, id or external_id. Each item has id, type, name, external_id, public_title and created_at. While has_more is true, call again with page + 1. Read-only. FeedLetter API: GET /v2/surveys.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Search text: matches name, id or external_id. Omit to list all surveys.",
      "type": "string",
      "maxLength": 255
    },
    "page": {
      "description": "Page number, from 1. Each page holds 50 surveys.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢feedletter_get_survey(survey_id, results_only)

Get one survey by its FeedLetter survey id: settings, placement code (links or embed_html), analytics (votes, daily votes, sentiment) and all feedback. Set results_only to true for just the identity, analytics and feedback. Use the survey id, not the external_id. Read-only. FeedLetter API: GET /v2/surveys/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "survey_id": {
      "type": "string",
      "minLength": 1,
      "description": "The survey id returned by feedletter_list_surveys or feedletter_create_survey."
    },
    "results_only": {
      "description": "true returns only identity, analytics and feedback (no settings or placement code).",
      "type": "boolean"
    }
  },
  "required": [
    "survey_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢feedletter_get_wall_of_love(wall_id)

Get the feedback that one Wall of Love shows, to build your own wall. Each item has id, comment, name (when shown), answer_label, created_at and survey_title. Comment and name are HTML-escaped. Business plan only: other plans get 403 plan_required. Read-only. FeedLetter API: GET /v2/walls-of-love/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "wall_id": {
      "type": "string",
      "minLength": 1,
      "description": "The Wall of Love id, from its /walloflove/{id} address or embed code."
    }
  },
  "required": [
    "wall_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴feedletter_create_survey(type, name, public_title, external_id, text_template, ...)

Create a newsletter survey, a one-time poll or a web rating widget. Needs a Read & write key. Only type and name are required. Newsletter and poll responses return links (one voting link per answer) and email_html; web ratings return embed_html. Set external_id to your own stable id: a second call with the same external_id returns the existing survey (HTTP 200, already_exists) and changes nothing. Without external_id, each call creates a new survey. Do not combine copy_from with text_template. FeedLetter API: POST /v2/surveys.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "newsletter",
        "poll",
        "web_rating"
      ],
      "description": "Survey type."
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255,
      "description": "Internal name (not shown to respondents)."
    },
    "public_title": {
      "description": "Title on public pages such as the Wall of Love. Defaults to name.",
      "anyOf": [
        {
          "type": "string",
          "maxLength": 1000
        },
        {
          "type": "null"
        }
      ]
    },
    "external_id": {
      "description": "Your stable id for this survey, unique across the account. Reuse it when retrying the same creation.",
      "anyOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "text_template": {
      "description": "Texts style. newsletter_defaults is for newsletters only.",
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "friendly",
            "casual",
            "business",
            "newsletter_defaults"
          ]
        },
        {
          "type": "null"
        }
      ]
    },
    "copy_from": {
      "description": "Survey id of a survey of the same type to copy answers and settings from.",
      "anyOf": [
        {
          "type": "string",
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ]
    },
    "satisfaction_survey": {
      "description": "Poll only: enable sentiment and email statistics.",
      "type": [
        "boolean",
        "null"
      ]
    },
    "voting": {
      "description": "Voting block for newsletter and poll surveys. Omit to keep the base answers.",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "question": {
              "description": "Question shown above the answers (newsletter and poll).",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "introduction": {
              "description": "Text shown above the answer links.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "answers": {
              "description": "Newsletter: exactly 3, ordered positive, neutral, negative. Poll: 1 to 5 answers (4 and 5 need Pro).",
              "type": "array",
              "items": {
                "type": "string",
                "minLength": 1,
                "maxLength": 1000
              }
            }
          },
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "rating": {
      "description": "Rating block for web_rating surveys only.",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "question": {
              "description": "Question shown on the web rating widget.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "rating_type": {
              "description": "Answer style for a web rating. Default thumbs.",
              "type": "string",
              "enum": [
                "thumbs",
                "five_stars",
                "five_emojis"
              ]
            }
          },
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "extended_feedback_page": {
      "description": "Extended feedback page after voting.",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "message_after_voting": {
              "description": "Message shown after a vote (Pro).",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "headlines_after_voting": {
              "description": "One headline per answer, in answer order. Must match the answer count when answers are set.",
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 1000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "comment_prompts": {
              "description": "Web rating only: exactly 3 prompts for thumbs, 5 for stars or emojis, best to worst.",
              "type": "array",
              "items": {
                "anyOf": [
                  {
                    "type": "string",
                    "maxLength": 1000
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "comment_field_label": {
              "description": "Comment field label (Pro).",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "comment_box_hint": {
              "description": "Comment box placeholder (Pro).",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "name_placeholder": {
              "description": "Name placeholder. Empty hides the name field.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "email_placeholder": {
              "description": "Email placeholder. Empty hides the email field.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "button_text": {
              "description": "Submit button text.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "thank_you_page": {
      "description": "Thank-you page shown after a vote.",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "headline": {
              "description": "Main thank-you text.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "subheadline": {
              "description": "Supporting text.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "show_result": {
              "description": "Show the voting results after a vote (links surveys).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "cta_text": {
              "description": "Call-to-action caption (Pro).",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "cta_url": {
              "description": "Call-to-action link. Empty clears it.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 2000
                },
                {
                  "type": "null"
                }
              ]
            },
            "x_username": {
              "description": "X username for the share button.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "x_share_button_text": {
              "description": "X share button caption.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 1000
                },
                {
                  "type": "null"
                }
              ]
            },
            "redirect_url": {
              "description": "Redirect after voting (Pro). Empty means no redirect.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 2000
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "advanced": {
      "description": "Advanced settings. Each field inherits its base value when omitted.",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "enable_extended_feedback_page": {
              "description": "Show the extended feedback page after voting (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "prefill_email": {
              "description": "Prefill the email from the voting link's e parameter (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "allow_empty_feedback": {
              "description": "Allow feedback without a comment (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "require_email": {
              "description": "Require an email on a web rating (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "show_widget_after_seconds": {
              "description": "Web rating: delay before the widget shows, in seconds (Pro).",
              "anyOf": [
                {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 3600
                },
                {
                  "type": "null"
                }
              ]
            },
            "enable_review_schema": {
              "description": "Web rating: enable review structured data (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "show_branding": {
              "description": "Show FeedLetter branding (Pro).",
              "type": [
                "boolean",
                "null"
              ]
            },
            "email_on_new_feedback": {
              "description": "Email address that receives a notice for each new feedback (Pro). Empty disables it.",
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 255
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "type",
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet4 Tools