human-mcp
人間をMCPツールとして提供するMCPサーバー
概要
human-mcpは、AIアシスタントが人間の能力を活用できるようにするMCPサーバーです。AIアシスタントからのリクエストを受け取り、人間に指示を表示し、人間からの応答をAIアシスタントに返します。
主な機能:
- MCPクライアントからのツール実行リクエスト (STDIN経由) を受け付ける
- 実行に必要な指示をSQLiteデータベースに書き込む
- StreamlitアプリケーションがSQLiteを監視し、人間に指示を表示、応答入力を促す
- 人間がStreamlit経由で入力した結果をSQLiteに書き込む
- MCPサーバーがSQLiteから結果を読み取り、MCPレスポンスとしてクライアント (STDOUT経由) に返す
提供するツール
- human_eye_tool: 人間が目で見て状況を説明したり、特定のものを探したりします。
- human_hand_tool: 人間が手を使って簡単な物理的操作を実行します。
- human_mouth_tool: 人間が口を使って指定された言葉を発話します。
- human_weather_tool: 人間が現在地の天気を確認して報告します。
- human_ear_tool: 人間が耳を使って音を聞き、状況を説明します。
- human_nose_tool: 人間が鼻を使って匂いを確認します。
- human_taste_tool: 人間が口を使って食べ物を味わい、その味を説明します。
セットアップ
前提条件
- Python 3.12以上
- uv
- SQLite3
インストール手順
- リポジトリをクローンCopy
- 仮想環境を作成して有効化Copy
- 依存関係をインストールCopy
使用方法
- MCPサーバーをインストール
Copy
- ClaudeからMCPサーバーに接続Copy
- 2つ目のターミナルでStreamlit UIを起動Copy
- ブラウザで表示されるStreamlit UIにアクセス(通常は http://localhost:8501 )
- MCPクライアント(例:Claude Desktop)からリクエストを送信すると、Streamlit UIにタスクが表示されます。
- Streamlit UIで応答を入力し、「応答を送信」ボタンをクリックすると、その応答がMCPクライアントに返されます。
プロジェクト構造
Copy
ライセンス
MIT
注意事項
このプロジェクトはジョーク用途を想定しています。実際の運用では、人間のオペレーターの負担や、応答の遅延などを考慮する必要があります。