Dovetail MCP
Vendor MCP44 toolsBearer TokenAIAnalyticsConnect to Dovetail, the AI-native UX research platform. Access projects, insights, and data from your AI workflows.
Dovetail MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Make your first call
Section titled “Make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'dovetailmcp'const identifier = 'user_123'// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'dovetailmcp_get_dovetail_projects',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "dovetailmcp"identifier = "user_123"# Make your first callresult = actions.execute_tool(tool_input={},tool_name="dovetailmcp_get_dovetail_projects",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Search workspace — Perform powerful text-based search across all content types in the Dovetail workspace — projects, docs, data, highlights, and contacts
- List users, tags, project templates — List all members of the Dovetail workspace, including their roles and contact information
- Get user, tag, project insight — Retrieve a single workspace member’s profile by their unique identifier
- File download — Get a short-lived presigned URL to download the raw content of a file attachment
- Create transcript highlight, tag, project — Create a highlight on an audio or video transcript by marking a start/end time range in seconds
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
dovetailmcp_create_channel_datum#Send a new data point to a Dovetail channel for automated AI processing.5 params
Send a new data point to a Dovetail channel for automated AI processing.
channel_idstringrequiredThe unique identifier of the Dovetail channel to which the data point will be sent.textstringrequiredThe raw text content of the customer feedback data point to send (e.g. an app review, NPS response, or support ticket body).timestampstringrequiredISO 8601 timestamp recording when the feedback was originally received.source_titlestringoptionalOptional title of the source the feedback came from (e.g. the support ticket subject).source_urlstringoptionalOptional URL of the source the feedback came from, if available.dovetailmcp_create_comment#Post a top-level comment on a Dovetail doc. Comments are discussion threads attached to docs.3 params
Post a top-level comment on a Dovetail doc. Comments are discussion threads attached to docs.
bodystringrequiredThe comment content. Interpreted according to body_type.doc_idstringrequiredThe unique identifier of the Dovetail doc on which to post the comment.body_typestringoptionalFormat of the body. Defaults to "text"; use "html" for rich-text content.dovetailmcp_create_data#Create a new research data entry within a Dovetail project. Data entries store raw research materials such as interview transcripts, survey responses, or notes.4 params
Create a new research data entry within a Dovetail project. Data entries store raw research materials such as interview transcripts, survey responses, or notes.
project_idstringrequiredThe unique identifier of the Dovetail project to create the data entry in.contentstringoptionalThe body content of the research data entry in markdown format. Optional — omit to create an empty entry.fieldsarrayoptionalCustom fields to set on the new data entry. Each item is an object with `label`, `value`, and optional `type`. `label` matches an existing field in the project (or creates a new one). `value` depends on the field type: a string for TEXT/EMAIL/URL/PHONE, a boolean for BOOLEAN, a number for NUMBER/NPS, an ISO 8601 string for DATETIME, a string array for SELECT, a contact name for PERSON, or null to clear. Include `type` only when creating a new field; it defaults to TEXT and must be omitted when referencing an existing field.titlestringoptionalThe name or title of the new research data entry. Optional.dovetailmcp_create_doc#Create a new doc in the Dovetail workspace. Docs are rich-text documents used for insights, reports, and notes.5 params
Create a new doc in the Dovetail workspace. Docs are rich-text documents used for insights, reports, and notes.
contentstringoptionalInitial body content for the doc. Interpreted according to content_type (defaults to HTML).content_typestringoptionalFormat of the content field. Defaults to "html". Use "markdown" or "text" for those formats.folder_idstringoptionalThe unique identifier of the folder to place the doc in. If omitted, the doc is created at the root level. Mutually exclusive with project_id.project_idstringoptionalThe unique identifier of the project to create the doc within. If omitted, the doc is created outside any project. Mutually exclusive with folder_id.titlestringoptionalThe title of the new Dovetail doc. Optional.dovetailmcp_create_folder#Create a new folder in the Dovetail workspace to organize projects, docs, and channels.2 params
Create a new folder in the Dovetail workspace to organize projects, docs, and channels.
titlestringrequiredThe display name for the new folder.parent_folder_idstringoptionalThe ID of the parent folder under which this new folder will be created. If omitted, the folder is created at the top level of the workspace.dovetailmcp_create_project#Create a new project in the Dovetail workspace. Projects are the primary container for research data, docs, and insights.3 params
Create a new project in the Dovetail workspace. Projects are the primary container for research data, docs, and insights.
folder_idstringoptionalThe unique identifier of the folder to create the project in. Optional — omit to create the project at the workspace root.template_idstringoptionalThe unique identifier of a project template to use as the starting structure for the new project. Optional.titlestringoptionalThe name of the new project to create. Optional.dovetailmcp_create_tag#Create a new tag within a Dovetail project. Tags are project-scoped labels used to categorize highlights and data.2 params
Create a new tag within a Dovetail project. Tags are project-scoped labels used to categorize highlights and data.
project_idstringrequiredThe unique identifier of the Dovetail project in which to create the tag.titlestringrequiredThe display name for the new tag.dovetailmcp_create_transcript_highlight#Create a highlight on an audio or video transcript by marking a start/end time range in seconds.4 params
Create a highlight on an audio or video transcript by marking a start/end time range in seconds.
end_timenumberrequiredThe end of the highlight in seconds within the transcript.note_idstringrequiredThe unique identifier of the data entry (note) that owns the transcript to highlight.start_timenumberrequiredThe start of the highlight in seconds within the transcript.tag_idsarrayoptionalOptional list of tag IDs to attach to the newly created highlight.dovetailmcp_download_file#Get a short-lived presigned URL to download the raw content of a file attachment.1 param
Get a short-lived presigned URL to download the raw content of a file attachment.
file_idstringrequiredThe unique identifier of the file attachment for which to generate a presigned download URL.dovetailmcp_get_channel#Retrieve detailed information about a specific channel by its unique ID, including its topics.1 param
Retrieve detailed information about a specific channel by its unique ID, including its topics.
channel_idstringrequiredThe unique identifier of the Dovetail channel to retrieve.dovetailmcp_get_channel_datum#Retrieve a single channel data point by its ID, including its theme classifications.1 param
Retrieve a single channel data point by its ID, including its theme classifications.
datum_idstringrequiredThe unique identifier of the data point to retrieve.dovetailmcp_get_contact#Retrieve a single contact by its unique identifier. Contacts represent research participants or customers in the Dovetail workspace.1 param
Retrieve a single contact by its unique identifier. Contacts represent research participants or customers in the Dovetail workspace.
contact_idstringrequiredThe unique identifier of the contact to retrieve.dovetailmcp_get_data_content#Export and retrieve the complete content of a research data entry as markdown.4 params
Export and retrieve the complete content of a research data entry as markdown.
data_idstringrequiredThe unique identifier of the research data entry whose content you want to retrieve.include_file_contentbooleanoptionalSet to true to also read the extracted text of the entry's attached document files (PDF, DOCX, PPTX, XLSX). By default attached files appear only as links and their text is not included.max_charsintegeroptionalMaximum number of characters of the content body to return. Omit to return from offset to the end.offsetintegeroptionalCharacter offset into the content body to start from. Combine with max_chars to page through long content. Defaults to 0 (start of body).dovetailmcp_get_doc#Retrieve detailed metadata for a single Dovetail doc by its unique ID.1 param
Retrieve detailed metadata for a single Dovetail doc by its unique ID.
doc_idstringrequiredThe unique identifier of the Dovetail doc to retrieve.dovetailmcp_get_doc_comment#Retrieve a single comment on a Dovetail doc by its unique identifier.2 params
Retrieve a single comment on a Dovetail doc by its unique identifier.
comment_idstringrequiredThe unique identifier of the comment to retrieve.doc_idstringrequiredThe unique identifier of the Dovetail doc that contains the comment.dovetailmcp_get_doc_content#Export and retrieve the complete content of a Dovetail doc in markdown format.3 params
Export and retrieve the complete content of a Dovetail doc in markdown format.
doc_idstringrequiredThe unique identifier of the Dovetail doc whose content should be exported.max_charsintegeroptionalMaximum number of characters of the content body to return. Omit to return from offset to the end.offsetintegeroptionalCharacter offset into the content body to start from. Combine with max_chars to page through long content. Defaults to 0 (start of body).dovetailmcp_get_dovetail_projects#Browse and discover all projects in the Dovetail workspace. Projects are the primary container for research data, docs, and insights.4 params
Browse and discover all projects in the Dovetail workspace. Projects are the primary container for research data, docs, and insights.
folder_idstringoptionalFilter projects by the folder they belong to. Optional — omit to list projects across all folders.limitintegeroptionalMaximum number of projects to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous response. Pass this to retrieve the next page of results. Optional.titlestringoptionalFilter projects by title. Optional.dovetailmcp_get_field#Retrieve a single custom field definition by its unique identifier.1 param
Retrieve a single custom field definition by its unique identifier.
field_idstringrequiredThe unique identifier of the custom field to retrieve.dovetailmcp_get_file#Retrieve metadata for a single file attachment by its unique identifier.1 param
Retrieve metadata for a single file attachment by its unique identifier.
file_idstringrequiredThe unique identifier of the file attachment to retrieve metadata for.dovetailmcp_get_folder#Retrieve a single folder by its unique identifier, including its metadata.1 param
Retrieve a single folder by its unique identifier, including its metadata.
folder_idstringrequiredThe unique identifier of the Dovetail folder to retrieve.dovetailmcp_get_folder_contents#List all items contained directly within a specific folder — projects, docs, and channels.3 params
List all items contained directly within a specific folder — projects, docs, and channels.
folder_idstringrequiredThe unique identifier of the folder whose contents you want to list.limitintegeroptionalMaximum number of items to return in a single page of results. Optional.start_cursorstringoptionalPagination cursor returned by a previous response. Pass this to retrieve the next page of results. Optional.dovetailmcp_get_highlight#Retrieve a single highlight by its unique identifier, including its content and associated tags.1 param
Retrieve a single highlight by its unique identifier, including its content and associated tags.
highlight_idstringrequiredThe unique identifier of the highlight to retrieve.dovetailmcp_get_insight_content#(Deprecated — use get_doc_content instead.) Export and retrieve the complete content of an insight in markdown format.3 params
(Deprecated — use get_doc_content instead.) Export and retrieve the complete content of an insight in markdown format.
insight_idstringrequiredThe unique identifier of the insight whose content to retrieve.max_charsintegeroptionalMaximum number of characters of the content body to return. Omit to return from offset to the end.offsetintegeroptionalCharacter offset into the content body to start from. Combine with max_chars to page through long content. Defaults to 0 (start of body).dovetailmcp_get_project#Retrieve metadata for a single Dovetail project by its unique identifier.1 param
Retrieve metadata for a single Dovetail project by its unique identifier.
project_idstringrequiredThe unique identifier of the Dovetail project to retrieve.dovetailmcp_get_project_data#Retrieve detailed metadata and information about a specific research data entry.1 param
Retrieve detailed metadata and information about a specific research data entry.
data_idstringrequiredThe unique identifier of the research data entry to retrieve.dovetailmcp_get_project_highlights#Retrieve customer feedback highlights and key quotes from a Dovetail project.3 params
Retrieve customer feedback highlights and key quotes from a Dovetail project.
project_idstringrequiredThe unique identifier of the Dovetail project whose highlights you want to retrieve.limitintegeroptionalMaximum number of highlights to return per page. Use with start_cursor for pagination.start_cursorstringoptionalPagination cursor to retrieve the next page of highlights. Obtained from the previous response.dovetailmcp_get_project_insight#(Deprecated — use get_doc instead.) Retrieve a specific insight by its unique identifier.1 param
(Deprecated — use get_doc instead.) Retrieve a specific insight by its unique identifier.
insight_idstringrequiredThe unique identifier of the insight to retrieve.dovetailmcp_get_tag#Retrieve a single tag by its unique identifier, including its title and color.1 param
Retrieve a single tag by its unique identifier, including its title and color.
tag_idstringrequiredThe unique identifier of the tag to retrieve.dovetailmcp_get_user#Retrieve a single workspace member's profile by their unique identifier.1 param
Retrieve a single workspace member's profile by their unique identifier.
user_idstringrequiredThe unique identifier of the workspace member to retrieve.dovetailmcp_list_channel_data#List the raw data points (e.g. app reviews, NPS responses, support tickets) in a Dovetail channel.5 params
List the raw data points (e.g. app reviews, NPS responses, support tickets) in a Dovetail channel.
channel_idstringrequiredThe unique identifier of the Dovetail channel whose data points you want to list.limitintegeroptionalMaximum number of data points to return per page. Defaults to the server's default page size if omitted.source_timestamp_fromstringoptionalFilter results to data points with a source timestamp on or after this ISO 8601 value. Optional.source_timestamp_tostringoptionalFilter results to data points with a source timestamp on or before this ISO 8601 value. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results.dovetailmcp_list_channel_themes#Retrieve all AI-generated themes for a Dovetail channel. Themes are AI-generated clusters of related feedback.3 params
Retrieve all AI-generated themes for a Dovetail channel. Themes are AI-generated clusters of related feedback.
channel_idstringrequiredThe unique identifier of the Dovetail channel whose AI-generated themes you want to retrieve.limitintegeroptionalMaximum number of themes to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results. Optional.dovetailmcp_list_channels#Browse and discover all channels in the Dovetail workspace. Channels are automated analysis pipelines processing high-volume customer feedback into structured insights.3 params
Browse and discover all channels in the Dovetail workspace. Channels are automated analysis pipelines processing high-volume customer feedback into structured insights.
folder_idstringoptionalFilter channels by the ID of a specific folder. If omitted, channels from all folders are returned.limitintegeroptionalMaximum number of channels to return per page. Must be between 1 and 100. Defaults to the server's default page size if omitted.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results.dovetailmcp_list_contacts#Browse the contacts database in the Dovetail workspace. Contacts are research participants or customers linked to data entries.3 params
Browse the contacts database in the Dovetail workspace. Contacts are research participants or customers linked to data entries.
limitintegeroptionalMaximum number of contacts to return per page. Optional.namestringoptionalFilter contacts by name. Optional.start_cursorstringoptionalPagination cursor for fetching the next page of results. Pass the cursor returned from a previous response. Optional.dovetailmcp_list_doc_comments#Retrieve all comments on a specific Dovetail doc, returned in chronological order.3 params
Retrieve all comments on a specific Dovetail doc, returned in chronological order.
doc_idstringrequiredThe unique identifier of the Dovetail doc whose comments should be retrieved.limitintegeroptionalMaximum number of comments to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results. Optional.dovetailmcp_list_docs#Browse and discover all docs in the Dovetail workspace. Docs are rich-text documents used for insights, reports, and notes.3 params
Browse and discover all docs in the Dovetail workspace. Docs are rich-text documents used for insights, reports, and notes.
limitintegeroptionalMaximum number of docs to return in a single response. Use with start_cursor for pagination.project_idstringoptionalFilter docs to only those belonging to the specified project.start_cursorstringoptionalPagination cursor returned from a previous response. Pass this value to retrieve the next page of docs.dovetailmcp_list_fields#Retrieve all custom fields defined on a Dovetail project. Fields are user-defined metadata attributes attached to data entries.4 params
Retrieve all custom fields defined on a Dovetail project. Fields are user-defined metadata attributes attached to data entries.
field_set_typestringrequiredThe field set type to filter fields by.project_idstringrequiredThe unique identifier of the Dovetail project whose custom fields you want to list.limitintegeroptionalMaximum number of fields to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results. Optional.dovetailmcp_list_folders#Browse all folders in the Dovetail workspace. Folders organize projects, docs, and channels.4 params
Browse all folders in the Dovetail workspace. Folders organize projects, docs, and channels.
limitintegeroptionalMaximum number of folders to return per page. Defaults to the server's default page size if omitted.parent_folder_idstringoptionalFilter folders to only those nested within the specified parent folder. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results.titlestringoptionalFilter folders by title. Optional.dovetailmcp_list_personal_docs#Retrieve all docs authored by or assigned to a specific user in the Dovetail workspace.3 params
Retrieve all docs authored by or assigned to a specific user in the Dovetail workspace.
user_idstringrequiredThe unique identifier of the user whose personal docs should be retrieved.limitintegeroptionalMaximum number of docs to return in a single response. Use with start_cursor for pagination.start_cursorstringoptionalPagination cursor returned from a previous response. Pass this value to retrieve the next page of docs.dovetailmcp_list_project_data#Browse and discover all research data entries within a specific Dovetail project.6 params
Browse and discover all research data entries within a specific Dovetail project.
project_idstringrequiredThe unique identifier of the Dovetail project whose data entries you want to list.created_at_fromstringoptionalFilter data entries created on or after this ISO 8601 timestamp. Optional.created_at_tostringoptionalFilter data entries created on or before this ISO 8601 timestamp. Optional.limitintegeroptionalMaximum number of data entries to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous response. Pass this to retrieve the next page of results. Optional.titlestringoptionalFilter data entries by title. Optional.dovetailmcp_list_project_insights#(Deprecated — use list_docs instead.) List insights within a Dovetail project.3 params
(Deprecated — use list_docs instead.) List insights within a Dovetail project.
project_idstringrequiredThe unique identifier of the Dovetail project whose insights to list.limitintegeroptionalMaximum number of insights to return per page. Optional.start_cursorstringoptionalPagination cursor for fetching the next page of results. Pass the cursor returned from a previous response. Optional.dovetailmcp_list_project_templates#List all project templates available in the Dovetail workspace.2 params
List all project templates available in the Dovetail workspace.
limitintegeroptionalMaximum number of templates to return per page. Optional.start_cursorstringoptionalPagination cursor returned by a previous list call. Pass this value to retrieve the next page of results. Optional.dovetailmcp_list_tags#Browse and discover tags in the Dovetail workspace, scoped to a specific project.3 params
Browse and discover tags in the Dovetail workspace, scoped to a specific project.
project_idstringrequiredThe unique identifier of the Dovetail project whose tags you want to list.limitintegeroptionalMaximum number of tags to return per page. Use with start_cursor for pagination.start_cursorstringoptionalPagination cursor to retrieve the next page of tags. Obtained from the previous response.dovetailmcp_list_users#List all members of the Dovetail workspace, including their roles and contact information.4 params
List all members of the Dovetail workspace, including their roles and contact information.
emailstringoptionalFilter workspace members by email. Optional.limitintegeroptionalMaximum number of workspace members to return per page. Optional.namestringoptionalFilter workspace members by name. Optional.start_cursorstringoptionalPagination cursor for fetching the next page of results. Pass the cursor returned from a previous response. Optional.dovetailmcp_search_workspace#Perform powerful text-based search across all content types in the Dovetail workspace — projects, docs, data, highlights, and contacts.8 params
Perform powerful text-based search across all content types in the Dovetail workspace — projects, docs, data, highlights, and contacts.
date_fieldstringoptionalWhich timestamp the date filter applies to. Defaults to CREATED. Has no effect unless date_from and date_to are both provided.date_fromstringoptionalStart of the date range filter, as an ISO 8601 datetime string. Must be provided together with date_to.date_tostringoptionalEnd of the date range filter, as an ISO 8601 datetime string. Must be provided together with date_from.limitintegeroptionalMaximum number of search results to return per page. Optional.location_idsarrayoptionalScope results to objects located inside these folders or projects. Accepts folder and/or project IDs. Folder IDs are expanded recursively to include all nested sub-folders and their projects.offsetintegeroptionalNumber of items to skip for pagination (default 0). Optional.querystringoptionalThe text search query to run across all content in the Dovetail workspace. Omit or pass an empty string to list all items of the chosen types.typesarrayoptionalContent types to include in search results (default: all types).