mcp-server

mcp-server

用于实验 LLM 工具的 MCP 服务器 (Yòng yú shíyàn LLM gōngjù de MCP fúwùqì) Alternatively, you could also say: 用于 LLM 工具实验的 MCP 服务器 (Yòng yú LLM gōngjù shíyàn de MCP fúwùqì) Both translations are accurate and convey the same meaning. The first one is slightly more verbose, while the second is more concise.

planetf1

研究与数据
访问服务器

README

mcp-server

用于实验 LLM 工具的 MCP 服务器

创建此项目的目的是为了理解 MCP 服务器、协议以及在 LLM 中的用法。不建议重复使用!

依赖

  • 安装 'uv'
  • 运行 uv sync

单元测试

  • uv run pytest

启动服务器

uv run mcp dev server.py

(.venv) ➜  mcp-server git:(main) ✗ uv run mcp dev server.py
Starting MCP inspector...
Proxy server listening on port 3000

🔍 MCP Inspector is up and running at http://localhost:5173 🚀

查看工具

MCP Inspector 图像

可用工具

工具 描述 后端服务 必需配置
add 简单的加法工具 本地计算
calculator 计算数学表达式 本地计算
calculate_bmi 计算身体质量指数 本地计算
echo 返回未更改的输入文本 本地计算
long_task 处理具有进度跟踪的文件 本地文件系统
duckduckgo_search 使用 DuckDuckGo 进行网络搜索 DuckDuckGo HTML 端点
wikipedia_search 搜索维基百科文章 维基百科 API
fetch_weather 获取当前位置的天气 OpenWeatherMap API OPENWEATHER_API_KEY
openmeteo_forecast 获取详细的天气预报 Open-Meteo API
news_search 搜索最近的新闻文章 NewsAPI NEWSAPI_KEY
tavily_search AI 驱动的网络搜索 Tavily API TAVILY_API_KEY
arxiv_search 搜索学术论文 arXiv API
github_get_file 从 GitHub 检索文件内容 GitHub API GITHUB_TOKEN
github_list_issues 列出存储库中的 issue GitHub API GITHUB_TOKEN
github_create_issue 在存储库中创建一个新的 issue GitHub API GITHUB_TOKEN
github_list_pull_requests 列出存储库中的 PR GitHub API GITHUB_TOKEN
github_search_code 在 GitHub 上搜索代码 GitHub API GITHUB_TOKEN
github_user_activity 获取用户的 GitHub 活动摘要 GitHub API GITHUB_TOKEN
create_thumbnail 创建图像缩略图 本地图像处理

环境变量配置

要使用需要 API 密钥的工具,请将以下内容添加到您的环境中:

# 天气服务
export OPENWEATHER_API_KEY="your_openweather_api_key"

# 新闻服务
export NEWSAPI_KEY="your_newsapi_key"

# 搜索服务
export TAVILY_API_KEY="your_tavily_api_key"

# GitHub 工具
export GITHUB_TOKEN="your_github_personal_access_token"

示例聊天应用程序

该存储库包含一个示例聊天应用程序,演示了如何将 MCP 工具与 Ollama LLM 服务一起使用。

前提条件

  • 从 https://ollama.ai/ 安装 Ollama
  • 拉取 granite 模型:ollama pull granite3.2:latest(或使用任何其他模型)
  • 安装其他依赖项:uv pip install litellm colorama python-dotenv httpx

配置

在项目根目录中创建一个 .env 文件,其中包含您的配置:

# Ollama 配置
OLLAMA_SERVER=http://localhost:11434
OLLAMA_MODEL=granite3.2:latest  # 更改为您已拉取的任何模型

# MCP 服务器端点(默认为 localhost:3000)
MCP_ENDPOINT=localhost:3000

# 日志记录配置
LOG_FILE=chat_interactions.log

# 各种服务的 API 密钥
OPENWEATHER_API_KEY=your_api_key_here
NEWSAPI_KEY=your_api_key_here
TAVILY_API_KEY=your_api_key_here
GITHUB_TOKEN=your_token_here

启动聊天应用程序

首先,在一个终端中启动 MCP 服务器:

uv run mcp dev server.py

然后,在另一个终端中运行聊天应用程序:

python run_chat.py

与 LLM 交互,它现在可以访问 MCP 服务器提供的所有工具。

特点

  • 聊天应用程序会在适当的时候自动使用 MCP 工具
  • 所有交互都记录到 LOG_FILE 中指定的文件
  • 当 LLM 认为需要它们来回答问题时,将调用工具
  • 工具参数会根据 LLM 对查询的理解自动填充

注意事项

  • 它尚不适用于默认模型......正在开发中!

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python