Connects to Keypup's engineering analytics platform and exposes six read-only tools for querying your team's development data. You can list companies, explore datasets (issues, PRs, commits, reviews, activity events), look up available fields and formula operators, run aggregated reports with metrics and filters, and generate queries from natural language prompts. Authenticates via API token with scopes for reports and companies. Useful when you want to ask questions like "average PR merge time last quarter" or "most active reviewers this month" without writing GraphQL queries yourself. The AI handles dataset selection, field lookup, query construction, and result summarization.
Ask your Keypup engineering data in plain language to track delivery, quality and team workload.
The Keypup MCP (Model Context Protocol) server plugs your Keypup engineering analytics directly into any MCP-compatible AI assistant — Claude, Cursor, Kiro, ChatGPT Desktop, Gemini CLI, VS Code, and others.
Once connected, you ask questions about your engineering activity in plain language and the AI builds and runs the underlying reporting queries for you. No query language to learn, no code to write.
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.
Beta: The Keypup MCP server is currently in beta. The exposed capabilities are continuously expanded during this phase. Feedback and use cases are welcome via the in-app chat.
The server exposes a focused set of read-only tools that let an AI explore and query your Keypup data:
The AI orchestrates these tools automatically. A typical flow:
You only ask the question.
| Tool | Description |
|---|---|
list_companies | List the companies (teams) the authenticated user belongs to. Returns each company's id, name, created_at and updated_at. The id is required by most other tools. |
list_datasets | List the datasets (facts) available for querying, each with its id, label and description. |
list_dataset_fields | List the fields available on a given dataset for a company. Supports filtering by source (NATIVE/CUSTOM) and a regex pattern matched against the field id, plus pagination. |
list_formula_operators | List the operators and functions usable in custom formulas. Supports filtering by scope (DIMENSION/METRIC) and a regex pattern, plus pagination. Set verbose: true for full per-operator documentation. |
query_dataset | Run an aggregated report against a dataset. Metrics, dimensions and filters are expressed as text-based formulas, with optional sorting, limit and offset. |
generate_dataset_query | Turn a natural-language prompt into a structured query compatible with query_dataset. |
The reporting engine runs over the following datasets (facts):
ISSUES_PULL_REQUESTS — issues and pull requests.ACTIVITY_EVENTS — transitions on issues/PRs (status changes, assignments, work logged, open/close/reopen).COMMENTS — comments on issues, PRs and reviews.COMMITS — commits attached to pull requests.REVIEWS — pull request reviews.Delivery & throughput
Cycle time & performance
Quality & process
Workload & collaboration
Open-ended exploration
You can refine iteratively: "now break that down by repository", "restrict it to the backend team", and so on.
https://hq.keypup.io/mcp
The server uses the streamable HTTP transport and authenticates via a Keypup API
token passed in the Authorization header.
Most MCP clients are configured through a JSON file (VS Code, Kiro, Claude
Desktop, Cursor, etc. 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"
}
}
}
}
Notes:
my_keypup_api_token with the token you generate (see below). Keep the Bearer prefix.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.
The MCP server authenticates with the same API tokens used by the GraphQL API.
viz:reports:read) — required to explore datasets/fields and run reporting queries.hq:companies:read) — required to list the companies you belong to and resolve the company ID used in queries.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.
io.github.infoinlet-marketplace/mcp-observability
betterdb-inc/monitor
com.mcparmory/datadog
thotischner/observability-mcp
io.github.tantiope/datadog-mcp
io.github.us-all/datadog