Token导航 LogoToken导航TokenDH.com
Quick MCP Example logo
搜索检索stdio官方级别未说明来源级核验

Quick MCP Example

MCP Server

Short and sweet example MCP server / client implementation for Tools, Resources and Prompts.

工具数

0

提示词数

0

GitHub Stars

60

资源数

0
LLM交互Python搜索

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ALucek

提供方

ALucek

最后核验

2026/5/18 04:05

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python client.py mcp_server.py

详细介绍

规范LLM与MCP服务器的交互

模型上下文协议(MCP)是 一种开放协议,规范了应用程序如何向LLM提供上下文换句话说,它为基于LLM的应用程序提供了一个统一的框架,用于连接到数据源、获取上下文、使用工具和执行标准提示。

MCP生态系统概述了三个具体组成部分:

  • MCP服务器 句柄:工具可用性(公开可用的功能)、工具执行(在请求时运行这些功能)、静态内容作为资源(提供可引用的数据)、预设提示(常见任务的标准化模板)
  • 客户 管理:与服务器的连接、LLM集成、组件之间的消息传递
  • 主机 提供:前端接口、向用户展示MCP功能、整个生态系统的集成点

这种架构创建了一个模块化系统,其中不同的组件可以独立开发,同时保持互操作性。这让用户可以为不同的LLM相关功能制作MCP服务器,然后在各种支持的应用程序中即插即用。通常用于集成服务API和工具,或连接到您自己机器上的本地数据源。

MCP服务器组件

MCP服务器通过定义良好的接口公开标准化功能,构成了协议的基础。然后,主机和客户端可以使用协议标准连接到这些服务器,但这些功能如何呈现给用户仍然是灵活的,对开发人员开放的。这意味着实际的实现和用户体验完全取决于开发人员——无论是通过命令行界面、图形应用程序,还是嵌入到更大的系统中。

在本指南中,我们将重点构建一个具有核心功能的示例MCP服务器,以及一个简单的客户端实现来演示交互模式。首先,让我们来看看MCP服务器的主要组件:

工具

工具是LLM可以调用以执行操作或检索信息的函数。每个工具都定义为:

{
  name: string;          // Unique identifier for the tool
  description?: string;  // Human-readable description
  inputSchema: {         // JSON Schema for the tool's parameters
    type: "object",
    properties: { ... }  // Tool-specific parameters
  }
}

工具允许LLM与外部系统交互、执行代码、查询数据库或执行计算。它们代表具有效果或计算新信息的动作。

资源

资源表示客户端应用程序可以访问的数据源。它们由URI标识,可以包括:

{
  uri: string;           // Unique identifier for the resource
  name: string;          // Human-readable name
  description?: string;  // Optional description
  mimeType?: string;     // Optional MIME type
}

资源可以是静态的(如配置文件)或动态的(如数据库记录或API响应)。它们为LLM提供上下文,而不需要函数调用。

鼓励

提示是定义特定交互模式的可重用模板。它们允许服务器公开标准化的对话流:

{
  name: string;              // Unique identifier for the prompt
  description?: string;      // Human-readable description
  arguments?: [              // Optional list of arguments
    {
      name: string;          // Argument identifier
      description?: string;  // Argument description
      required?: boolean;    // Whether argument is required
    }
  ]
}

提示有助于为常见任务创建一致的、专门构建的交互,允许用户通过斜线命令等UI元素调用它们。

*注意:虽然工具是专门为LLM交互设计的(类似于函数调用),但提示和资源在MCP生态系统中有不同的用途。提示通常是用户控制的模板,可以通过斜线命令等UI元素直接调用,资源是应用程序控制的数据源,可以在包含在LLM上下文中之前呈现给用户选择。*

更多详细信息和附加功能可以在 MCP官方文件

______________________________________________________________________

树立我们的榜样

我们的MCP服务器将突出显示工具、资源和提示。核心概念是创建一个简单的知识库聊天机器人流,该流将具有以下功能:

  1. 让LLM使用工具查询向量数据库以获取RAG响应
  2. 让用户选择现有资源来提供上下文
  3. 让用户执行标准提示以执行更复杂的分析工作流

上图是在中实现的 mcp_server.py 在中使用相应的简单CLI客户端 客户端.py.

作为有用的资源,请查看 MCP服务器列表 用于官方集成和社区制造的服务器。

______________________________________________________________________

设置和安装

  1. 克隆Repo
git clone https://github.com/ALucek/quick-mcp-example.git
cd quick-mcp-example
  1. 创建ChromaDB数据库

按照中的说明进行操作 MCP_setup.ipynb 创建矢量数据库并将pdf嵌入其中。

  1. 创建虚拟环境并安装软件包
# Using uv (recommended)
uv venv
source .venv/bin/activate  # On macOS/Linux
# OR
.venv\Scripts\activate     # On Windows

# Install dependencies
uv sync
  1. 运行客户端和服务器
python client.py mcp_server.py

目录标签

目录标签

LLM交互Python搜索research-and-datamcpmodel-context-protocolmodel-context-protocol-servers本地部署开放协议数据连接工具执行标准化提示

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP