mcpField
R
remi

remi

ローカル
github.com/mattheworiordan生産性2629 週間前に更新

remi について

remi は macOS 向けの Apple リマインダー用コマンドラインツールであり、MCP サーバーでもあります。セクション機能と iCloud 同期に対応しています。構造化された JSON を返すため、ターミナルでリマインダーを管理する利用者や AI エージェントに適しています。

主な機能

  1. 01iCloud 同期対応のリマインダーセクション
  2. 02自然言語による日付と繰り返し設定
  3. 03リスト名のあいまい一致
  4. 04全コマンドの構造化 JSON 出力
  5. 05MCP サーバーモード

活用シーン

  1. 01ターミナルから今日・期限切れ・今後のリマインダーを確認
  2. 02コマンドラインで買い物項目を指定セクションに追加
  3. 03AI エージェントから Apple リマインダーを読み取り・更新

MCP 対応

remi --mcp で起動すると、remi_lists、remi_add、remi_complete、remi_move など 16 のツールを MCP サーバーとして公開します。あいまい一致と構造化されたレスポンスに対応しています。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"mattheworiordan-remi": {
"command": "npx",
"args": [
"-y",
"@mattheworiordan/remi"
]
}
}
}
起動コマンドnpx -y @mattheworiordan/remi

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@mattheworiordan/remi0.2.1

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

remi

remi

Apple がリマインダー向けに作るべきだった CLI。

ターミナルからリストを作成し、リマインダーを追加してセクションに整理すれば、すべての Apple デバイス間で同期できます。

remi のデモ

remi を選ぶ理由

  • iCloud 同期対応のセクション — Apple リマインダーのセクションに対応する唯一の CLI です。セクションを作成し、リマインダーを割り当てたり、セクション間で移動したりでき、すべて同期されます。
  • 自然言語 — --due "next tuesday"、--repeat "every 2 weeks on monday,friday"
  • あいまい検索 — remi list "Groceries / Shopping List" の代わりに remi list shopping と入力できます。
  • エージェントを第一に設計 — 構造化された JSON 出力、Claude Code プラグイン、skills.sh スキルに対応し、OpenClaw と互換性があります。
  • 高速 — Swift でコンパイルされたヘルパーを使用し、Electron も GUI もありません。
他のツールとの比較
remiremindctlreminders-cli
セクション対応非対応非対応
セクション同期(iCloud)対応該当なし該当なし
繰り返し対応対応非対応
自然言語の日付対応対応非対応
JSON 出力対応対応非対応
AI エージェント連携対応一部対応非対応

インストール

brew tap mattheworiordan/tap && brew install remi

または npm 経由でインストールします。

npm install -g @mattheworiordan/remi
# or run without installing
npx @mattheworiordan/remi lists

クイックスタート

remi lists                                              # See all lists
remi list "Groceries"                                   # View a list (fuzzy: remi list groceries)
remi add "Groceries" "Buy milk" --section "Dairy"       # Add to a section
remi today                                              # What's due today?
remi complete "Groceries" "milk"                        # Fuzzy complete

使い方

期限が来ている項目を確認する
remi today                    # Due today
remi overdue                  # Past due
remi upcoming --days 7        # Coming up
remi search "dentist"         # Search across all lists
リマインダーを管理する
remi add "Work" "Review PR" --due "next friday" --priority high
remi add "Work" "Standup" --due tomorrow --repeat daily
remi complete "Work" "standup"
remi update "Work" "Review PR" --due "in 3 days"
remi delete "Work" "Review PR" --confirm

日付:tomorrow、next tuesday、in 3 days、または YYYY-MM-DD 繰り返し:daily、weekly、monthly、every 2 weeks、every 3 months on monday,friday

セクションで整理する
remi sections "Groceries"                                # List sections
remi create-section "Groceries" "Produce"                # Create a section
remi add "Groceries" "Bananas" --section "Produce"       # Add to a section
remi move "Groceries" "Bananas" --to-section "Dairy"     # Move between sections

セクションは CRDT ベクトルクロックを介して iCloud と同期されます。詳しくは仕組みをご覧ください。

JSON 出力

すべてのコマンドで --json を指定すると、機械可読形式で出力できます。

remi today --json
# {"success": true, "data": [...]}

AI エージェント連携

remi は AI エージェント向けに設計されています。MCP サーバー、Claude Code プラグイン、またはスキルとして使用できます。

MCP サーバー
{
  "mcpServers": {
    "remi": {
      "command": "remi",
      "args": ["--mcp"]
    }
  }
}

16 個のツールを利用できます。remi_lists、remi_add、remi_complete、remi_move、remi_today、remi_search などがあり、すべてあいまい検索と構造化されたレスポンスに対応しています。

その他の連携
# Claude Code plugin
claude plugin marketplace add mattheworiordan/remi

# skills.sh
npx skills add mattheworiordan/remi

# OpenClaw
clawhub install remi

権限

初回起動時、macOS でリマインダーへのアクセス許可を求められます(「許可」をクリックしてください)。セクション機能を利用するには、ターミナルアプリへのフルディスクアクセスも必要です。

remi authorize    # Guides you through both
remi doctor       # Shows what's granted

必要条件

  • macOS 13 以降(Ventura 以降)
  • Node.js 18 以降
  • Xcode Command Line Tools(xcode-select --install)

仕組み

Apple が公開 API でセクションを提供していないため、remi は 3 つのレイヤーを使用します。

レイヤー内容理由
EventKitリマインダーの CRUD、クエリ、繰り返し安定した公開 API
ReminderKitセクションの CRUDプライベートフレームワーク — 同期されるセクションを作成する唯一の方法
SQLite + Token Mapsセクションの所属情報iCloud 同期のための CRDT ベクトルクロックを使ったデータベースへの直接書き込み

リバースエンジニアリングの全記録では、Apple の非公開の同期アーキテクチャについて判明した内容を説明しています。

コントリビュート

git clone https://github.com/mattheworiordan/remi.git && cd remi
npm install && npm run build:swift && npm run build
npm test                        # Unit tests
npm run test:integration        # Integration tests (needs Reminders access)

ライセンス

MIT — Matthew O'Riordan

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。