Windows 10 および macOS 通知機能付き MCP サーバー
プロジェクト概要
このプロジェクトは、デスクトップ通知を表示できる Model Context Protocol (MCP) サーバーを作成することを目的としています。Windows 10 では win10toast ライブラリを使用し、macOS では osascript を使用して通知を表示します。このサーバーは MCP クライアント(VSCode Cline など)からのリクエストを受け取り、それに基づいてデスクトップ通知を表示します。
要件
機能要件
MCP プロトコルサポート
MCP クライアントとの通信を確立するための Model Context Protocol の実装
最新の MCP 仕様のサポート(VSCode Cline との完全な互換性を提供)
同期および非同期リクエストの処理
通知システム
Windows 10 では win10toast ライブラリを使用してデスクトップ通知を表示
macOS では osascript を使用して通知センターに通知を表示
カスタマイズ可能な通知パラメータのサポート:
タイトル
メッセージ内容
表示時間
アイコン(Windows のみ、オプション)
サブタイトル(macOS のみ、オプション)
通知音(macOS のみ、オプション)
通知タイプ(情報、警告、エラー、成功)
クライアント接続
設定可能なネットワークインターフェースでのリスニング(localhost の 127.0.0.1 だけでなく、すべてのインターフェースに対応する 0.0.0.0 でも)
設定可能なポート(デフォルト: 8000)
複数の同時クライアント接続の処理
接続問題に対する適切なエラー処理
コマンド処理
MCP クライアントからの通知コマンドの処理
通知をトリガーするためのシンプルな API のサポート
コマンド検証と適切なエラーレスポンスの提供
技術要件
サーバー実装
実装には Python 3.8 以上を使用
asyncio または同様のライブラリを使用した非同期サーバーとして実装
MCP サーバー実装のベストプラクティスに従う
依存関係
Windows 10 デスクトップ通知用の win10toast
macOS 通知用の osascript(システムに標準搭載)
MCP プロトコル実装に必要なライブラリ
外部依存関係を最小限に抑える
設定
コマンドライン引数による設定のサポート
環境変数による設定のサポート
すべての設定に対する合理的なデフォルト値の提供
ログ記録とエラー処理
包括的なログシステムの実装
すべてのクライアント接続、コマンド、エラーのログ記録
意味のあるエラーメッセージを含む適切な例外処理
テスト要件
テストスクリプト
サーバーの機能を実証するテストスクリプトの含有
様々な通知タイプの例示
クライアント互換性
VSCode Cline との互換性の確保
クライアント固有の設定要件のドキュメント化
成果物
MCP サーバーの Python 実装
機能を実証するテストスクリプト
すべての依存関係をリストした requirements.txt
使用方法と設定に関するドキュメント
一般的な問題のトラブルシューティングガイド
実装上の注意
サーバーが localhost だけでなく、すべてのインターフェース(0.0.0.0)にバインドするようにする
同時リクエストを処理するための適切なスレッディングまたは非同期パターンを使用する
適切なセキュリティ対策(入力検証など)を含める
接続問題のデバッグのための詳細なログオプションを提供する
サーバーの適切なシャットダウンを実装する
使用例
完成したサーバーは次のように実行できるようにする:
そして、VSCode Cline または他の MCP クライアントから MCP プロトコルを介して通知をトリガーできるようにする。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
An MCP server that displays desktop notifications on Windows 10 and macOS, compatible with VSCode Cline and supporting customizable notification parameters.
Related MCP Servers
- AsecurityAlicenseAqualityA simple MCP server that can send notifications on mac devices.Last updated -51222MIT License
- -securityAlicense-qualityThis MCP server provides email sending functionality using Protonmail's SMTP service. It allows both Claude Desktop and Cline VSCode extension to send emails on your behalf using your Protonmail credentials.Last updated -18MIT License
- AsecurityFlicenseAqualityAn MCP server that enables sending Markdown-formatted notifications to Microsoft Teams channels through a simple tool interface.Last updated -12
- AsecurityAlicenseAqualityA Model Context Protocol server that provides system notification capabilities across various platforms (macOS, Windows, Linux) using node-notifier.