智能体demo样例

关习习 ddb8600143 删除部分冗余代码 пре 1 месец
.gitignore 71bc5b3b3c 初次提交 пре 1 месец
LICENSE 7f55995eb5 Initial commit пре 1 месец
README.md 71bc5b3b3c 初次提交 пре 1 месец
key.example.json 71bc5b3b3c 初次提交 пре 1 месец
main.py 71bc5b3b3c 初次提交 пре 1 месец
mcp_config.json 71bc5b3b3c 初次提交 пре 1 месец
mcp_tools.py ddb8600143 删除部分冗余代码 пре 1 месец
requirements.txt 71bc5b3b3c 初次提交 пре 1 месец
test_mcp_services.py 71bc5b3b3c 初次提交 пре 1 месец
tools.py ddb8600143 删除部分冗余代码 пре 1 месец

README.md

Agent Bot MCP智能体助手

一个基于大语言模型和MCP工具调用的智能体助手示例项目。

安装依赖

pip install -r requirements.txt

配置

  1. 复制 key.example.json 文件并重命名为 key.json:

    {
    "openai_url": "你的API地址",
    "api_key": "你的API密钥",
    "model": "使用的模型名称"
    }
    
  2. MCP服务配置在 mcp_config.json 中,默认包含:

    • context7: 上下文相关工具服务
    • fetch: 网络请求服务
    • bingcn: 必应中文搜索服务

运行项目

python main.py

输入"退出"、"quit"或"exit"结束对话。

工具说明

内置工具

  1. duck_search

    • 功能:基于DuckDuckGo的网络搜索
    • 参数:word (搜索关键词)
  2. read_webpage

    • 功能:读取指定URL网页的文本内容
    • 参数:url (网页地址)

MCP工具

项目支持通过MCP协议调用外部服务:

  1. context7

    • 功能:上下文相关工具和服务
    • 可用工具数:2个
  2. fetch

    • 功能:网络请求工具
    • 可用工具数:4个
  3. bingcn

    • 功能:必应中文搜索
    • 可用工具数:2个

测试MCP服务

使用以下命令测试所有MCP服务的可用性:

python test_mcp_services.py

测试结果将保存在 mcp_test_results.json 文件中。

项目结构

.
├── main.py                 # 主程序入口
├── tools.py                # 工具实现
├── mcp_tools.py            # MCP工具集成
├── test_mcp_services.py    # MCP服务测试工具
├── mcp_config.json         # MCP服务配置
├── key.json               # API配置文件
├── key.example.json       # API配置示例文件
└── README.md              # 项目说明文档

使用示例

启动程序后,可以与智能体进行对话,例如:

用户:帮我搜索一下人工智能的发展历史
助手:正在为您搜索人工智能的发展历史...
[执行搜索并返回结果]
用户:帮我读取这个网页的内容:https://example.com
助手:正在读取网页内容...
[读取并返回网页文本内容]

扩展开发

添加新工具

  1. 在 tools.py 中的 get_tool_list 方法中添加工具定义
  2. 在 call_tool 方法中实现工具逻辑

添加MCP服务

  1. 在 mcp_config.json 中添加服务配置
  2. 服务将自动在工具列表中可用

注意事项

  1. 确保网络连接正常
  2. 确保API密钥有效
  3. MCP服务需要相应的npm包支持
  4. 某些网站可能有反爬虫机制,影响网页读取功能

许可证

本项目基于MIT许可证发布,详情请查看 LICENSE 文件。