IgnacioFucksmann
服务介绍
MCP 服务器示例:使用 Streamlit 和 Ollama
该项目是一个用 Python 编写的 MCP(Model Context Protocol)服务器演示,集成了一个使用 Streamlit 构建的 Web 聊天界面和一个使用 Ollama 的本地语言模型。它允许通过聊天界面或外部 MCP 工具对 PostgreSQL 数据库中的用户进行管理(添加、删除、修改、查询)。
特性
- Web 聊天 使用 Streamlit。
- 本地 LLM 使用 Ollama(Llama 3 或其他兼容模型)。
- MCP 服务器 提供用户 CRUD 操作工具。
- PostgreSQL 数据库 用于存储用户信息。
- 灵活集成:你可以仅使用聊天功能、仅使用 MCP 服务器,或者两者都使用。
要求
- Python 3.9+
- 正在运行且可访问的 PostgreSQL
- Ollama 安装并运行(用于本地 LLM)
- 虚拟环境(推荐)
requirements.txt文件中的依赖项
安装
-
克隆仓库:
sh
git clone https://github.com/tu-usuario/mcp-server-demo.git
cd mcp-server-demo -
创建并激活虚拟环境:
sh
python -m venv .venv
source .venv/bin/activate # 在 Linux/Mac 上
.venv\Scripts\activate # 在 Windows 上 -
安装依赖项:
sh
pip install -r requirements.txt -
配置你的 PostgreSQL 数据库,并在
server.py中调整连接信息。 -
(可选)如果你使用 API 密钥,请创建一个
.env文件。
使用
1. 启动 Ollama 和 LLM 模型
sh
ollama run llama3
2. 启动 Streamlit 聊天
sh
streamlit run streamlit.py
在浏览器中打开 http://localhost:8501。
3. (可选)启动 MCP 服务器
sh
mcp run server.py
或
sh
uv run --with mcp mcp run server.py
聊天功能
- 添加用户:
输入:agregar usuario Juan juan@mail.com clave123 - 删除用户:
输入:eliminar usuario juan@mail.com - 修改用户:
输入:modificar usuario juan@mail.com nombre=Juan Perez contraseña=nuevaClave - 查询用户:
输入:consultar usuarios或consultar usuario juan@mail.com - 自由对话:
如果消息不是操作指令,则由本地 LLM 回应。
致谢
欢迎贡献和建议!