Docs › MCP server
Connect an AI assistant with the MCP server
Kjerr runs a Model Context Protocol server, so Claude, ChatGPT, Codex, Copilot, Cursor and any other MCP client can pull structured data about your ideas and automate the common jobs: summarising, querying, de-duplicating and analysing feedback. It is read-only and scoped to one workspace per connection.
1. Switch it on
An admin opens Settings → Integrations and turns on MCP server. The page then shows the server URL and a client ID and secret for the clients that need them. Switching it off detaches the workspace from every connection at once.
Anyone on the team with a Viewer role or above can connect a client; they sign in with their own Kjerr login and approve the connection. The client then sees what that person sees in the inbox: ideas, votes, comments, internal notes, who asked, and their companies.
2. Connect your client
Two groups. Server URL only: the client registers itself with Kjerr and opens the sign-in page — nothing else to copy. Client ID and secret: the client asks for OAuth credentials before it can start; paste the pair from Settings → Integrations.
Claude (claude.ai)Server URL only
- Open Settings → Connectors and choose Add custom connector (on Team and Enterprise plans an owner or admin adds it for the organisation).
- Name it Kjerr. Paste the server URL:
https://kjerr.io/mcp. - Click Add, then Connect. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
- In a chat, enable the Kjerr connector from the tools menu and ask, for example, “summarise the most voted ideas this month”.
Claude CodeServer URL only
- Add the server from the terminal, then authenticate inside Claude Code.
- Run
/mcpinside Claude Code, pick Kjerr and choose Authenticate. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
claude mcp add --transport http kjerr https://kjerr.io/mcpChatGPTServer URL only
- Open Settings → Connectors (called Apps & Connectors in some builds). Under Advanced, turn on Developer mode if you have not already.
- Choose Create. Name it Kjerr. Paste the server URL:
https://kjerr.io/mcp. Set authentication to OAuth; leave the client fields empty — ChatGPT registers itself. - Click Create, then connect. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
- Start a chat with the Kjerr connector enabled, or use it in Deep Research.
CodexServer URL only
- Add the server with the Codex CLI, or put the same entry in
~/.codex/config.toml. - Run
codex mcp login kjerr(or start a session and follow the sign-in prompt). A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
codex mcp add kjerr --url https://kjerr.io/mcp
# or, in ~/.codex/config.toml
[mcp_servers.kjerr]
url = "https://kjerr.io/mcp"GitHub Copilot in VS CodeServer URL only
- Run MCP: Add Server from the Command Palette, choose HTTP, paste the server URL and name it Kjerr — or add the entry below to
.vscode/mcp.json. - Start the server from the MCP view or the Chat tools picker. VS Code registers itself with Kjerr and opens the browser. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
{
"servers": {
"kjerr": { "type": "http", "url": "https://kjerr.io/mcp" }
}
}CursorClient ID and secret
- Open Cursor Settings → MCP and add a new server, or edit
.cursor/mcp.jsonwith the entry below. - When it asks for OAuth client credentials, paste the Client ID and Client secret from Settings → Integrations. If it also asks for the endpoints, use the table further down.
- Click the server's Connect / Needs login button. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
{
"mcpServers": {
"kjerr": {
"url": "https://kjerr.io/mcp",
"auth": { "CLIENT_ID": "<client id>", "CLIENT_SECRET": "<client secret>" }
}
}
}Microsoft CopilotClient ID and secret
- In Copilot Studio (or the Microsoft 365 admin center for Microsoft 365 Copilot), add a new tool or connector of type Model Context Protocol.
- Paste the server URL:
https://kjerr.io/mcp. Choose OAuth 2.0 as the authentication. - When it asks for OAuth client credentials, paste the Client ID and Client secret from Settings → Integrations. If it also asks for the endpoints, use the table further down. Authorization URL, token URL and refresh URL are listed in the endpoints table; the scope is
ideas:read. - Publish, then sign in when Copilot prompts you. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
GitHub Copilot in the Copilot CLI, JetBrains, Eclipse and XcodeClient ID and secret
- Add an HTTP MCP server named Kjerr in the client's MCP settings (AI Assistant → Model Context Protocol in JetBrains, Copilot → MCP in Eclipse, Intelligence settings in Xcode,
/mcp addin the Copilot CLI). Paste the server URL:https://kjerr.io/mcp. - When it asks for OAuth client credentials, paste the Client ID and Client secret from Settings → Integrations. If it also asks for the endpoints, use the table further down.
- Trigger the sign-in from the client. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
{
"mcpServers": {
"kjerr": { "type": "http", "url": "https://kjerr.io/mcp" }
}
}DevinClient ID and secret
- Open Settings → MCP Marketplace and choose Add custom MCP. Pick the HTTP transport. Paste the server URL:
https://kjerr.io/mcp. - When it asks for OAuth client credentials, paste the Client ID and Client secret from Settings → Integrations. If it also asks for the endpoints, use the table further down.
- Enable it for your sessions and complete the sign-in. A Kjerr sign-in page opens. Sign in as a member of the workspace, tick the workspaces it may read if you belong to several, and click Allow access.
ClickUp, Canva, Missive, Runlayer
Also supported. Add Kjerr as an MCP connector using the app's own instructions: give it the server URL, and the client ID and secret if it asks for them. Any client that speaks MCP over HTTP with OAuth 2.1 works the same way.
3. What the assistant can do
Seven tools, all read-only, and three prompts that chain them. Ask in plain language; the
client picks the tools. Every tool takes an optional workspace argument (its subdomain or
name) for connections that cover several workspaces.
| Tool | Does |
|---|---|
list_workspaces | The workspaces this connection may read, with the subdomain to pass as the workspace argument of every other tool. Call it when the connection covers more than one. |
get_board_overview | Totals, statuses (with their keys), topics, tags, sources and the ten most voted ideas of the workspace. Call it first: list_ideas filters use the keys and names it returns. |
list_ideas | Ideas with votes, status, author, topics and tags, filtered and sorted like the admin inbox. Full-text query, status key, topic, tag, source, company, date range, only unread ones, and ideas still awaiting a team reply. Paginate with offset / next_offset. |
get_new_ideas | Only the ideas that arrived since this connection last called this tool, oldest first. The server remembers the place per connection and workspace, so there is no date to pass: call it again later and you get only what is new. The first call returns the last 7 days. If remaining is above zero, call again for the rest. |
get_idea | Everything about one idea: details, author with company, every voter, public comments, team replies, internal notes, the ideas merged into it and its status history. |
find_similar_ideas | Ideas that read like the given text or like an existing idea, ranked by relevance and popularity — the same suggester the board shows while someone types a title. Use it to spot duplicates worth merging or to check whether a request already exists. |
recent_activity | What happened on the board in the last N days: new ideas, status changes, merges, team replies, comments, and which ideas gathered the most votes. |
| Prompt | Does |
|---|---|
summarize_feedback | A short briefing of what customers are asking for: the themes, the most wanted ideas, what is new, and what the team has not answered. |
find_duplicates | Go through the board and list ideas that ask for the same thing, with a recommendation for which one to keep and links to merge them in the admin. |
analyze_trends | Compare recent activity with the board as a whole: which topics and requests are gaining votes, which companies are asking, and what deserves a status change. |
Things to try: “Which ideas gathered the most votes in the last two weeks, and who is asking?” · “Find duplicates among the ideas under consideration and tell me which to merge.” · “Summarise the unanswered requests older than a week.” · “Which companies on the growth plan asked for exports?” · “What is new since you last checked?” · “Show me the ideas the team has not opened yet.”
get_new_ideas is the one tool with a memory. Kjerr keeps, for each connection
and workspace, the last idea it handed over, so a scheduled job can ask “anything new?” every hour and
get each idea exactly once, without storing a date itself. The first call returns the last seven days;
since starts again from a date, and mark_seen: false looks without moving the
marker. The marker belongs to the connection: two jobs on one connection share it.
4. Endpoints, for manual set-ups
Clients that take the URL alone discover all of this themselves. Paste these only where a client asks for them one by one.
| MCP server URL | https://kjerr.io/mcp |
| Authorization URL | https://kjerr.io/oauth/authorize |
| Token URL (also for refresh) | https://kjerr.io/oauth/token |
| Registration URL (dynamic client registration) | https://kjerr.io/oauth/register |
| Revocation URL | https://kjerr.io/oauth/revoke |
| Server metadata | https://kjerr.io/.well-known/oauth-authorization-server |
| Resource metadata | https://kjerr.io/.well-known/oauth-protected-resource |
| Scope | ideas:read |
| PKCE | Required, S256 |
| Grant types | authorization_code, refresh_token (rotating) |
| Token lifetime | Access 24 hours, refresh 90 days |
Self-registered clients must declare their redirect URIs (https, a loopback http address,
or a private-use scheme such as cursor://). Clients using the workspace client ID may redirect
to any https or loopback address; the client secret and PKCE protect the exchange. Tokens are stored
hashed; presenting a refresh token twice revokes the connection.
5. Disconnecting and limits
- Settings → Integrations lists every connection with who made it and when it was last used. Disconnect stops the client at its next call. So does removing the teammate, switching the server off, or deleting the workspace.
- One connection can cover several workspaces: tick them on the approval page. The assistant then
names the workspace in each call (
list_workspacesshows the choices); with one workspace it is implied. - 240 calls a minute per connection; lists return up to 100 ideas a page.
- The server never changes your board: no replies, status changes, merges or deletions, and reading an
idea here does not mark it read for the team. The only thing it stores is each connection's place in
get_new_ideas. The MCP server sends nothing to any AI provider; the client you connect is the one talking to a model.
Questions: hello@kjerr.io