npm package: @frater/kakiko-mcp-server
Description: MCP server for Kakiko task management app – query and manage tasks via Model Context Protocol
Author: Frater Inc.
Latest version: 0.3.1

# @frater/kakiko-mcp-server

[Kakiko](https://kakiko.io) デスクトップアプリのタスク・ルーティンデータに AI クライアントからアクセスするための [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) サーバーです。

Kakiko アプリに IPC（Unix Domain Socket / Windows Named Pipe）で接続し、タスクの検索・作成・更新・削除やルーティンの参照をツールとして提供します。

## インストール

```bash
npm install -g @frater/kakiko-mcp-server
```

または `npx` で直接実行:

```bash
npx -y @frater/kakiko-mcp-server
```

## セットアップ

### Claude Desktop

`~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) に追加:

```json
{
  "mcpServers": {
    "kakiko": {
      "command": "npx",
      "args": ["-y", "@frater/kakiko-mcp-server"]
    }
  }
}
```

### Claude Code

プロジェクトの `.mcp.json` に追加:

```json
{
  "mcpServers": {
    "kakiko": {
      "command": "npx",
      "args": ["-y", "@frater/kakiko-mcp-server"]
    }
  }
}
```

### Cursor

Cursor Settings > MCP Servers に追加:

```json
{
  "kakiko": {
    "command": "npx",
    "args": ["-y", "@frater/kakiko-mcp-server"]
  }
}
```

### Windows

Windows 環境では `cmd` 経由で実行してください:

```json
{
  "mcpServers": {
    "kakiko": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "@frater/kakiko-mcp-server"]
    }
  }
}
```

### ソケットパスの指定

Kakiko アプリのデフォルトソケットパスを自動検出しますが、明示的に指定することもできます:

```json
{
  "mcpServers": {
    "kakiko": {
      "command": "npx",
      "args": ["-y", "@frater/kakiko-mcp-server", "--socket-path", "/path/to/kakiko.sock"]
    }
  }
}
```

デフォルトのソケットパス:

| OS | パス |
|----|------|
| macOS | `~/Library/Application Support/io.kakiko/kakiko.sock` |
| Windows | `\\.\pipe\kakiko-ipc` |
| Linux | `~/.local/share/io.kakiko/kakiko.sock` |

## CLI オプション

```
kakiko-mcp [options]

Options:
  --socket-path <path>  IPC ソケットのパス（省略時は自動検出）
  --readonly            読み取り専用モード（tasks_mutate を無効化）
  --log-level <level>   ログレベル: debug | info | warn | error（デフォルト: info）
```

## 提供ツール

### tasks_query

タスクを検索・フィルタリングします。

| パラメータ | 型 | 説明 |
|-----------|-----|------|
| `status` | `string[]` | フィルタするステータス (`todo`, `in_progress`, `paused`, `done`) |
| `tags` | `string[]` | フィルタするタグ |
| `due_from` | `string` | 期限の開始日 (YYYY-MM-DD) |
| `due_to` | `string` | 期限の終了日 (YYYY-MM-DD) |
| `query` | `string` | テキスト検索（最大200文字） |
| `sleeping` | `string` | `any` / `sleeping` / `awake`（デフォルト: `awake`） |
| `limit` | `number` | 取得件数 1-100（デフォルト: 20） |
| `cursor` | `string` | ページネーションカーソル |

### tasks_get

タスクの詳細を取得します。

| パラメータ | 型 | 説明 |
|-----------|-----|------|
| `task_id` | `string` | タスクの UUID（必須） |

### tasks_mutate

タスクの作成・更新・削除を行います（`--readonly` モード時は無効）。

| パラメータ | 型 | 説明 |
|-----------|-----|------|
| `operations` | `object[]` | 操作の配列（最大10件） |
| `dry_run` | `boolean` | `true` で変更をプレビュー（デフォルト: `false`） |

操作 (`operations`) の `action`:
- `create` – 新規タスク作成（`title` 必須）
- `update` – タスク更新（`task_id` 必須）
- `set_status` – ステータス変更（`task_id`, `status` 必須）
- `delete` – タスク削除（`task_id` 必須）
- `sleep` – タスクをスリープ（`task_id` 必須）
- `wake` – タスクをウェイクアップ（`task_id` 必須）

### routines_query

ルーティン（習慣）の一覧を取得します。

| パラメータ | 型 | 説明 |
|-----------|-----|------|
| `routine_id` | `string` | 特定ルーティンの UUID |
| `active_only` | `boolean` | アクティブなルーティンのみ |

### kakiko_overview

ダッシュボード情報を取得します（引数なし）。

- 今日の期限タスク数・期限切れ数・進行中数・完了数
- 今週の完了数・作成数
- アクティブなルーティン
- 期限切れタスク一覧
- タグ一覧（タスク数付き）

## 動作要件

- Node.js >= 18.0.0
- Kakiko デスクトップアプリが起動していること

## ライセンス

MIT