离线MCP代理演示

一个展示离线MCP(模型上下文协议)代理的项目,能够从模拟数据库中回答一般查询并提供基于工具的响应(如天气信息),无需使用API密钥或互联网服务。

  • by Swathi63446
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Swathi63446/Simple_MCP_Demonstration_Offline

使用说明

简单的MCP演示(离线)

描述: 这个项目展示了一个离线的MCP(模型上下文协议)代理,它能够从模拟数据库中回答一般性查询,并提供基于工具的响应,如天气信息——而无需使用任何API密钥或互联网服务。其目标是理解和展示MCP在人工智能系统中的工作流程及其重要性。

特点/功能

通用查询:使用mock_database.json回答问题

工具查询(天气):通过本地MCP服务器返回模拟天气信息

完全离线、模块化且自包含

使用Python + FastAPI实现客户端-服务器交互

文件结构 mcps_project/(可译为:“MCPS项目/”或根据具体上下文,可能指“多项目协作系统/”等,但“mcps”具体含义需依据上下文确定) │ ├─ agent_host.py # 处理用户输入并管理查询 ├─ mcp_client.py # 向MCP服务器发送请求 ├─ mcp_server.py # 提供工具响应的FastAPI服务器 ├─ mock_database.json # 通用知识的离线数据库

它是如何工作的

用户在 agent_host.py 中输入查询

代理检测到查询类型:

通用查询 → 搜索 mock_database.json

工具查询 → 通过 MCPClient 向 MCP 服务器发送请求

MCP服务器处理请求并返回响应

代理将结果打印返回给用户

设置并运行

安装依赖项:

使用 pip 安装 fastapi、uvicorn 和 requests

启动MCP服务器:

使用 Python 模块运行 uvicorn,指定模块为 mcp_server,应用名为 app,并启用自动重载功能:python -m uvicorn mcp_server:app --reload

在新的终端中,启动代理:

运行 python agent_host.py

尝试示例查询:

班加罗尔的天气 什么是MCP 搜索人工智能(AI) 告诉我关于Python的事

退出:

退出

亮点

基于MCP的智能体架构的完全离线演示

展示了人工智能代理如何在本地与工具和数据库进行交互

易于通过添加新工具或数据库条目进行扩展