ai
  • index
  • 1.首页
  • 2.介绍
  • 3.架构概览
  • 4.服务器概念
  • 5.客户端概念
  • 6.版本控制
  • 7.连接到远程MCP服务器
  • 8.连接到本地MCP服务器
  • json_rpc
  • 9.构建一个MCP服务器
  • 10.检查员
  • 11.构建一个MCP客户端
  • 14.架构
  • 15.基础协议概述
  • 16.生命周期
  • 17.传输
  • 18.授权
  • 19.安全最佳实践
  • 20.取消
  • 21.Ping
  • 22.进展
  • 23.Roots
  • 24.采样
  • 25.启发
  • 26.服务器特性
  • 27.提示词
  • 28.资源
  • 29.工具
  • 30.完成
  • 31.日志记录
  • 32.分页
  • 33.架构参考
  • URI模板
  • 12.实现
  • http.server
  • 动态客户端注册协议
  • 受保护资源元数据
  • 授权服务器元数据
  • JWKS
  • PKCE
  • PyJWT
  • secrets
  • watchfiles
  • 实现authorization
  • 实现cancel
  • 实现completion
  • 实现logging
  • 实现pagination
  • 实现process
  • 实现transport
  • psutil
  • pytz
  • zoneinfo
  • contextlib
  • Starlette
  • mcp.1.starter
  • mcp.2.Resource
  • mcp.3.structured_output
  • mcp.4.prompts
  • mcp.5.context
  • mcp.6.streamable
  • mcp.7.lowlevel
  • mcp.8.Completion
  • mcp.9.Elicitation
  • mcp.10.oauth
  • mcp.11.integration
  • mcp.12.best
  • mysql-mcp
  • databases
  • uvicorn
  • asynccontextmanager
  • AsyncExitStack
  • streamable
  • aiohttp
  • publish
  • email
  • schedule
  • twine
  • 1.教学文档总览
  • 2.教师使用指南
  • 3.教学系统快速参考
  • 4.新生入门指南
  • 5.学生使用指南
  • 1.MCP 服务器特性概述
  • 2.什么是 MCP 服务器?
  • 3.核心构建模块
    • 3.1 提示词 (Prompts)
    • 3.2 资源 (Resources)
    • 3.3 工具 (Tools)
  • 4.控制层次结构
    • 4.1 控制层次说明
  • 5.为什么这样设计?
    • 5.1 安全性考虑
    • 5.2 易用性提升
    • 5.3 灵活性平衡
  • 6.实际应用场景
    • 6.1 开发环境集成
    • 6.2 文档助手
    • 6.3 项目管理
  • 7.学习建议

1.MCP 服务器特性概述 #

协议修订版本: 2025-06-18

2.什么是 MCP 服务器? #

MCP(Model Context Protocol)服务器是连接语言模型与外部世界的桥梁。它为语言模型提供了丰富的上下文信息,让AI能够更好地理解用户需求并执行相应操作。

3.核心构建模块 #

MCP 服务器通过三个基本构建模块为语言模型提供上下文:

3.1 提示词 (Prompts) #

定义: 预定义的模板或指导语言模型交互的指令

作用: 帮助用户快速启动特定的交互模式,提供标准化的操作入口

示例:

  • 斜杠命令(如 /help、/search)
  • 菜单选项
  • 快捷操作按钮

3.2 资源 (Resources) #

定义: 为模型提供额外上下文的结构化数据或内容

作用: 让AI了解当前环境的信息,做出更准确的判断

示例:

  • 文件内容
  • Git 历史记录
  • 数据库信息
  • 用户偏好设置

3.3 工具 (Tools) #

定义: 允许模型执行操作或检索信息的可执行函数

作用: 让AI能够主动执行操作,而不仅仅是回答问题

示例:

  • API POST 请求
  • 文件写入操作
  • 数据库查询
  • 系统命令执行

4.控制层次结构 #

每个基本元素都有不同的控制级别,形成了清晰的分层架构:

元素类型 控制方 描述 典型示例
提示词 用户可控 用户选择触发的交互式模板 斜杠命令、菜单选项
资源 应用控制 客户端附加并管理的上下文数据 文件内容、Git历史记录
工具 模型控制 暴露给LLM以执行操作的函数 API POST请求、文件写入

4.1 控制层次说明 #

  1. 用户层控制 - 提示词

    • 用户主动选择使用
    • 提供标准化的交互入口
    • 降低使用门槛
  2. 应用层控制 - 资源

    • 由客户端应用管理
    • 提供必要的上下文信息
    • 确保数据安全和隐私
  3. 模型层控制 - 工具

    • AI模型自主决定使用
    • 执行具体的操作任务
    • 实现真正的智能化交互

5.为什么这样设计? #

5.1 安全性考虑 #

  • 用户控制: 用户明确知道自己在做什么
  • 应用管理: 敏感数据由应用控制,不直接暴露给AI
  • 模型执行: AI只能执行预定义的安全操作

5.2 易用性提升 #

  • 标准化: 提供统一的交互模式
  • 上下文感知: AI能够理解当前环境
  • 自动化: 减少重复性操作

    5.3 灵活性平衡 #

  • 可定制: 不同应用可以定制不同的提示词和资源
  • 可扩展: 工具可以不断添加新功能
  • 可组合: 三个层次可以灵活组合使用

6.实际应用场景 #

6.1 开发环境集成 #

用户: "/debug" 
→ 提示词触发调试模式
→ 资源提供当前代码和错误信息
→ 工具执行调试命令

6.2 文档助手 #

用户: "/search 数据库连接"
→ 提示词启动搜索模式
→ 资源提供项目文档和代码库
→ 工具执行搜索并返回结果

6.3 项目管理 #

用户: "/create-task 完成用户认证功能"
→ 提示词启动任务创建
→ 资源提供项目结构和需求文档
→ 工具创建任务卡片并分配

7.学习建议 #

  1. 从提示词开始: 先熟悉各种预定义的交互模式
  2. 理解资源管理: 了解如何为AI提供合适的上下文
  3. 掌握工具使用: 学习如何让AI执行具体操作
  4. 实践组合应用: 将三个层次结合起来解决实际问题

访问验证

请输入访问令牌

Token不正确,请重新输入