返回市场
示例MCP服务器

示例MCP服务器

作者:antonioscapellato2 星标更新:2025-05-16

项目介绍

MCP服务器示例

此仓库包含一个用于教育目的的模型上下文协议(MCP)服务器实现。该代码演示了如何构建一个可以与各种LLM客户端集成的功能性MCP服务器。

MCP架构图

MCP服务器示例

此仓库包含一个用于教育目的的模型上下文协议(MCP)服务器实现。该代码演示了如何构建一个可以与各种LLM客户端集成的功能性MCP服务器。

参考资料:

什么是MCP?

MCP(模型上下文协议)是一种开放协议,标准化了应用程序如何向LLMs提供上下文。可以将MCP想象成AI应用中的USB-C端口——它提供了一种标准化的方式,将AI模型连接到不同的数据源和工具上。

主要优势

  • 越来越多的预构建集成,您的LLM可以直接接入
  • 在不同LLM提供商和供应商之间切换的灵活性
  • 在基础设施内保护数据的最佳实践

架构概述

MCP遵循客户端-服务器架构,主机应用程序可以连接到多个服务器:

  • MCP主机:如Claude Desktop、IDE或想要通过MCP访问数据的AI工具
  • MCP客户端:维护与服务器一对一连接的协议客户端
  • MCP服务器:轻量级程序,通过标准化的模型上下文协议暴露特定功能
  • 数据源:本地(文件、数据库)和远程服务(API),MCP服务器可以访问这些数据源

核心MCP概念

MCP服务器可以提供三种主要类型的能力:

  • 资源:类似文件的数据,可以由客户端读取(例如API响应或文件内容)
  • 工具:可以被LLM调用的函数(需用户批准)
  • 提示:预先编写的模板,帮助用户完成特定任务

系统要求

  • Python 3.10或更高版本
  • MCP SDK 1.2.0或更高版本
  • uv包管理器

安装

将MCP添加到您的Python项目中 我们建议使用uv来管理您的Python项目。

如果您还没有创建过由uv管理的项目,请创建一个:

uv init mcp-server-sample
cd mcp-server-sample

然后将MCP添加到您的项目依赖项中:

uv add "mcp[cli]"

或者,对于使用pip管理依赖项的项目:

pip install "mcp[cli]"

运行独立的MCP开发工具 要使用uv运行mcp命令:

uv run mcp

快速开始

让我们创建一个简单的MCP服务器,暴露一个计算器工具和一些数据:

# server.py
from mcp.server.fastmcp import FastMCP

# 创建一个MCP服务器
mcp = FastMCP("Demo")

# 添加一个加法工具
@mcp.tool()
def add(a: int, b: int) -> int:
    """加两个数"""
    return a + b

# 添加一个动态问候资源
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
    """获取个性化的问候"""
    return f"Hello, {name}!"

您可以在Claude Desktop中安装此服务器,并通过运行以下命令立即与其交互:

mcp install server.py

或者,您可以使用MCP Inspector进行测试:

mcp dev server.py

Antonio Scapellato 制作,充满爱心

资源:

许可证

本项目采用MIT许可证。详情见LICENSE文件。