项目简介
Sentinel Core Agent 包含一个 MCP 服务器和一个 MCP 客户端。服务器实现了多种工具(Tools),客户端则作为一个 LLM 应用前端,通过 MCP 协议调用服务器提供的工具,增强 LLM 的功能。这个项目展示了如何构建一个功能丰富的 LLM Agent 后端。
主要功能点
该 MCP 服务器通过提供的工具,使连接的 LLM 客户端能够执行以下任务:
- 文件/文件夹检查: 检查文件或文件夹是否存在于文件系统中。
- 获取当前时间: 获取服务器的当前日期和时间。
- 网络搜索/研究: 利用外部服务(如 Brave Search)进行网页搜索和深度信息研究。
- 文件读写: 读取文件内容或向文件写入内容(支持文本和二进制)。
- 网页抓取: 抓取指定网页的 Markdown 内容。
- 向量索引管理与搜索: 获取当前已有的向量嵌入索引列表,并对特定索引进行基于向量的搜索。
安装步骤
- 克隆项目仓库:
git clone https://github.com/bhuvanmdev/Sentinel-Core-Agent.git cd Sentinel-Core-Agent - 安装 Python 依赖:
pip install -r requirements.txt # 或者手动安装依赖:fastmcp, crawl4ai, langchain, langchain-openai, langchain-google-genai, python-dotenv, httpx, googlesearch-python, chromadb - 设置环境变量:
创建 '.env' 文件在项目根目录,并添加你的 LLM API 密钥,例如:
GPT="你的Gemini或OpenAI API Key" GKEY="如果使用Google Gemini,也可以在这里设置" OPENAI_API_VERSION="如果使用Azure OpenAI,设置API版本"
服务器配置
MCP 客户端需要一个配置文件来知道如何启动和连接到 MCP 服务器。本项目附带的客户端 ('client.py') 读取 'servers_config.json' 文件。你需要根据实际环境配置该文件,示例如下:
{ "mcpServers": { "PythonToolsServer": { "command": "python", "args": ["path/to/your/Sentinel-Core-Agent/server.py"], "env": {} } } }
- '"PythonToolsServer"': 服务器的自定义名称。
- '"command"': 启动服务器进程的命令,例如 '"python"'。
- '"args"': 传递给命令的参数列表,通常是服务器脚本的路径。请将 '"path/to/your/Sentinel-Core-Agent/server.py"' 替换为你本地 'server.py' 文件的实际路径。
- '"env"': (可选) 为服务器进程设置额外的环境变量。
基本使用方法
- 确保服务器配置文件 'servers_config.json' 正确指向 'server.py' 脚本。
- 在终端中运行客户端脚本:
python client.py - 客户端将启动配置的 MCP 服务器,并连接到 LLM。
- 在客户端的命令行界面中输入你的请求,LLM 会根据你的请求和服务器提供的工具来生成回复并执行相应的操作。
信息
分类
AI与计算