使用说明

项目简介

本仓库 'mcp-server-examples' 提供了一系列使用不同编程语言(Java, JavaScript, Python)实现的 Model Context Protocol (MCP) 服务器示例。这些示例旨在帮助开发者理解和构建自己的MCP服务器,以便为大型语言模型 (LLM) 应用提供结构化的上下文信息和功能扩展。

主要功能点

  • 资源服务: 演示如何定义和提供可被LLM客户端访问的资源,例如 'javascript-greeting' 示例中的动态问候语资源。
  • 工具服务: 展示如何注册和执行工具函数,允许LLM客户端调用外部功能,例如 'java-mcp' 示例中的天气查询和SQL查询工具,以及 'python-sqlite3' 示例中的BMI计算和天气获取工具。
  • 多语言示例: 提供Java, JavaScript 和 Python 三种语言的实现,方便开发者根据自身技术栈选择合适的示例参考。

安装步骤

本仓库本身无需安装,它提供的是MCP服务器的示例代码。要运行这些示例,你需要:

  1. 克隆仓库: 将 'mcp-server-examples' 仓库克隆到本地。
  2. 环境准备:
    • Java 示例 ('java-mcp'): 确保已安装 JDK 和 Maven。
    • JavaScript 示例 ('javascript-greeting'): 确保已安装 Node.js 和 npm。
    • Python 示例 ('python-sqlite3'): 确保已安装 Python 和 pip,并可能需要安装 'uv' (根据 'README.md' 配置)。
  3. 构建和运行:
    • Java 示例: 进入 'java-mcp' 目录,使用 Maven 构建项目(例如 'mvn clean install'),然后根据 'README.md' 中的配置运行 JAR 文件。
    • JavaScript 示例: 进入 'javascript-greeting' 目录,使用 npm 安装依赖('npm install'),然后根据 'README.md' 中的配置运行 'index.js' 文件。
    • Python 示例: 进入 'python-sqlite3' 目录,根据 'README.md' 中的配置使用 'uv' 或其他方式运行 'server.py' 文件。

注意: 具体的构建和运行命令可能需要参考每个示例目录下的更详细说明(如果存在)。'README.md' 中提供的 'command' 和 'args' 字段是用于 MCP 客户端配置的启动命令,而非直接的服务器运行命令。

服务器配置

以下是配置 MCP 客户端连接到本仓库示例服务器的 JSON 格式配置信息。你需要将这些配置添加到你的 MCP 客户端配置中。请注意替换路径为你的实际路径。

{
  "mcpServers": {
    "greeting-server": {
      "command": "node",
      "args": [
        "/path/to/mcp-server-examples/javascript-greeting/index.js"  // JavaScript Greeting Server 示例,需要替换为 index.js 的实际路径
      ]
    },
    "weather-server": {
      "command": "java",
      "args": [
        "-jar",
        "/path/to/mcp-server-examples/java-mcp/target/mcp-0.0.1-SNAPSHOT.jar" // Java Weather Server 示例,需要替换为 JAR 文件的实际路径
      ]
    },
    "echo-server": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/mcp-server-examples/python-sqlite3/", // Python Echo Server 示例,需要替换为 python-sqlite3 目录的实际路径
        "--with",
        "mcp",
        "mcp",
        "run",
        "/path/to/mcp-server-examples/python-sqlite3/server.py" // Python Echo Server 示例,需要替换为 server.py 的实际路径
      ]
    }
  }
}

配置参数说明:

  • '"greeting-server"', '"weather-server"', '"echo-server"': 服务器名称,客户端使用此名称引用服务器。
  • '"command"': 启动服务器的命令,例如 'node', 'java', 'uv'。
  • '"args"': 传递给启动命令的参数列表。
    • 参数中包含了服务器脚本或 JAR 文件的路径,请务必根据你本地仓库的实际路径进行替换

基本使用方法

  1. 启动 MCP 服务器: 根据上述 "服务器配置" 中的命令和参数,在本地启动你选择的 MCP 服务器示例。
  2. 配置 MCP 客户端: 将上述 "服务器配置" JSON 代码添加到你的 MCP 客户端的配置文件中。
  3. 连接和交互: 启动 MCP 客户端,客户端将根据配置连接到已启动的 MCP 服务器。之后,你就可以通过客户端与服务器提供的资源和工具进行交互,具体使用方式取决于客户端的功能和服务器提供的接口。

注意: 本仓库仅为示例,具体的资源和工具功能需要查看每个示例的代码实现。

信息

分类

开发者工具