模型上下文协议演示

一个展示模型上下文协议(MCP)与微软代理框架集成的演示项目,通过协作AI代理重现中土世界。

  • by EfeSenerr
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 EfeSenerr/demo_mcp_learn

使用说明

LOTR MCP演示

展示项目 模型上下文协议(MCP) 与 Microsoft代理框架该项目以多智能体系统为特色,通过协作的人工智能代理将中土世界带入生活。

特性

  • MCP服务器:自定义MCP服务器(lotr_mcp_server.py)从以下网站获取真实的LOTR报价 一个API
  • 两种独特的场景:

🎭 诗歌协作(默认)

  • 诗人代理人:根据LOTR语录创作四行诗
  • 批评代理:评论诗歌的准确性、语气和对中土世界传说的坚持
  • 迭代精化:代理人以乒乓球模式合作,完善诗歌,直到获得批准

🕵️ 神秘解决(新!)

  • 索伦(神秘织布工):黑魔王用隐藏的线索制造神秘的谜团
  • 灰袍甘道夫(侦探):分析线索和构建理论的聪明巫师
  • 比尔博·巴金斯(调查员):运用霍比特人的感觉,注意被忽视的细节
  • 协同调查甘道夫和比尔博联手解开索伦的谜团

先决条件

  • Python 3.8+
  • GitHub个人访问令牌(适用于API GitHub模型)
  • The One API密钥(来自 the-one-api.dev)

设置

  1. 安装依赖项:

    pip install -e .
    
  2. 创建一个 .env 使用API密钥文件:

    GITHUB_TOKEN=your_github_token
    ONE_API_KEY=your_one_api_key
    
  3. 运行演示:

    诗歌场景(默认):

    python main.py
    # OR explicitly
    SCENARIO=poetry python main.py
    

    神秘场景:

    SCENARIO=mystery python main.py
    

    或者在PowerShell中:

    $env:SCENARIO="mystery"; python main.py
    

配置

您可以使用环境变量自定义行为:

  • SCENARIO:从中选择 poetry 或 mystery (默认值: mystery)
  • PING_PONG_LIMIT:诗歌精炼的最大迭代次数(默认值: 5)
  • MYSTERY_MAX_TURNS:Max转向神秘调查(默认值: 8)
  • GITHUB_TOKEN:您的GitHub个人访问令牌
  • ONE_API_KEY:您的The One API密钥

运作原理

诗歌场景流程

  1. Poet代理调用MCP工具获取随机LOTR报价
  2. 它转述了这句话,并创作了一首四行诗
  3. 评论家代理人审查这首诗的知识准确性和质量
  4. 如果需要修改,诗人会根据反馈完善诗歌
  5. 循环一直持续到评论家批准或达到迭代极限

神秘场景流程

  1. 索龙 使用MCP工具获取LOTR报价以获取灵感
  2. 索龙 在中土世界,用3-5条隐藏的线索制作了一个黑暗的谜团
  3. 甘道夫 接受神秘,开始分析,形成理论
  4. 甘道夫 和 比尔博 轮流调查:
    • 甘道夫运用巫师智慧和知识
    • 比尔博注意到了实际细节,并对假设提出了质疑
  5. 当甘道夫提出解决方案时,比尔博会进行验证
  6. 如果双方都同意,谜团就解决了!否则,调查将继续

项目结构

  • lotr_mcp_server.py -获取LOTR报价的MCP服务器实现
  • main.py -两种场景下的多代理编排
  • pyproject.toml -项目依赖关系和元数据
  • .github/agents/ -代理人个性定义:
    • Sauron.md -神秘织工
    • Gandalf.md -聪明的侦探
    • BilboBot.md -观察性研究者

代理人个性

神秘织工索伦🌋

  • 温度:0.9(极具创意)
  • 角色:用隐藏的线索创造神秘的谜团
  • 风格:黑暗、不祥、欺骗大师

甘道夫🧙

  • 温度0.7(平衡推理)
  • 角色:首席侦探和知识专家
  • 风格:明智、有条理、分享推理过程

比尔博·巴金斯🍃

  • 温度:0.6(接地和实用)
  • 角色:具有霍比特人意识的观察研究者
  • 风格:友好,注重细节,借鉴冒险经验

示例输出

神秘场景:

🌋 Sauron weaves a dark mystery...
"In the halls of Imladris, three artifacts have vanished..."

🧙 Gandalf analyzes the clues...
THEORY: The disappearance aligns with the lunar cycle...

🍃 Bilbo observes...
OBSERVATION: But wait, the smallest artifact wouldn't fit through...

✅ Mystery solved!