# Endorsal — how to use (mcp.ai)

Connect your Endorsal account and use 26 tools for reviews straight from your AI agent. Connect with your own API key. Endorsal automates the collection and display of customer testimonials and reviews, enhancing social proof for businesses.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_endorsal?ms=1787293500000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `endorsal_archive_contact`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/endorsal`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/endorsal/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/endorsal/archive/contact` — Tool to archive a contact using its unique identifier. Use when you need to remove a contact from active use without permanently deleting it.
  - body: { contact_id: string }
- `POST https://api.mcp.ai/api/endorsal/create/contact` — Tool to create a new contact in your Endorsal account. Use when you need to add a new contact with their email, name, and company details. Optionally add the contact to an AutoRequest campaign by prov
  - body: { email: string, phone?: string, company?: string, job_title?: string, last_name?: string, first_name?: string, campaign_id?: string }
- `POST https://api.mcp.ai/api/endorsal/create/tag` — Tool to create a new tag in Endorsal. Tags can be used to categorize testimonials or represent products. Use when you need to add a new organizational category or product tag.
  - body: { sku?: string, link?: string, name: string, type: string, image?: string, description?: string }
- `POST https://api.mcp.ai/api/endorsal/create/testimonial` — Tool to submit a new testimonial. Use when adding customer feedback to your Endorsal account after gathering input.
  - body: { job?: string, name: string, email: string, rating?: integer, company?: string, profile?: string, website?: string, featured?: boolean, location?: string, property_id: string, testimonial: string }
- `POST https://api.mcp.ai/api/endorsal/delete/tag` — Tool to delete a tag using its unique identifier. Use when you need to remove a tag from the system permanently.
  - body: { id: string }
- `POST https://api.mcp.ai/api/endorsal/delete/testimonial` — Tool to permanently delete a testimonial by its ID. Use when you need to remove a testimonial from your Endorsal account. This action cannot be undone.
  - body: { id: string }
- `POST https://api.mcp.ai/api/endorsal/get/auto/request/campaign` — Tool to retrieve a specific AutoRequest campaign by its unique identifier. Use when you need to fetch details of an existing AutoRequest campaign.
  - body: { id: string }
- `POST https://api.mcp.ai/api/endorsal/get/contact` — Tool to retrieve details of a specific contact by its unique identifier. Use when you have the contact ID and need to fetch complete contact details.
  - body: { contact_id: string }
- `POST https://api.mcp.ai/api/endorsal/get/tag` — Tool to retrieve details of a specific tag by its unique identifier. Use when you have a tag ID and need full tag metadata.
  - body: { id: string }
- `POST https://api.mcp.ai/api/endorsal/get/testimonial` — Retrieves complete details of a specific testimonial by its ID. Returns the testimonial content, author information (name, email, company, job, location), rating, approval status, and timestamps. Use 
  - body: { item_id: string }
- `POST https://api.mcp.ai/api/endorsal/get/wall/of/love` — Retrieves the Wall of Love for a property, returning testimonials that match its configuration options. Optionally returns a fully rendered HTML widget. Use render=false (default) to get testimonial d
  - body: { render?: boolean }
- `POST https://api.mcp.ai/api/endorsal/get/widget` — Tool to retrieve details of a specific widget by its unique identifier. Use when you need full widget details before editing or analysis.
  - body: { widget_id: string }
- `POST https://api.mcp.ai/api/endorsal/list/all/tags` — Tool to retrieve a list of all Tag Objects across all properties in your Endorsal account. Use when you need to view all available tags regardless of property association.
- `POST https://api.mcp.ai/api/endorsal/list/autorequest/campaigns` — Tool to retrieve a list of all AutoRequest campaigns. Use when you need to view both active and inactive campaigns.
- `POST https://api.mcp.ai/api/endorsal/list/contact/testimonials` — Retrieves all testimonials associated with a specific contact in Endorsal. A contact in Endorsal is a person or entity that has been added to your contact list, typically through manual import, API cr
  - body: { page?: integer, per_page?: integer, contact_id: string }
- `POST https://api.mcp.ai/api/endorsal/list/contacts` — Retrieves a paginated list of all contacts for a specific property in your Endorsal account. Contacts are created when testimonials are submitted or when you manually add contacts to your property. Us
  - body: { page?: integer, per_page?: integer, property_id: string }
- `POST https://api.mcp.ai/api/endorsal/list/properties` — Tool to retrieve all properties for the authenticated account. Use after obtaining a valid API key and login.
- `POST https://api.mcp.ai/api/endorsal/list/tag/testimonials` — Tool to retrieve all testimonials for a given tag. Use when you need to list testimonials filtered by tag ID for pagination and display.
  - body: { page?: integer, limit?: integer, tag_id: string }
- `POST https://api.mcp.ai/api/endorsal/list/tags` — Retrieves all tags associated with a specific property in Endorsal. Tags are used to categorize and organize testimonials. Use this action when you need to view available tags for a property before as
  - body: { propertyId: string }
- `POST https://api.mcp.ai/api/endorsal/list/testimonials` — Retrieves a paginated list of all testimonials in your Endorsal account. Use when you need to browse testimonials, generate reports, or manage customer feedback.
  - body: { page?: integer, limit?: integer }
- `POST https://api.mcp.ai/api/endorsal/list/widgets` — Retrieves all testimonial display widgets associated with your Endorsal account. Widgets are used to display collected testimonials on your website. This action returns basic information about each wi
- `POST https://api.mcp.ai/api/endorsal/search/contacts` — Tool to search contacts using query Match Objects. Returns matching Contact Objects based on field, operator, and value criteria. Use when you need to find specific contacts by email, name, company, o
  - body: { query: object[] }
- `POST https://api.mcp.ai/api/endorsal/search/testimonials` — Tool to search testimonials using query Match Objects. Returns matching Testimonial Objects. Use when you need to filter testimonials by specific criteria like rating, approval status, property ID, or
  - body: { query: object[] }
- `POST https://api.mcp.ai/api/endorsal/tag/testimonial` — Tool to add tag(s) to a testimonial. Use when you need to categorize or associate tags with a testimonial. Supports both existing tags (by _id) and creating new tags inline.
  - body: { tags: object[], testimonial_id: string }
- `POST https://api.mcp.ai/api/endorsal/update/contact` — Tool to update a contact's information. Pass in fields you'd like to update using a 'fields' object. Use when you need to modify existing contact details.
  - body: { id: string, fields: object }
- `POST https://api.mcp.ai/api/endorsal/update/testimonial` — Tool to update an existing testimonial. Pass in only the fields you want to update using the 'fields' object. Use this when modifying testimonial content, author information, rating, or approval statu
  - body: { id: string, fields: object }

## Example prompts
- "What can I do in Endorsal?"
- "Show me a summary of my Endorsal account"

## More
- Page: https://mcp.ai/endorsal
- Agent spec (llms.txt): https://mcp.ai/endorsal/llms.txt
- Postman collection: https://mcp.ai/endorsal/postman.json
