Dovetail MCP Server
Provides tools for interacting with the Dovetail API, enabling AI agents to manage insights, projects, and data programmatically.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Dovetail MCP Serversearch for insights about user onboarding"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Dovetail MCP Server
A Model Context Protocol (MCP) server for connecting AI tools to the Dovetail API.
Note: This is the npm package distribution of the official Dovetail MCP server. The canonical source lives in the Dovetail MCP GitHub repository.
Disclaimer
This package may not always reflect the very latest changes from the upstream repository. As of now, it corresponds to upstream Release 0.3. For the most up-to-date code and releases, please refer to the repository linked above.
Related MCP server: productboard-mcp
Prerequisites
Node.js 22 or higher (download Node from nodejs.org)
A Dovetail API token (see Dovetail API Documentation for details on obtaining one)
Get a Dovetail API token
In Dovetail, go to Settings → Account → Personal API keys.
Generate a new token and copy it.
Set it in your environment as
DOVETAIL_API_TOKEN.
For details, see Dovetail’s MCP server docs: docs.dovetail.com/integrations/mcp-server.
Configuration
Use this configuration style in MCP-compatible clients (e.g., Claude Desktop, Cursor). It invokes the server via npx and passes your API token via environment variable.
{
"mcpServers": {
"dovetail-mcp-server": {
"command": "npx",
"args": ["-y", "dovetail-mcp-server"],
"env": {
"DOVETAIL_API_TOKEN": "<YOUR_TOKEN>"
}
}
}
}License
MIT
Available Tools
7 toolsget_data_contentB
Export a data item to Markdown format by ID (note/transcript content).
| Name | Required | Description | Default |
|---|---|---|---|
| data_id | Yes | The ID of the data to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided so the description carries full burden. It does not disclose if operation is destructive, required permissions, rate limits, or return format beyond 'Markdown'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no redundancy. Efficiently conveys tool purpose and scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple tool with one parameter, but lacks output format details and may mislead as it implies only notes/transcripts despite generic data item naming.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% coverage with a description for 'data_id'. The tool description mentions 'by ID' but adds no extras like where to find the ID or format constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Export', resource 'data item', and format 'Markdown by ID'. It distinguishes from siblings which operate on projects and insights.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Sibling tools are different but no explicit when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dovetail_projectsB
List all Dovetail projects.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Pagination parameters | |
| filter | No | Filter parameters | |
| sort | No | Sort parameters in format 'property:direction' or array of such strings |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only says 'List all Dovetail projects.' It does not disclose read-only nature, auth needs, pagination behavior, or other important traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, but it is too minimal. It could incorporate more useful context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has nested parameters, no annotations, and no output schema, the description is insufficient. It fails to explain filtering, sorting, pagination details, or the structure of results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond what the schema already provides for each parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all Dovetail projects, which is a specific verb+resource. It distinguishes from sibling tools like get_data_content and get_project_data by focusing on projects as a top-level entity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus siblings. There is no mention of prerequisites, use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_dataB
Retrieve a project by ID (raw note/transcript with metadata).
| Name | Required | Description | Default |
|---|---|---|---|
| data_id | Yes | The ID of the data to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It clearly indicates a read operation (retrieve) and hints at output format, but does not disclose potential errors, authentication needs, or idempotency. Adequate for a simple retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 10 words, front-loaded with the verb and resource. No extraneous information; every word is purposeful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is fairly complete: it specifies input (ID) and output form (raw note/transcript with metadata). It does not explain exact metadata fields, but this is acceptable for a retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add extra meaning beyond the schema, as the parameter 'data_id' is self-explanatory given the tool name and description. No additional constraints or formatting details are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it retrieves a project by ID, specifying it returns raw note/transcript with metadata. This is clear and specific, but does not explicitly distinguish from sibling tools like list_project_data or get_project_insight, so it does not achieve the top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. There is no mention of prerequisites, filtering, or trade-offs with siblings like get_data_content or get_project_insight.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_insightB
Retrieve a Dovetail Insight by ID (research finding).
| Name | Required | Description | Default |
|---|---|---|---|
| insight_id | Yes | The ID of the insight to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It does not disclose any behavioral traits like permissions needed, rate limits, or side effects. Only states it retrieves by ID.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: single sentence with no wasted words. Directly states the purpose and the parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although it's a simple retrieval tool with one parameter, the description lacks details about what the tool returns (e.g., full insight object). No output schema exists, so description should compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (the parameter 'insight_id' is described). The description adds no extra meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Retrieve' and the resource 'Dovetail Insight by ID', and it distinguishes itself from sibling tools like list_project_insights (which lists multiple) and get_project_data (which may get different data).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as when to use list_project_insights or get_project_data. No mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_personal_project_insightsC
List insights for a specific user's projects
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | The ID of the user to list insights for | |
| page | No | Pagination parameters | |
| filter | No | Filter parameters | |
| sort | No | Sort parameters in format 'property:direction' or array of such strings |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as pagination behavior, required permissions, or error handling. It only states the basic action without any operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, consisting of a single sentence. However, it is too brief to provide meaningful guidance. Still, it is well-structured and front-loaded with the key action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and the complexity of nested filters and pagination, the description is severely lacking. It does not indicate what data is returned or how to interpret results, leaving the agent with no context beyond the tool name.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema sufficiently describes parameters. The description adds no additional parameter semantics beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists insights for a specific user's projects. It distinguishes from sibling 'list_project_insights' which likely lists insights by project. However, it could be more explicit about the differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'get_project_insight' or 'list_project_insights'. The user must infer from context. No when-not conditions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_project_dataC
List data for a specific project
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Pagination parameters | |
| filter | No | Filter parameters | |
| sort | No | Sort parameters in format 'property:direction' or array of such strings |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It mentions only 'List data', implying read-only, but does not state whether the operation is read-only, what permissions are needed, pagination behavior beyond schema, or response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single sentence. While this is efficient, it lacks any structural elements like separate lines for key information. However, for a minimally viable description, it is acceptably brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the input schema (3 nested parameters with pagination, filtering, sorting), and no output schema, the description is insufficient. It does not explain what 'data' entails, the output format, or pagination behavior, leaving significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters and their properties. The description adds no extra meaning for the parameters beyond what is in the schema, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'data for a specific project'. However, it does not differentiate from sibling tools like 'get_project_data' which likely returns similar data. The description implies a single project, but the schema allows multiple project IDs via filter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'get_project_data' or 'list_project_insights'. The description lacks context for usage scenarios, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_project_insightsC
Search and paginate Dovetail Insights by project.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Pagination parameters | |
| filter | No | Filter parameters | |
| sort | No | Sort parameters in format 'property:direction' or array of such strings |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only says 'search and paginate', implying read-only, but does not mention authentication, rate limits, side effects, or pagination behavior details. The brief description is insufficient for a tool with this complexity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, efficient and front-loaded with the action. However, it may be too concise, sacrificing essential detail. Still, it earns a 4 for being well-structured and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 nested parameters, no output schema, and no annotations, the description is severely incomplete. It fails to explain pagination behavior, filtering patterns, sort format, or return structure. Sibling tools add confusion without differentiation. The description needs expansion to be functionally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no extra meaning to parameters like 'filter', 'sort', or 'page' beyond what the schema already defines. It does not compensate for the lack of parameter explanations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'search and paginate' and resource 'Dovetail Insights', with scope 'by project'. It distinguishes from sibling tools like 'get_project_insight' (singular) and 'list_personal_project_insights' (personal filter), but could be more explicit about what 'insights' are.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., 'get_project_insight' for a single insight, 'list_personal_project_insights' for personal). The description lacks any usage context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
7 tool updates
v0.1.3- First observed
get_data_content - First observed
get_dovetail_projects - First observed
get_project_data - First observed
get_project_insight - First observed
list_personal_project_insights - First observed
list_project_data - First observed
list_project_insights
TDQS
Most tools have distinct purposes, but get_project_data and list_project_data could be confused since both involve project data; descriptions clarify but potential ambiguity remains.
All tools use consistent snake_case with 'get_' for single items and 'list_' for collections, following a predictable pattern.
7 tools is well-scoped for a research platform, covering projects, data, insights, and export without being too few or too many.
Covers core read operations (list, get, export) but lacks a global search across projects or data; minor gaps that agents can work around.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Run user research from any AI tool. Create studies, recruit participants, query insights.
Connect AI agents to 1000+ apps with managed authentication and tool-calling.
- EvermuseOAuthcom.evermuse
Search your customer interviews, calls, feedback, competitor intel and roadmap from any AI agent.
- mcpOAuthcom.vibgrate
Query your team's drift, vulnerability, and upgrade data from any AI assistant. OAuth 2.1, 51 tools.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceConnects AI tools to the Dovetail API, enabling them to interact with Dovetail features.2,0138MIT- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to interact with your Productboard workspace, allowing features, products, notes, objectives, key results, and releases management.20MIT

MeetGeek MCP Serverofficial
FlicenseNot gradedqualityDmaintenanceEnables AI tools to access and manage MeetGeek meetings, including transcripts, highlights, summaries, and recording uploads.4023-- AlicenseAqualityDmaintenanceConnects AI tools to Fathom meeting transcripts, summaries, and action items via a single API key.612MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tomgutt/dovetail-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server