# io.github.usekaneo/kaneo (npm · @kaneo/mcp)

Official MCP server for Kaneo: manage tasks, projects, and labels from Claude and other MCP clients

- Trust score: 79/100 (medium)
- Change this week: +33
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-12

## Components

- npm · `@kaneo/mcp`: 79/100 (this document), [markdown](https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp.md), [page](https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp)

## Channel facts

- Registry: `npm`
- Package: `@kaneo/mcp`
- Version: `0.1.11`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-12.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 35 of 110 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to usekaneo/kaneo).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 1 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 66/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 1506 tokens (~41/item across 36 items; 36 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 70/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 9% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add usekaneo-kaneo -- npx -y @kaneo/mcp
```

### Codex

```bash
codex mcp add usekaneo-kaneo -- npx -y @kaneo/mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "usekaneo-kaneo": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@kaneo/mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add usekaneo-kaneo --command npx --arg -y --arg @kaneo/mcp
```

### Hermes

```yaml
mcp_servers:
  usekaneo-kaneo:
    command: "npx"
    args: ["-y", "@kaneo/mcp"]
```

### Other

```json
{
  "mcpServers": {
    "usekaneo-kaneo": {
      "command": "npx",
      "args": [
        "-y",
        "@kaneo/mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-12 (score 79, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-10 (score 78, +3)

- [functional regression] Schema quality: 1010 → 1495
- [functional improvement] Tool coverage: 3% → 9%
- [functional] Package version: 0.1.9 → 0.1.10
- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-08-08 (score 75, +1)

- [functional improvement] Security disclosure: fail → pass

### 2026-08-07 (score 74, +4)

- [security improvement] Known CVEs: partial → pass
- [functional] Dependency health: partial → 0.84

### 2026-08-06 (score 70, +24)

- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Stability: unverified → 0.07
- [functional improvement] MCP protocol: unverified → pass
- [functional] First check of Schema quality: fair
- [functional] First check of Schema quality: fail
- [functional] First check of Tool coverage: 3
- [functional] First check of Schema quality: pass

### 2026-08-05 (score 46, 0)

- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional] First check of Schema quality: pass
- [functional] First check of Tool coverage: 3
- [functional] First check of Schema quality: fair
- [functional] First check of Schema quality: fail
- [functional] Package version: 0.1.8 → 0.1.9

### 2026-08-04 (score 46)

First indexed and scored.

## MCP tools (36)

### `whoami` (~22 tokens)

Return the current Kaneo session and user for the cached device token.

### `list_workspaces` (~24 tokens)

List workspaces (Better Auth organizations) the signed-in user can access.

### `list_projects` (~35 tokens)

List projects in a workspace.

Input parameters:

- `includeArchived` (boolean): Include archived projects
- `workspaceId` (string, required): Workspace ID

### `get_project` (~22 tokens)

Get a single project by ID.

Input parameters:

- `id` (string, required)

### `create_project` (~44 tokens)

Create a project in a workspace.

Input parameters:

- `icon` (string, required)
- `name` (string, required)
- `slug` (string, required)
- `workspaceId` (string, required)

### `update_project` (~64 tokens)

Update project metadata (PATCH-style: only provided fields are changed).

Input parameters:

- `description` (string)
- `icon` (string)
- `id` (string, required)
- `isPublic` (boolean)
- `name` (string)
- `slug` (string)

### `list_tasks` (~97 tokens)

List tasks for a project (optionally filtered/sorted).

Input parameters:

- `assigneeId` (string)
- `dueAfter` (string)
- `dueBefore` (string)
- `limit` (integer)
- `page` (integer)
- `priority` (string)
- `projectId` (string, required)
- `sortBy` (string)
- `sortOrder` (string)
- `status` (string)

### `get_task` (~22 tokens)

Get a task by ID.

Input parameters:

- `taskId` (string, required)

### `create_task` (~75 tokens)

Create a task in a project.

Input parameters:

- `description` (string, required)
- `dueDate` (string)
- `priority` (string, required)
- `projectId` (string, required)
- `startDate` (string)
- `status` (string, required)
- `title` (string, required)
- `userId` (string)

### `update_task` (~91 tokens)

Update a task (fetches current task, merges fields, then full update).

Input parameters:

- `description`
- `dueDate`
- `position` (number)
- `priority` (string)
- `projectId` (string)
- `startDate`
- `status` (string)
- `taskId` (string, required)
- `title` (string)
- `userId`

### `move_task` (~45 tokens)

Move a task to another project (and optional column status).

Input parameters:

- `destinationProjectId` (string, required)
- `destinationStatus` (string)
- `taskId` (string, required)

### `update_task_status` (~35 tokens)

Update only the status (column) of a task.

Input parameters:

- `status` (string, required)
- `taskId` (string, required)

### `list_task_comments` (~23 tokens)

List comments on a task.

Input parameters:

- `taskId` (string, required)

### `create_task_comment` (~31 tokens)

Add a comment to a task.

Input parameters:

- `content` (string, required)
- `taskId` (string, required)

### `update_task_comment` (~33 tokens)

Update one of your comments on a task.

Input parameters:

- `commentId` (string, required)
- `content` (string, required)

### `delete_task_comment` (~26 tokens)

Delete one of your comments from a task.

Input parameters:

- `commentId` (string, required)

### `list_workspace_labels` (~24 tokens)

List labels defined in a workspace.

Input parameters:

- `workspaceId` (string, required)

### `create_label` (~52 tokens)

Create a label in a workspace (optionally attach to a task).

Input parameters:

- `color` (string, required)
- `name` (string, required)
- `taskId` (string)
- `workspaceId` (string, required)

### `attach_label_to_task` (~34 tokens)

Attach an existing label to a task.

Input parameters:

- `labelId` (string, required)
- `taskId` (string, required)

### `detach_label_from_task` (~27 tokens)

Detach a label from its current task.

Input parameters:

- `labelId` (string, required)

### `create_task_relation` (~83 tokens)

Create a relation between two tasks. relationType: 'subtask' (sourceTaskId is the parent, targetTaskId the child), 'blocks' (sourceTaskId blocks targetTaskId), or 'related' (bidirectional).

Input parameters:

- `relationType` (string, required)
- `sourceTaskId` (string, required)
- `targetTaskId` (string, required)

### `get_task_relations` (~33 tokens)

List all relations (subtask/blocks/related) involving a task.

Input parameters:

- `taskId` (string, required)

### `delete_task_relation` (~25 tokens)

Delete a task relation by its relation ID.

Input parameters:

- `id` (string, required)

### `delete_label` (~43 tokens)

Delete a label by ID. Only task-associated labels can be deleted; workspace-level labels (taskId null) are rejected by the API.

Input parameters:

- `id` (string, required)

### `list_workspace_members` (~37 tokens)

List the members of a workspace. Use this to resolve the user ID an assignee tool expects.

Input parameters:

- `workspaceId` (string, required)

### `search` (~91 tokens)

Search across tasks, projects, workspaces, comments, and activities.

Input parameters:

- `limit` (integer): Maximum results, 1 to 50. Defaults to 20.
- `projectId` (string): Limit to one project
- `q` (string, required): Search query
- `type` (string): Restrict results to one kind. Defaults to all.
- `workspaceId` (string): Limit to one workspace

### `list_project_columns` (~39 tokens)

List a project's columns. Their slugs are the values update_task_status and create_task accept as a status.

Input parameters:

- `projectId` (string, required)

### `delete_task` (~22 tokens)

Delete a task by ID.

Input parameters:

- `taskId` (string, required)

### `update_task_assignee` (~52 tokens)

Assign a task to a workspace member, or pass a null userId to unassign it.

Input parameters:

- `taskId` (string, required)
- `userId` (required): Member user ID, or null to unassign

### `update_task_due_date` (~41 tokens)

Set a task's due date. Omit dueDate to clear it.

Input parameters:

- `dueDate` (string)
- `taskId` (string, required)

### `list_task_time_entries` (~27 tokens)

List the time entries logged against a task.

Input parameters:

- `taskId` (string, required)

### `get_time_entry` (~24 tokens)

Get a single time entry by ID.

Input parameters:

- `id` (string, required)

### `create_time_entry` (~56 tokens)

Log time against a task. Omit endTime to leave the entry running.

Input parameters:

- `description` (string)
- `endTime` (string)
- `startTime` (string, required)
- `taskId` (string, required)

### `update_time_entry` (~68 tokens)

Update a time entry. startTime is required; omitting endTime keeps the stored one. startTime cannot be later than the end time.

Input parameters:

- `description` (string)
- `endTime` (string)
- `id` (string, required)
- `startTime` (string, required)

### `list_task_activity` (~24 tokens)

List a task's activity history.

Input parameters:

- `taskId` (string, required)

### `list_notifications` (~15 tokens)

List the signed-in user's notifications.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp#diagnostics

## Score history

- 2026-08-12: 79
- 2026-08-11: 78
- 2026-08-10: 78
- 2026-08-09: 75
- 2026-08-08: 75
- 2026-08-07: 74
- 2026-08-06: 70
- 2026-08-05: 46
- 2026-08-04: 46

## Links

- npm package: https://www.npmjs.com/package/@kaneo/mcp
- Socket report: https://socket.dev/npm/package/@kaneo/mcp
- Repository: https://github.com/usekaneo/kaneo
- Changelog RSS feed: https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp.json
- HTML version of this page: https://verifymcp.io/servers/usekaneo-kaneo/kaneo-mcp
