
Kelvia
io.github.gonnagetapowerPublished by GitHub account gonnagetapowerv1.0.2Updated Oct 24, 2026
Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.
Overview
Kelvia is a shared task manager for people and coding agents, letting an assistant create and update tasks, move work across boards, comment, log time and plan.
- What you can do
- Manage boards: list, create, update, archive and delete boards, inspect columns and board activity, and manage tags and members or invitations with roles and scopes. Manage tasks: list, create, update, reorder and delete tasks, read activity and AI summaries, and set summaries. Discuss and track time: read, add, update and delete task comments and worklogs. Run stages: create, reorder, start, complete, reopen and delete board stages such as sprints and milestones. Plan the day: list, create, update, reorder and delete personal day-plan blocks and set their status. Two prompts and schema resources are also published, and toolsets let a client load only part of the 58 tools.
- When to use it
- Use it when an assistant should work inside a shared task board alongside people: triaging a backlog, filing follow-up tasks from a pull request, commenting on blockers, logging time, or blocking out the day. It is also suited to handing unfinished work between coding agents, since changes stay visible and attributed in the same UI humans use.
- Requirements
- Either the hosted Streamable HTTP endpoint, approved through OAuth in a browser, or a local stdio process via the npm package kelvia-mcp, which needs Node.js 20+. Agent-key setups need a Kelvia agent key in KELVIA_API_TOKEN, created in Kelvia under Profile then Agents, plus optional KELVIA_API_URL and KELVIA_TOOLSETS. Network access to the Kelvia API is required in both modes.
Installation
In SourceWeft
- Open Kelvia in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.gonnagetapower%2Fkelvia-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"kelvia": {
"type": "http",
"url": "https://mcp.kelvia.app/mcp"
}
}
}README
Kelvia MCP — task manager for coding agents
[CI] [npm] [License: MIT] [MCP Registry] [kelvia-mcp MCP server]
Kelvia is a shared task manager for people and coding agents. One concrete use: hand off an unfinished task from Claude Code to Codex. The guide includes a copyable repo-file handoff that works without Kelvia, then shows when a shared task helps. Through the Model Context Protocol, an agent can create and update tasks, move work across a Kanban board, comment, log time, run stages, and plan the day. Its changes stay visible and attributed in the same UI the human uses.
The server exposes 58 tools and works with Claude Code, Codex, Cursor, and other MCP clients. The hosted endpoint uses OAuth, so there is no API token to paste into the recommended setup. A local stdio mode is available for CI and clients without remote MCP support.
Try for free · MCP documentation · Hosted endpoint
Connect in one command
The first connection opens Kelvia in the browser for OAuth approval. After it
connects, ask the client: List my Kelvia boards.
[A Kelvia board whose tasks were created through this MCP server]
Why Kelvia MCP
- Complete workflow coverage — create and triage tasks, move work across a board, log time, run stages, and plan a day. Not a read-only bridge.
- Controlled write access — agent keys have read/create/edit/delete scopes intersected with the agent's role on each board.
- Visible agent activity — changes, comments, and worklogs appear in Kelvia; supported task changes can be reverted by a human in the app.
- Load only what you need — toolsets let a client publish one part of the product instead of all 58 tools.
- Modern remote auth — Streamable HTTP with OAuth 2.1 + PKCE, or a Bearer token when an explicit agent identity is required.
- A local option when you need one — stdio for clients without remote MCP support, for CI, and for keeping the key on one machine.
See it work
From the client side — one prompt, and the agent reads the board, decides what matters, files a follow-up task and comments on the blocker:
[A Claude Code session calling Kelvia MCP tools]
A real session against mcp.kelvia.app, typeset from its transcript.
create_task really did create #17, and add_task_comment really did comment
on #9 — which is what the rest of this section shows.
And from the product side. Everything below was created by an agent over this server — the board, the tasks, the discussion, and the logged time.
[An agent creating and triaging tasks on a Kelvia board]
Every change an agent makes is attributed to it and filterable, so a human can review exactly what happened rather than trusting a summary:
[A task history showing changes attributed to Release Agent]
The personal day planner is part of the surface too, so an agent can block out the work it just triaged:
[A time-blocked day plan built through the MCP server]
Hosted quick start (recommended)
The production endpoint is:
OAuth is the default. The client opens Kelvia in a browser, you approve access, and the client stores and refreshes its OAuth credentials. No API token needs to be pasted into a configuration file.
Claude Code
Start Claude Code, enter /mcp, choose kelvia, and complete Authenticate in
the browser. After authentication, verify the connection with:
Codex app, CLI, and IDE extension
The Codex app, CLI, and IDE extension share the same MCP configuration on a
Codex host. In an interactive Codex session, use /mcp to inspect the server.
Equivalent ~/.codex/config.toml:
Cursor
Add the server globally in ~/.cursor/mcp.json, or per project in
.cursor/mcp.json:
Open Cursor Settings → Tools & MCP, enable kelvia, and select Connect to
complete OAuth in the browser. Ask Cursor to list your Kelvia boards after it
reports the server as connected.
Agent-key authentication
OAuth acts as the approving Kelvia user. Use an agent key instead when the connection needs its own identity, board membership, role, expiry, and granular read/create/edit/delete scopes.
Create one in Kelvia → Profile → Agents:
- Create an agent identity.
- Add it to only the required boards and choose its board role.
- Create a key with the minimum required scopes and an expiry date.
- Copy the
klv_…value when shown; Kelvia stores only its hash.
Codex with an agent key
Keep the token in the environment; Codex stores only the variable name:
Equivalent ~/.codex/config.toml:
Claude Code with an agent key
Claude Code expands environment variables in MCP JSON. Single quotes below keep your shell from expanding the token into its command history:
Do not put tokens in URLs. The Streamable HTTP endpoint accepts authentication
only through the Authorization header.
Local stdio setup
Most people should use the hosted endpoint above. Running the server locally does not keep your tasks on your machine — they live in Kelvia either way, and the local process talks to the same API. What it changes is the path your credential takes, and which clients can connect.
Use stdio when one of these applies:
- Your client cannot do remote MCP or OAuth. The major clients can, but older versions, some IDE plugins, and locked-down machines where a browser redirect will not open, cannot.
- You are automating in CI, where nobody is around to approve an OAuth prompt. (An agent key against the hosted endpoint also works — this just removes a dependency.)
- Your key should not leave the machine. With the hosted endpoint your
token reaches
mcp.kelvia.appand stays in its memory for the session; over stdio it only ever goes to the Kelvia API.
Requirements: Node.js 20+.
Run the published package without installing anything:
Or build from source (Node.js 20+ and pnpm 9+), then use an absolute path to
dist/index.js in client configuration:
MCP Bundle for Claude Desktop
For local installation in Claude Desktop, build the MCP Bundle (.mcpb):
This produces build/kelvia-mcp-<version>.mcpb. Open that file in Claude
Desktop and enter a dedicated Kelvia agent key when prompted. The bundle is a
packaged form of the same local stdio server; for the hosted OAuth connection,
use the recommended quick start instead.
Claude Code (stdio)
Codex (stdio)
Cursor (stdio)
Available tools
58 tools
Boards (9) — list_boards, get_board, create_board, update_board,
archive_board, unarchive_board, delete_board, list_board_columns,
get_board_activity
Tasks (12) — list_tasks, list_daily_tasks, list_calendar_tasks,
get_task, get_task_by_number, create_task, update_task, reorder_task,
delete_task, get_task_activity, get_task_summary, set_task_summary
Comments and worklogs (8) — get_task_comments, add_task_comment,
update_task_comment, delete_task_comment, get_task_worklogs,
add_task_worklog, update_task_worklog, delete_task_worklog
Stages (8) — create_board_stage, materialize_board_backlog_stage,
update_board_stage, delete_board_stage, reorder_board_stages,
start_board_stage, complete_board_stage, reopen_board_stage
Members and invitations (9) — list_board_members, update_board_member,
remove_board_member, list_board_invitations, create_board_invitation,
revoke_board_invitation, list_my_invitations, accept_board_invitation,
decline_board_invitation
Personal day planner (8) — list_daily_plan_blocks,
list_daily_plan_definitions, list_overdue_daily_plan_blocks,
create_daily_plan_block, update_daily_plan_block,
set_daily_plan_block_status, reorder_daily_plan_blocks,
delete_daily_plan_block
Tags (3) — list_board_tags, list_tags, create_board_tag
Core (1) — get_current_user
The server also publishes two prompts (create_task_from_pr and
triage_board_backlog) and two schema resources under kelvia://schema/….
Every tool carries MCP annotations — readOnlyHint, destructiveHint,
idempotentHint — so a client can auto-approve reads and prompt before a
delete. 22 of the 58 tools are read-only.
Toolsets
The full surface costs about 45 KB of JSON schema in every session. Load only the parts a workflow needs:
get_current_user is always published. Omitting the setting, or naming a
toolset that does not exist, publishes everything.
tasks,planner publishes 21 tools and about 20 KB of schema instead of 45 KB.
Good first prompts
Security model
- Remote tokens are accepted only in the
Authorization: Bearer …header. - OAuth uses authorization-code flow with PKCE and dynamic client registration.
- OAuth tokens cannot manage account credentials, personal API tokens, agents, or MCP connections.
- Agent keys are hashed at rest, revocable, optionally expiring, and limited by both key scopes and board roles.
- Remote sessions appear in the Kelvia profile and can be revoked.
- Legacy SSE exists for older clients at
/sse; it may require a query token because browserEventSourcecannot set headers. Prefer/mcpso credentials never enter URLs, browser history, or proxy access logs.
Treat MCP servers as privileged integrations. Review a requested write before approving it, use a dedicated agent key for automation, and grant only the boards and scopes the workflow needs.
Reporting a vulnerability: see SECURITY.md. Data handling for the hosted endpoint is described in the AI and MCP data processing policy, and the privacy policy covers Kelvia as a whole.
Privacy Policy
The MCP Bundle connects to the Kelvia API and sends the requests needed to perform the actions you ask it to take. It does not run a separate analytics or advertising service. Review the Kelvia Privacy Policy and the AI and MCP Data Processing Policy before installing it.
Self-hosting the HTTP endpoint
Setting PORT switches the process from stdio to Streamable HTTP.
Then check GET /health, which reports the available transports and toolsets.
Environment variables
Streamable HTTP is stateless at the MCP transport layer. Legacy SSE sessions are stored in process memory, so SSE requires one instance or sticky sessions.
Troubleshooting
- Needs authentication / HTTP 401 — complete OAuth from the client's MCP panel, or verify that the Bearer-token environment variable is available to the client process.
- HTTP 403 — the key lacks a required scope, the agent lacks the required board role, or the email/account state blocks that operation.
- Server connects but a board is missing — add the agent identity to that board, or approve OAuth as a user who already has access.
Connection closedin stdio mode — runpnpm build, use an absolute path, and confirm Node.js 20+ plusKELVIA_API_TOKENare present.- No tools visible — check
claude mcp list,codex mcp list, or Cursor's Tools & MCP panel, then restart/reload the client after changing config. - Large task output — use compact
list_tasks, filter by board/status, then callget_taskfor one record instead of requesting detailed lists. - Too many tools for the client — narrow the surface with toolsets.
Health and OAuth discovery:
Development
pnpm run test builds the package, initializes the stdio server through the
official MCP client SDK, and verifies the published tools, annotations,
toolsets, prompts, resources, and server instructions.
See CONTRIBUTING.md for how this repository relates to the Kelvia monorepo and what a tool change needs to touch.
License
Source: README.md at commit eabb28f
Tools
0Version history
1- v1.0.2LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listedRequired15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts