AI助手模型上下文协议服务器集合

一个包含天气服务和增强代码库语义搜索功能的AI助手模型上下文协议服务器集合,适用于本地开发和云部署。

  • by yinstardev
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 yinstardev/mcp-client-basic

使用说明

MCP服务器集合

用于AI助手的MCP(模型上下文协议)服务器和客户端的集合。

🌟 包含什么

1. 气象MCP服务器 (weather.py)

  • 获取美国各州的天气警报
  • 获取特定坐标的预测
  • 来自国家气象局的实时数据
  • ✅ 生产就绪

2. 增强型代码库MCP服务器 (codebase_server_enhanced.py)

  • 语义搜索 通过你的代码(理解意思!)
  • 矢量嵌入 使用本地模型(不需要API)
  • 读取文件、列出文件、搜索文本
  • 100%离线工作
  • ✅ 已准备好本地使用和模态部署

3. 聊天客户端

  • chat_with_ollama.py -与Ollama+天气工具聊天
  • chat_multi_mcp.py -与Ollama+天气+代码库工具聊天

🚀 快速开始

选项1:交互式设置

cd /Users/prashant.patil/weather-mcp-server
./quickstart.sh

选项2:手动设置

# 1. Activate virtual environment
source venv/bin/activate

# 2. Install enhanced requirements (for semantic search)
pip install -r requirements_enhanced.txt

# 3. Configure your codebase path
# Edit codebase_server_enhanced.py, line 31:
CODEBASE_PATH = "/Users/prashant.patil/mobile-embed"  # ← Your path here

# 4. Test it!
python test_codebase_enhanced.py

# 5. Chat with it!
python chat_multi_mcp.py

📚 你可以问什么

天气问题:

  • “加利福尼亚州的天气警报是什么?”
  • “预测旧金山为37.7749,-122.4194”
  • “得克萨斯州有天气预警吗?”

代码库问题(索引后):

  • “索引代码库”(首次设置)
  • “搜索身份验证逻辑”
  • “查找所有API终结点”
  • “显示配置文件”
  • “数据验证在哪里完成?”
  • “列出所有TypeScript文件”
  • “阅读README.md文件”

🎯 主要特点

语义搜索(魔术!)

传统搜索: grep "login" → 准确找到“登录”

语义搜索: "authentication logic" → 发现:

  • 登录功能
  • 身份验证中间件
  • 令牌验证
  • 会话管理
  • 密码验证
  • OAuth处理程序

它理解你的意思,而不仅仅是你说的话!

工作原理:

1. Indexing (one-time):
   Your Code → Split into chunks → Generate embeddings → Store in ChromaDB
   
2. Searching (real-time):
   Your Question → Generate embedding → Find similar code → Return results

本地和私人:

  • ✅ 不需要API密钥
  • ✅ 无云依赖
  • ✅ 所有处理都在本地进行
  • ✅ 你的代码永远不会离开你的机器

📁 文件概述

weather-mcp-server/
├── weather.py                    # Weather MCP server
├── codebase_server.py            # Simple codebase server (text search)
├── codebase_server_enhanced.py   # 🌟 Enhanced with embeddings
├── chat_with_ollama.py           # Weather + Ollama chat
├── chat_multi_mcp.py             # Weather + Codebase + Ollama
├── test_mcp_client.py            # Test weather server
├── test_codebase_enhanced.py     # Test codebase server
├── weather_api.py                # REST API wrapper (optional)
├── modal_deploy.py               # Modal.com deployment (optional)
├── quickstart.sh                 # Interactive setup script
├── SETUP_GUIDE.md                # Detailed setup instructions
└── requirements_enhanced.txt     # Dependencies for embeddings

🌩️ 部署选项

本地(默认)

  • 立即工作
  • 非常适合开发
  • 无成本

模态(云)

  • 持久嵌入
  • 从任何地方访问
  • 自动缩放
  • 按使用付费

您自己的服务器

  • 完全控制
  • 一次性设置
  • 全天候运行

看 SETUP_GUIDE.md 了解详细的部署说明!


🔧 配置

更改代码库路径

编辑 codebase_server_enhanced.py:

CODEBASE_PATH = "/path/to/your/code"
CODEBASE_NAME = "your-project-name"

更改LLM模型

编辑 chat_multi_mcp.py:

OLLAMA_MODEL = "llama3.2:3b"  # or "mistral", "codellama", etc.

调整嵌入模型

编辑 codebase_server_enhanced.py:

EMBEDDING_MODEL = "all-MiniLM-L6-v2"  # Fast (default)
# EMBEDDING_MODEL = "all-mpnet-base-v2"  # Better quality

📊 演出

小代码库(<1000个文件):

  • 索引:1-2分钟
  • 搜索:<1秒
  • RAM:~500MB

中等代码库(1000-10000个文件):

  • 索引:5-10分钟
  • 搜索:1-2秒
  • RAM:~2GB

大型代码库(>10000个文件):

  • 考虑使用Modal
  • 或递增索引
  • RAM:~4GB+

🐛 故障排除

“导入错误:chromadb”

pip install -r requirements_enhanced.txt

“找不到代码库路径”

更新 CODEBASE_PATH 在 codebase_server_enhanced.py

“搜索未返回任何结果”

  1. 确保你首先运行了“索引代码库”
  2. 检查文件是否已实际编入索引
  3. 尝试:“获取代码库统计数据”进行验证

“Ollama没有回应”

# Start Ollama
ollama serve

# Pull a model
ollama pull llama3.2:3b

🎓 建筑

┌─────────────┐
│    You      │  "Search for auth in my code"
└──────┬──────┘
       │
       ▼
┌─────────────────────┐
│ chat_multi_mcp.py   │  Orchestrator
│  (MCP Client)       │
└──────┬──────┬───────┘
       │      │
       │      └──────────────────┐
       │                         │
       ▼                         ▼
┌─────────────┐         ┌──────────────────┐
│   Ollama    │         │ MCP Servers      │
│ (LLM Model) │         │ ├── Weather      │
└─────────────┘         │ └── Codebase     │
                        └────────┬─────────┘
                                 │
                                 ▼
                        ┌─────────────────┐
                        │ Your Codebase + │
                        │ Vector DB       │
                        └─────────────────┘

🆘 需要帮助?

  1. 检查 SETUP_GUIDE.md 详细说明
  2. 跑 ./quickstart.sh 用于交互式设置
  3. 测试用 test_codebase_enhanced.py
  4. 检查日志(打印到stderr)

🚀 后续步骤

  1. ✅ 天气测试: python chat_with_ollama.py
  2. ✅ 配置代码库路径
  3. ✅ 索引你的代码:运行聊天并说“索引代码库”
  4. ✅ 尝试语义搜索:“查找身份验证逻辑”
  5. 🌟 准备好云访问时部署到Modal

📝 例子

示例1:查找相关代码

You: "Show me how authentication works"