AI文件分析代理

一个基于MCP协议的AI代理,用于文件内容分析和摘要生成。

  • by Manuele-T
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 manuele-t/local-mcp-file-analysis-server

使用说明

基于MCP的AI文件分析代理

概述

该项目展示了 代理工具范式 使用 **机器对机器通信协议(MCP)**它具有一个轻量级的AI代理,通过与本地工具服务器通信来编排一系列任务。代理的目标是读取本地文本文件,利用 OpenAI GPT-4.1-纳米API 并将结果摘要写回本地摘要文件。

应用程序的架构将操作的“大脑”(代理)与“手”(工具)分开。代理包含高级逻辑和计划,而服务器则公开特定的、自包含的功能。这两个组件之间的通信由MCP处理,抽象出了网络编程的复杂性。

该项目为构建更复杂的人工智能系统提供了基础蓝图,在这些系统中,自主代理可以与各种数字和现实世界的工具进行交互。

特性

  • AI驱动的文本摘要: 集成OpenAI API以提供上下文感知文本摘要。
  • 本地文件系统交互: 代理可以通过服务器提供的工具对本地文件系统进行读写操作。
  • 解耦代理工具架构: 代理逻辑之间的明确分离(agent.py)以及服务器的性能(server.py).
  • 机器对机器通信: 利用 主控程序 用于代理和工具服务器之间的结构化通信。
  • 外部API摘要: 与OpenAI API交互的复杂性对代理是隐藏的,暴露为一个简单的 summarize_content 工具。
  • 异步操作: 基于Python构建 asyncio 用于高性能执行。

技术栈和架构

  • 核心协议: MCP(机器对机器通信协议)

    • 服务器库: fastmcp (从 mcp 包装)
    • 客户库: mcp.client 模块(来自 mcp 包装)
    • 传输层: SSE(服务器发送事件)
  • 代理商(agent.py):编排者

    • 负责工具调用的高级计划和排序。
    • 使用连接到工具服务器 ClientSession 和 sse_client.
    • 在工具之间链接输入和输出。
  • 工具服务器(server.py):能力提供者

    • 使用将功能作为网络可访问的工具公开 @mcp.tool 装饰师。
    • 处理文件I/O操作(read_file, write_summary).
    • 管理与外部OpenAI API的集成。
  • AI核心与NLP: OpenAI API

    • 型号: gpt-4.1-nano (或任何其他聊天完成模式)
    • 任务: 自然语言概述
  • 语言和库:

    • 语言: python
    • 关键库: mcp, openai, python-dotenv, asyncio

如何运行此项目

1.先决条件

  • Python 3.8+
  • OpenAI API密钥(将其添加到.env文件中)
  • 项目文件夹中的input.txt文件

2.设置

克隆存储库:

git clone <your-repository-url>
cd <your-repository-folder>

创建并激活虚拟环境:

  • 在macOS/Linux上:
python3 -m venv venv
source venv/bin/activate
  • 在Windows上:
python -m venv venv
.\venv\Scripts\activate

安装所需的软件包:

  • 激活虚拟环境后,从requirements.txt文件安装所有依赖项。
pip install -r requirements.txt