Keypup's MCP server is currently in beta. The capabilities exposed on the MCP server will be continuously expanded during this phase. Do not hesitate to contact our team via chat to submit your use cases and provide feedback.
The Keypup MCP (Model Context Protocol) server lets you plug your Keypup engineering analytics directly into an AI assistant (Claude, Cursor, Kiro, ChatGPT desktop, and any other MCP-compatible client).
Once connected, you can ask questions about your engineering activity in plain language and let the AI build and run the underlying reporting queries for you.
Unlike the GraphQL API, which is designed for developers writing application code, the MCP server is designed to be driven conversationally by an AI on your behalf. No query language to learn, no code to write.
1. What the MCP server can do
The MCP server exposes a focused set of tools that let an AI explore and query your Keypup data:
Discover your companies — list the companies (teams) you belong to.
Explore datasets — browse the available datasets (issues & pull requests, commits, comments, reviews, activity events) and the fields each one exposes.
Discover formula operators — list the functions and operators available when building metrics, dimensions, and filters.
Run reporting queries — execute aggregated queries against any dataset, with metrics, dimensions (group-by), filters, sorting, and pagination.
Generate a query from natural language — turn a plain-language request into a ready-to-run structured query, which the AI can then execute.
The AI orchestrates these tools automatically. A typical flow looks like:
List your companies
Pick the relevant dataset
Look up the fields it needs
Build the query
Run it
Summarize the results
You only ask the question.
2. The kinds of questions you can ask
Once the Keypup MCP server is connected, you can ask your AI assistant questions such as:
Delivery & throughput
"How many pull requests did we merge each month over the last 6 months?"
"What's our weekly issue closing rate this quarter?"
"How many commits were made per author last month?"
Cycle time & performance
"What's the average time between PR creation and merge over the last 12 weeks?"
"Show me the review turnaround time trend for the last 3 months."
"Which repositories have the slowest cycle time?"
Quality & process
"How many bugs were raised vs. closed each week this quarter?"
"What proportion of our pull requests resolve at least one issue?"
"How many PRs were merged without a review?"
Workload & collaboration
"Who are our most active reviewers this month?"
"How is work distributed across the team right now?"
"How many comments do our pull requests receive on average?"
Open-ended exploration
"Summarize our engineering activity over the last month."
"Compare open vs. closed issues over time."
"What labels are most common on our issues?"
The AI will pick the right dataset, build the appropriate metrics and filters, run the query, and explain the results. You can refine iteratively ("now break that down by repository", "restrict it to the backend team", etc.).
3. Setting up the MCP server
3.1 Endpoint
The Keypup MCP server is available at:
https://hq.keypup.io/mcp
It uses the streamable HTTP transport and authenticates via a Keypup API token passed in the Authorization header (see section 4).
3.2 Client configuration
Most MCP clients are configured through a JSON file (for example, VS Code, Kiro, and Claude Desktop use an mcp.json-style configuration).
Add a keypup server entry pointing at the endpoint, with your API token in the Authorization header:
{
"mcpServers": {
"keypup": {
"url": "https://hq.keypup.io/mcp",
"headers": {
"Authorization": "Bearer my_keypup_api_token"
}
}
}
}
A few notes:
Replace
my_keypup_api_tokenwith the token you generate in section 4. Keep theBearerprefix.The server name (
keypup) is arbitrary — name it however you like.
Once saved, restart or reconnect the MCP server in your client. The Keypup tools should appear in the client's tool list, and you can start asking questions.
4. Generating an API token
The MCP server authenticates with the same API tokens used by the GraphQL API.
Click Create token.
Set a descriptive name (e.g., "MCP - Claude Desktop") and an expiration. We strongly recommend setting an expiration; permanent tokens should be used with caution and properly secured.
Select the token scopes (permissions). For the MCP server, the minimal recommended scopes are:
Reports read - required to explore datasets/fields and run reporting queries.
Companies read - required to list the companies you belong to and resolve the company ID used in queries.
Click Create. The token is shown only once and can be copied for 1 minute. After that, only a hint is displayed, so copy it into your MCP client configuration right away.
Following the principle of least privilege, grant only the scopes you need. The two scopes above are enough to use the full analytics capabilities of the MCP server.
The token grants the same level of data access you already have in the Keypup user interface - queries are automatically scoped to the companies you are a member of.
5. Security considerations
Treat your API token like a password. Anyone holding it can query your Keypup data within the granted scopes.
Prefer short-lived tokens with an expiration, and rotate them periodically.
Keep tokens out of shared or version-controlled files. Store them in your MCP client's local configuration only.
All Keypup MCP tools are read-only — they never modify your data — but the underlying token may carry broader scopes if you grant them, so stick to the minimal recommended scopes.
