ProtoLinkAI MCP Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports configuration through .env files for setting environment variables

  • Provides containerization support for running the ProtoLinkAI server

  • References GitHub repositories, particularly for ElizaOS integration

ProtoLinkAI🚀

ProtoLink AI是一个标准化的工具包装框架,用于统一实现和管理各种工具。它旨在帮助开发人员快速集成和启动基于工具的用例。

主要特点

  • 🔧标准化包装:为使用 MCP 协议构建工具提供抽象层。
  • 🚀灵活的用例:轻松添加或删除工具以满足您的特定要求。
  • 开箱即用的工具:包括针对常见场景的预构建工具:
    • 🐦 Twitter 管理:自动发推文、回复和管理 Twitter 互动。
    • 💸 加密货币:获取最新的加密货币价格。
    • 🤖 ElizaOS集成:与 ElizaOS 无缝连接和交互,增强自动化。
    • 🕑 时间实用程序
    • ☁️ 天气信息(API)
    • 📚 字典查找
    • 🧮 数学表达式计算器
    • 💵 货币兑换(API)
    • 📈 股票数据:访问实时和历史股票市场信息。
    • [WIP] 📰 新闻:检索最新新闻标题。

技术栈🛠️

  • Python :核心编程语言
  • MCP框架:通信协议
  • Docker :容器化

🤔 什么是 MCP?

模型上下文协议 ( MCP )是跨 AI 模型和系统共享和管理上下文的前沿标准。您可以将其视为 AI 代理用来无缝交互的语言。🧠✨

MCP如此重要的原因如下:

  • 🧩标准化:MCP 定义了如何跨模型共享上下文,从而实现互操作性
  • 可扩展性:它旨在处理高吞吐量的大规模 AI 系统。
  • 🔒安全性:强大的身份验证和细粒度的访问控制。
  • 🌐灵活性:可跨不同的系统和 AI 架构工作。

来源

安装📦

通过 PyPI 安装

pip install ProtoLinkai

用法💻

本地运行

ProtoLinkai --local-timezone "America/New_York"

在 Docker 中运行

  1. 构建 Docker 镜像: docker build -t ProtoLinkai .
  2. 运行容器: docker run -i --rm ProtoLinkai

Twitter 集成🐦

MProtoLinkAI 提供强大的 Twitter 集成,让您可以自动发送推文、回复和管理 Twitter 互动。本节详细介绍了如何通过 Docker 和.env + scripts/run_agent.sh配置和使用 Twitter 集成。

Twitter 集成的 Docker 环境变量

在 Docker 中运行 ProtoLinkAI 时,必须配置用于 Twitter 集成的环境变量。这些变量分为两类:

1.代理节点客户端凭证

代理内的Node.js 客户端使用这些凭证来管理 Twitter 交互。

ENV TWITTER_USERNAME= ENV TWITTER_PASSWORD= ENV TWITTER_EMAIL=

2. Tweepy(Twitter API v2)凭证

Tweepy利用这些凭证与 Twitter 的 API v2 进行交互。

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

  1. 构建 Docker 镜像:
    docker build -t ProtoLinkai .
  2. 运行容器:
    docker run -i --rm ProtoLinkai

设置环境变量

在项目根目录中创建一个.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

运行代理

  1. 使脚本可执行:
    chmod +x scripts/run_agent.sh
  2. 运行代理:
    bash scripts/run_agent.sh

概括

您可以使用 Docker 或在.env文件中设置环境变量并运行scripts/run_agent.sh脚本来配置 ProtoLink 与 Twitter 集成运行。

这种灵活性使您可以选择最适合您的部署环境的方法。


ElizaOS 集成

这种方法允许您在后台运行 Eliza 框架的情况下使用 Eliza Agents。通过将 Eliza 功能直接嵌入到 ProtoLink 中,简化了设置。

步骤:

  1. **配置 ProtoLink 以使用 Eliza MCP Agent:**在您的 Python 代码中,将 Eliza MCP Agent 添加到MultiToolAgent
    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 ])

优点:

  • **简化设置:**无需管理单独的后台进程。
  • **更容易监控:**所有功能都封装在 MCPAgentAI 中。
  • **突出特点:**强调 MCPAgentAI 在无缝集成各种工具方面的灵活性。

2. 从 ProtoLinkai 运行 Eliza 框架

此方法涉及将 Eliza 框架作为与 ProtoLinkAI 一起运行的单独后台进程。

步骤:

  1. 启动 Eliza 框架: bash src/ProtoLinkai/tools/eliza/scripts/run.sh
  2. 监控 Eliza 进程: bash src/ProtoLinkai/tools/eliza/scripts/monitor.sh
  3. **配置 MCPAgentAI 以使用 Eliza Agent:**在您的 Python 代码中,将 Eliza Agent 添加到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 桌面配置

您可以使用以下配置( claude_desktop_config.json )将 ProtoLinkAI 与 Claude Desktop 集成,**请注意,**本地 ElizaOS repo 是可选参数:

{ "mcpServers": { "mcpagentai": { "command": "docker", "args": ["run", "-i", "-v", "/path/to/local/eliza:/app/eliza", "--rm", "mcpagentai"] } } }

开发🛠️

  1. 克隆此存储库:
    git clone https://github.com/StevenROyola/ProtoLink.git cd mcpagentai
  2. (可选)创建虚拟环境:
    python3 -m venv .venv source .venv/bin/activate
  3. 安装依赖项:
    pip install -e .
  4. 构建包:
    python -m build


许可证:MIT
尽情享受吧!🎉

ID: w62mk3d1mn