ProtoLinkAI 🚀 について
ProtoLinkAIは、MCPを基盤とする共通インターフェースでツールをラップし、管理するPythonフレームワークです。Twitter、暗号資産価格、天気、ElizaOS連携などのツールを選んで利用できます。
主な機能
- 01MCPによるツールの共通ラップ
- 02利用するツールの選択
- 03Twitter操作の管理
- 04ユーティリティやデータ検索
- 05ElizaOS連携
活用シーン
- 01選択したツールでサーバーを構成
- 02Twitter操作の自動化
- 03天気や時刻の機能追加
- 04Elizaエージェントとの接続
MCP 対応
Claude Desktopなどのクライアント向けに、ラップしたツールをMCP経由で公開します。エージェント設定を変更して利用するツールを選べます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ProtoLinkAI 🚀
ProtoLink AI は、多様なツールを統一的な方法で実装・管理するための標準化されたツールラッピングフレームワークです。開発者がツールベースのユースケースをすばやく統合し、起動できるように設計されています。
主な機能
- 🔧 標準化されたラッピング:MCP プロトコルを使用してツールを構築するための抽象化レイヤーを提供します。
- 🚀 柔軟なユースケース:特定の要件に合わせて、ツールを簡単に追加または削除できます。
- ✨ すぐに使えるツール:一般的なシナリオ向けの構築済みツールが含まれています。
- 🐦 Twitter 管理:ツイート、返信、Twitter 上でのやり取りの管理を自動化します。
- 💸 暗号資産:最新の暗号資産価格を取得します。
- 🤖 ElizaOS との統合:ElizaOS にシームレスに接続して連携し、自動化を強化します。
- 🕑 時刻関連ユーティリティ
- ☁️ 天気情報(API)
- 📚 辞書検索
- 🧮 数式計算用の電卓
- 💵 為替レート(API)
- 📈 株式データ:リアルタイムおよび過去の株式市場情報にアクセスします。
- [WIP] 📰 ニュース:最新のニュース見出しを取得します。
技術スタック 🛠️
- Python:主要なプログラミング言語
- MCP フレームワーク:通信プロトコル
- Docker:コンテナ化
🤔 MCP とは?
Model Context Protocol(MCP)は、AI モデルやシステム間でコンテキストを共有・管理するための最先端の標準です。AI エージェントがシームレスにやり取りするために使う言語と考えてください。🧠✨
MCP が重要な理由は次のとおりです。
- 🧩 標準化:MCP はモデル間でコンテキストを共有する方法を定義し、相互運用性を実現します。
- ⚡ スケーラビリティ:高いスループットを備えた大規模な AI システムに対応できるよう構築されています。
- 🔒 セキュリティ:堅牢な認証ときめ細かなアクセス制御を提供します。
- 🌐 柔軟性:さまざまなシステムや AI アーキテクチャに対応します。
出典
インストール 📦
PyPI 経由でインストール
pip install ProtoLinkai
使い方 💻
ローカルで実行
ProtoLinkai --local-timezone "America/New_York"
Docker で実行
-
Docker イメージをビルドします。
docker build -t ProtoLinkai . -
コンテナを実行します。
docker run -i --rm ProtoLinkai
Twitter との統合 🐦
MProtoLinkAI は堅牢な Twitter 統合機能を提供し、ツイート、返信、Twitter 上でのやり取りの管理を自動化できます。このセクションでは、Docker と .env + scripts/run_agent.sh を使用した Twitter 統合の設定方法と使い方を詳しく説明します。
Twitter 統合用の Docker 環境変数
Docker 内で ProtoLinkAI を実行する場合、Twitter 統合用の環境変数を設定する必要があります。これらの変数は次の 2 つのカテゴリに分かれています。
1. エージェントノードクライアントの認証情報
これらの認証情報は、Twitter 上でのやり取りを管理するために、エージェント内の Node.js クライアントによって使用されます。
ENV TWITTER_USERNAME=
ENV TWITTER_PASSWORD=
ENV TWITTER_EMAIL=
2. Tweepy(Twitter API v2)の認証情報
これらの認証情報は、Twitter API v2 とのやり取りに Tweepy によって使用されます。
ENV TWITTER_API_KEY=
ENV TWITTER_API_SECRET=
ENV TWITTER_ACCESS_TOKEN=
ENV TWITTER_ACCESS_SECRET=
ENV TWITTER_CLIENT_ID=
ENV TWITTER_CLIENT_SECRET=
ENV TWITTER_BEARER_TOKEN=
Docker で ProtoLinkAI を実行する
-
Docker イメージをビルドします。
docker build -t ProtoLinkai . -
コンテナを実行します。
docker run -i --rm ProtoLinkai
.env + scripts/run_agent.sh で ProtoLink を実行する
環境変数の設定
プロジェクトのルートディレクトリに .env ファイルを作成し、次の環境変数を追加します。
ANTHROPIC_API_KEY=your_anthropic_api_key
ELIZA_PATH=/path/to/eliza
TWITTER_USERNAME=your_twitter_username
TWITTER_EMAIL=your_twitter_email
TWITTER_PASSWORD=your_twitter_password
PERSONALITY_CONFIG=/path/to/personality_config.json
RUN_AGENT=True
# Tweepy (Twitter API v2) Credentials
TWITTER_API_KEY=your_twitter_api_key
TWITTER_API_SECRET=your_twitter_api_secret
TWITTER_ACCESS_TOKEN=your_twitter_access_token
TWITTER_ACCESS_SECRET=your_twitter_access_secret
TWITTER_CLIENT_ID=your_twitter_client_id
TWITTER_CLIENT_SECRET=your_twitter_client_secret
TWITTER_BEARER_TOKEN=your_twitter_bearer_token
エージェントの実行
-
スクリプトを実行可能にします。
chmod +x scripts/run_agent.sh -
エージェントを実行します。
bash scripts/run_agent.sh
概要
Docker を使用するか、.env ファイルで環境変数を設定して scripts/run_agent.sh スクリプトを実行することで、ProtoLink を Twitter と連携して動作するように設定できます。
この柔軟性により、デプロイ環境に最適な方法を選択できます。
ElizaOS との連携 🤖
1. ProtoLink から Eliza エージェントを直接使用する
この方法では、Eliza Framework をバックグラウンドで実行せずに Eliza エージェントを使用できます。Eliza の機能を ProtoLink に直接組み込むことで、セットアップを簡素化できます。
手順:
- Eliza MCP エージェントを使用するよう ProtoLink を設定します:
Python コードで、
MultiToolAgentに Eliza MCP エージェントを追加します:from ProtoLink.core.multi_tool_agent import MultiToolAgent from ProtoLink.tools.eliza_mcp_agent import eliza_mcp_agent multi_tool_agent = MultiToolAgent([ # ... other agents eliza_mcp_agent ])
Advantages:
- Simplified Setup: No need to manage separate background processes.
- Easier Monitoring: All functionalities are encapsulated within MCPAgentAI.
- Highlight Feature: Emphasizes the flexibility of MCPAgentAI in integrating various tools seamlessly.
2. Run Eliza Framework from ProtoLinkai
This method involves running the Eliza Framework as a separate background process alongside ProtoLinkAI.
Steps:
-
Start Eliza Framework:
bash src/ProtoLinkai/tools/eliza/scripts/run.sh -
Monitor Eliza Processes:
bash src/ProtoLinkai/tools/eliza/scripts/monitor.sh -
Configure MCPAgentAI to Use Eliza Agent: In your Python code, add Eliza Agent to the
MultiToolAgent:from ProtoLink.core.multi_tool_agent import MultiToolAgent from ProtoLink.tools.eliza_agent import eliza_agent multi_tool_agent = MultiToolAgent([ # ... other agents eliza_agent ])
チュートリアル:特定のツールの選択
サーバーのエージェント設定を変更するか、server.py ファイルを更新して必要なエージェントのみを読み込むことで、ProtoLink が特定のツールのみを実行するように設定できます。例:
from ProtoLinkai.tools.time_agent import TimeAgent
from ProtoLinkai.tools.weather_agent import WeatherAgent
from ProtoLinkai.core.multi_tool_agent import MultiToolAgent
multi_tool_agent = MultiToolAgent([
TimeAgent(),
WeatherAgent()
])
This setup will only enable **Time** and **Weather** tools.
連携例:Claude Desktop の設定
以下の設定(claude_desktop_config.json)を使用して、ProtoLinkAI を Claude Desktop と連携できます。**なお、**ローカルの ElizaOS リポジトリの指定は任意の引数です:
{
"mcpServers": {
"mcpagentai": {
"command": "docker",
"args": ["run", "-i", "-v", "/path/to/local/eliza:/app/eliza", "--rm", "mcpagentai"]
}
}
}
開発 🛠️
-
このリポジトリをクローンします:
git clone https://github.com/StevenROyola/ProtoLink.git cd mcpagentai -
(任意)仮想環境を作成します:
python3 -m venv .venv source .venv/bin/activate -
依存関係をインストールします:
pip install -e . -
パッケージをビルドします:
python -m build
ライセンス:MIT
お楽しみください! 🎉
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。