使用说明
入门指南
先决条件
- Python 3.13
设置
- 克隆项目
- 创建虚拟环境并安装依赖项:
python3.13 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
运行示例
确保虚拟环境已激活并从项目根目录运行:
python -m calculator_mcp.calculator_mcp2
🤖 带中间件和工具过滤的MCP代理
该项目通过实际的代理示例演示了LangChain中的各种用例和功能。
📌 项目描述
该项目演示了如何使用MCP(模型上下文协议)构建AI代理,其中代理可以与通过MCP服务器公开的外部工具进行交互。
该系统通过以下方式解决了一个实际问题:
- 自动化文本处理
- 进行数学计算
- 通过MCP实现结构化工具的使用
🧱 特性
✅ MCP 服务器
MCP服务器提供5个工具:
count_wordscount_charactersto_uppercaseadd_numbersmultiply_numbers
所有工具使用:
AnnotatedField
这确保了清晰的类型定义和结构化的输入处理。
✅ 代理
代理人:
- 使用LangChain构建
- 连接到MCP服务器
- 与工具动态交互
✅ 工具筛选
并非所有工具都暴露在试剂中。
例子:
allowed_tool_names = [
"count_words",
"add_numbers",
"to_uppercase"
]
这确保了更好的控制、安全性和相关性。
✅ 中间件(包装器)
中间件的实现是为了:
1.修改输出
10 → "Result is: 10"
hello → "Processed text: HELLO"
2.处理无效输入
代理人可以发送:
"7+3"
中间件将其转换为:
{ "a": 7, "b": 3 }
这确保了与MCP工具模式的兼容性。
🔄 流程图
flowchart TD
A[User] --> B[Agent - LangChain]
B --> C[Tool Filtering]
C --> D[Middleware Wrapper]
D --> E[MCP Client]
E --> F[MCP Server]
F --> G[Tool Execution]
G --> H[Middleware Output Processing]
H --> B
B --> I[Response to User]
入门指南
先决条件
- Python 3.13
- Ollama服务器,可访问Llama型号
⚙️ 安装设置
1.克隆repo项目
克隆存储库
git clone <your-repo-url>
cd nackademin-langchain-demo2
2. Create a virtual environment and install dependencies:
```bash
python3.13 -m venv .venv
source .venv/Scripts/activate # Windows
pip install -r requirements.txt
- 创建一个
.env使用您的配置文件:
OLLAMA_BASE_URL=http://nackademin.icedc.se
OLLAMA_BEARER_TOKEN=your-bearer-token-here
▶️运行项目
确保虚拟环境已激活并从项目根目录运行:
source .venv/bin/activate
启动MCP服务器
python -m calculator_mcp.calculator_mcp2
启动代理
python -m examples.tool_lecture._mcp.agent3
💬 示例用法
输入:
What is 7 + 3?
输出:
Result is: 10
输入:
Convert this to uppercase: hello world
输出:
Processed text: HELLO WORLD
🧠 反思
该项目展示了:
- 人工智能代理如何通过MCP与外部系统集成
- 中间件如何控制输入和输出
- 工具过滤如何提高可靠性和安全性
🚀 未来改进
- 支持更多的数学运算
- 多服务器MCP设置
- 更高级的自然语言解析
- 用于交互的用户界面
👩💻 作者
学生项目-人工智能和MLOps