E2B MCP Python演示

一个使用E2B与GitHub和Notion MCP服务器的Python演示,展示了如何在沙盒环境中自动化跨平台任务。

  • by shelajev
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 shelajev/e2b-mcp-py

使用说明

E2B MCP Python 示例(或演示)

一个使用Python的演示 E2B 与GitHub和Notion的MCP(模型上下文协议)服务器类似 TypeScript 示例。

概述

这个演示展示了如何:

  • 创建一个支持MCP服务器的E2B沙盒
  • 配置GitHub和Notion MCP服务器
  • 在沙盒中使用 Claude CLI 与两个服务进行交互
  • 在GitHub和Notion之间自动化任务

先决条件

设置

  1. 安装uv 按照说明操作 在这里 安装紫外线灯。

  2. 克隆仓库

git clone https://github.com/e2b-dev/e2b-mcp-py
cd e2b-mcp-py
  1. 安装依赖项
uv sync
  1. 设置环境变量 你可以创建一个 .env 在项目的根目录下放置文件,或者在你的shell中设置环境变量。

以下密钥是必需的(当然,除了……之外) E2B_API_KEY)

anthropic_api_key = os.environ["ANTHROPIC_API_KEY"]
notion_api_key = os.environ["NOTION_TOKEN"]
github_token = os.environ["GITHUB_TOKEN"]

如果你没有Notion账户,你可以将Notion相关的代码注释掉 main.py 并相应地更新提示。

在 main.py,注释掉以下行:

# notion = Notion(internalIntegrationToken=notion_api_key)

并且移除 notion=notion 来自……的论据 McpServer 构造函数:

# mcp_servers = McpServer(notion=notion, githubOfficial=github)
mcp_servers = McpServer(githubOfficial=github)

并且改变 task 将变量更改为不涉及Notion的内容,例如:

task = "List my top 3 GitHub repositories by stars"

使用方法

运行演示程序:

uv run main.py

它的功能/作用

演示将:

  1. 创建一个配置了环境变量的E2B沙盒
  2. 在沙箱中安装Claude CLI
  3. 配置GitHub和Notion MCP服务器
  4. 执行一个示例任务,该任务:
    • 列出你的GitHub仓库
    • 创建一个Notion页面,总结你按星标数排序的前3个仓库

定制化

你可以在(某处)修改任务 main.py (第76-80行)执行不同的操作:

task = """
Your custom task here that uses GitHub and Notion MCP servers
"""