outlook について
olk は Microsoft Outlook と OneDrive を操作するコマンドラインツールであり、MCP サーバーとしても動作します。Microsoft Graph を通じてメール、カレンダー、連絡先、タスク、ファイルにアクセスします。個人の Outlook.com アカウントと Microsoft 365 のエンタープライズアカウントの両方に対応しており、ターミナルやスクリプトから業務データを扱いたい方に適しています。
主な機能
- 01メールの一覧取得、検索、送信、返信
- 02カレンダーの表示と連絡先の検索
- 03ToDo リストの管理
- 04OneDrive のファイル参照
- 05スクリプト向けの JSON および TSV 出力
- 06MCP での変更操作は明示的な許可が必要
活用シーン
- 01スクリプトでメールの件名と送信者を一括取得
- 02コマンドラインからインライン画像付きの HTML メールを下書き作成
- 03AI エージェントに Outlook データへの限定的なアクセスを提供
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
40掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| out | string | いいえ | ダウンロード先のディレクトリ |
| concise | boolean | いいえ | ペイロードサイズを削減するため、大きなフリーテキストフィールド(メッセージ/イベント/タスクの本文、プレビュー、参加者リスト)を除外します。 |
| event-id | string | はい | イベント ID |
| attachment-id | string | はい | 添付ファイル ID |
詳細
olk — ターミナルで Microsoft Outlook を操作
olk は、Microsoft Graph を通じて Outlook のメール、カレンダー、連絡先、タスク、OneDrive を操作できるスクリプト対応の CLI および MCP サーバーです。個人用の Outlook.com アカウントと、企業向けの Microsoft 365 アカウントで利用できます。
インストール
brew install rlrghb/tap/olk
# or
go install github.com/rlrghb/olkcli/cmd/olk@latest
npm パッケージは olkcli、インストールされるコマンドは olk です。
npm install -g olkcli
アップグレード後に macOS が Keychain へのアクセスを求める場合は、macOS に関する注意事項をご覧ください。
クイックスタート
olk auth login
olk auth status
olk mail list --json --results-only --select id,subject,from
olk mail search 'from:[email protected] subject:urgent'
olk calendar view --days 7
olk contacts search "Alex"
olk todo lists list
olk drive ls
職場または学校のアカウント、およびエンタープライズ専用機能については、次をご覧ください。
olk auth login --enterprise
よく使うコマンド
| 用途 | コマンド |
|---|---|
| サインイン中のアカウントを確認する | olk auth status or olk whoami |
| メッセージ ID と件名を検索する | olk mail list --json --results-only --select id,subject,from |
| メールを検索する | olk mail search "from:[email protected] subject:urgent" |
| 来週の予定を表示する | olk calendar view --days 7 |
| 連絡先を検索する | olk contacts search "Alex" |
| タスクリストを一覧表示する | olk todo lists list |
| OneDrive を参照する | olk drive ls |
| メールを送信する | olk mail send --to [email protected] --subject "Hi" --body "Hello" |
| Cc を追加して全員に返信する下書きを作成する | olk mail reply <ID> --reply-all --draft --body "$(cat reply.txt)" --cc [email protected] |
| インライン画像を含む HTML の下書きを作成する | olk mail drafts create --to [email protected] --subject "Steps" --html --body '<img src="cid:steps">' --inline steps=steps.png |
| 変更を同期する | olk changes --json |
| スクリプトで JSON を使用する | olk mail list --json --results-only |
| MCP サーバーとして使用する | olk mcp |
すべてのコマンドとフラグについては、コマンドリファレンスをご覧ください。
HTML の下書きにインライン画像を含める
HTML で cid: URL を使用し、対応する画像を繰り返し指定可能な
--inline CID=PATH フラグで渡します。新規の下書きと、スレッドに紐づく返信または全員への返信の下書きで利用できます。
olk mail reply <ID> --draft --html \
--body '<p>See both images:</p><img src="cid:logo"><img src="cid:steps">' \
--inline logo=logo.png --inline steps=steps.png
olk mail drafts create --to [email protected] --subject "Instructions" --html \
--body '<p>Follow these steps:</p><img src="cid:steps">' \
--inline steps=steps.png
各 CID は一意で、HTML 内で参照されている必要があります。ファイルは画像で、Microsoft Graph のシンプルな添付ファイルの上限である 3 MB 未満である必要があります。下書きコマンドはメールを送信しません。即時送信および転送では --inline を使用できません。
出力とスクリプト
結果は stdout に、診断情報とプロンプトは stderr に出力されます。
olk mail list --json --results-only | jq '.[].subject'
olk contacts list --plain
出力モードは JSON(--json)、TSV(--plain)、およびデフォルトの整列済みテーブルです。大きな本文やプレビューを省略するには --concise を、対応している場合にフィールドを絞り込むには --select を使用します。スクリプトと同期をご覧ください。
安全なデフォルト設定
- 無人の読み取り専用実行には
--no-write --no-send --no-inputを使用してください。 - MCP では厳選されたツールが公開され、変更を伴う操作には明示的なオプトインが必要です。
- 外部からのメール、カレンダー、連絡先、ファイルのテキストは、エージェントが安全に扱えるよう
--wrap-untrustedでラップできます。 - 更新トークンは OS のキーチェーンに保存され、アクセストークンはメモリ内にのみ保持されます。
エージェントを接続したりログを共有したりする前に、セキュリティとプライバシーのガイドをお読みください。
ドキュメント
コントリビューション
make build
make test
make lint
リポジトリの構成、検証、CI、公開の詳細については、開発とリリースをご覧ください。
ライセンス
LICENSEをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。