# Iterate — MCP server on mcp.ai > Connect your Iterate account and use 13 tools for forms and surveys straight from your AI agent. Connect with your own API key. Iterate is a customer feedback platform for distributing surveys, analyzing responses, and managing company user privacy data. By: mcp.ai · official Page: https://mcp.ai/iterate ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_iterate?ms=1787296080000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/iterate/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/iterate/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/iterate/skill.md Postman collection (v2.1): https://mcp.ai/iterate/postman.json ## Tools - iterate_add_survey_recipient(email: string, last_name?: string, survey_id: string, first_name?: string) — Add one email recipient to a survey for a later send without sending the survey now. - iterate_anonymize_company_user(user_id: string, confirm_anonymization: boolean, include_response_properties?: boolean) — Irreversibly remove one Iterate user's email and attributes while retaining survey responses. Optionally also remove response properties. Requires an exact user ID and explicit confirm_anonymization=t - iterate_bulk_anonymize_company_users(emails?: string[], external_ids?: string[], user_properties?: object[], confirm_bulk_anonymization: boolean, include_response_properties?: boolean) — Irreversibly remove identifying data from every Iterate company user matching at least one explicit email, external-ID, or typed user-property selector while retaining survey responses. Requires confi - iterate_bulk_delete_company_user_data(emails?: string[], external_ids?: string[], user_properties?: object[], confirm_bulk_permanent_deletion: boolean) — Permanently delete every matching Iterate company user and all matching users' survey responses using explicit non-empty selectors. This cannot be undone and requires confirm_bulk_permanent_deletion=t - iterate_delete_company_user_data(user_id: string, confirm_permanent_deletion: boolean) — Permanently delete one Iterate user object and all of that user's survey responses. This cannot be undone and requires an exact user ID plus explicit confirm_permanent_deletion=true. - iterate_get_survey(survey_id: string) — Return one survey's configuration and questions by survey ID. The action fails when Iterate embeds an error in an HTTP 200 response. - iterate_get_survey_stats(survey_id: string) — Return delivery, display, response-count, and response-rate statistics for one survey. - iterate_import_survey_recipients(survey_id: string, recipients: object[]) — Add a non-empty batch of email recipients to a survey without sending it, and return duplicate, failure, and success counts. - iterate_list_survey_response_groups(cursor?: string, survey_id: string) — Return one reverse-chronological page of completed survey submissions grouped by user, plus a continuation cursor. - iterate_list_survey_responses(cursor?: string, end_date?: number, survey_id: string, start_date?: number) — Return one reverse-chronological page of individual answers for a survey, with an optional date range and continuation cursor. - iterate_list_surveys() — Return all surveys available to the connected Iterate API key, including the survey and company IDs needed by other tools. - iterate_search_company_users(email?: string, external_id?: string, user_property_name?: string, user_property_value?: string|integer|number|boolean) — Find one user in the connected Iterate company by email, external ID, or one typed user property and return survey participation totals. - iterate_send_survey(email?: string, send_at?: integer|number, audience: string, last_name?: string, survey_id: string, first_name?: string, confirm_send: boolean, custom_fields?: object, delay_seconds?: integer|number) — Irreversibly send or schedule an email survey to one specified recipient or every previously added recipient. Requires an explicit audience and confirmation. ## Example prompts - "What can I do in Iterate?" - "Show me a summary of my Iterate account" ## Links Docs: https://mcp.ai/docs/mcps/iterate Website: https://mcp.ai/mcps/iterate