项目简介

kickstart-mcp 是一个互动教程项目,旨在帮助开发者学习 Model Context Protocol (MCP)。它提供了从设置支持MCP的LLM客户端(主机)环境,到理解MCP核心概念,以及逐步构建MCP服务器和客户端的详细指南和可运行的示例代码。

主要功能点

该项目核心功能是作为一个指导性的互动学习平台。它通过以下方式帮助用户掌握MCP开发:

  • 互动式学习: 引导用户一步步完成设置和开发任务。
  • 多主机兼容: 提供针对不同MCP主机环境(如Claude, Cursor)的设置说明。
  • 概念讲解: 深入解释MCP的关键组成部分,包括资源、工具和Prompt。
  • 服务器开发实践: 包含构建实际MCP服务器的教程和示例代码,支持Stdio和SSE等传输协议。
  • 客户端实现指导: 提供构建MCP客户端的初步指导。
  • 内置验证: 教程每一步都设计有验证机制,确保学习成果。

项目内包含完整的MCP服务器示例代码(例如天气服务),您可以直接参考或在教程引导下构建并运行它们。

安装步骤

推荐使用 'uv' 进行包管理,并使用 'hatch' 作为构建工具。

  1. 安装 uv 和 hatch:

    brew install uv
    brew install hatch

    (请根据您的操作系统选择合适的安装方法,macOS和Windows用户通常可以使用对应的包管理器)

  2. 快速启动教程: 通过 'uvx' 命令直接运行教程:

    uvx kickstart-mcp

    您也可以选择指定语言,例如中文:

    uvx kickstart-mcp -l zh
  3. 开发模式安装 (可选): 如果您想克隆仓库并进行开发:

    git clone https://github.com/nolleh/kickstart-mcp.git
    cd kickstart-mcp
    uv run kickstart-mcp

服务器配置

MCP服务器是为MCP客户端(如支持MCP的LLM应用)提供服务的后端。MCP客户端需要知道如何启动您的MCP服务器并与之通信。典型的MCP客户端配置文件(通常是JSON格式)需要指定服务器的启动命令和参数,以及通信协议(传输方式)。

对于在本项目教程中构建的示例MCP服务器(例如天气服务),其配置信息将取决于您在教程中完成的步骤以及选择的传输协议(Stdio或SSE)。一个典型的MCP客户端配置片段可能如下所示:

{
  "server name": "weather", // 服务器在客户端中显示的名称
  "command": "...",         // 启动服务器的命令,例如 "hatch" 或 Python解释器的路径
  "args": ["...", "..."],   // 传递给命令的参数列表,例如用于指定传输协议和端口 ["run", "mcp-weather", "--transport", "stdio"] 或 ["--transport", "sse", "--port", "8000"]
  "transport": "stdio"      // 指定使用的传输协议,可选值通常包括 "stdio", "sse", "websocket" 等
  // 可能还包含其他特定于客户端或服务器的配置项
}

请注意,'command' 和 'args' 的具体值需要根据您完成教程后实际构建和运行服务器的方式来确定。教程会引导您创建并运行一个名为 'mcp-weather' 的Python项目,其启动方式通常涉及 'hatch run mcp-weather' 命令,并配合 '--transport' 和 '--port' 等参数。

基本使用方法

运行 'uvx kickstart-mcp' 命令后,您将进入一个互动式的命令行界面。

  1. 选择教程组: 使用键盘方向键(↑↓←→)选择您感兴趣的教程分组,例如“Mcp Server”。
  2. 选择具体教程: 进入分组后,使用方向键(↑↓)选择具体的教程,例如“MakeServer”或“FastMcpWeather”。
  3. 执行教程步骤: 按照屏幕上的提示阅读说明、修改文件、运行命令。教程会提供代码片段供您参考或复制,并可能自动打开您的编辑器来修改文件。
  4. 验证进度: 教程会提示您如何验证当前步骤是否成功。您可以随时选择验证当前修改。
  5. 测试服务器: 在完成服务器构建教程后,您可以按照教程指示(通常在文件末尾的 'if name == "main": main()' 部分)启动您构建的服务器,并使用兼容的MCP客户端或MCP Inspector工具连接进行测试。

如果您想直接参考完整的示例服务器代码,可以查看仓库中 'tutorial/answer/' 目录下的文件,如 'tutorial/answer/fastmcp_weather.py',这些文件提供了可以直接运行的MCP服务器实现。

信息

分类

开发者工具