项目简介

这是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为 LLM 客户端提供美国国家公园服务 (NPS) 的数据访问能力。通过此服务器,用户可以方便地获取国家公园的列表以及特定公园的详细信息,从而在 LLM 应用中集成丰富的地理和自然资源信息。

主要功能点

  • 检索国家公园列表: 根据美国州代码,获取该州内所有国家公园的简要列表,包含公园名称、描述和公园代码。
  • 获取国家公园详细信息: 根据国家公园代码,获取特定公园的详细信息,包括公园全名、描述和所属州份。

以上功能通过定义好的 工具 (Tools)Prompt 模板 (Prompts) 提供,方便 LLM 客户端调用和使用。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/amysatterlee/nps_mcp
    cd nps_mcp
  2. 安装依赖: 确保已安装 Node.js (v18+) 和 npm 或 yarn。在项目根目录下运行:

    npm install
  3. 配置 API 密钥:

服务器配置

要将此 MCP 服务器添加到 MCP 客户端(例如 Claude Desktop),您需要配置服务器的启动命令。以下是 'claude_desktop_config.json' 的配置示例:

{
    "mcpServers": {
        "nps": {
            "command": "node",
            "args": [
                "/path/to/nps_mcp/build/server.js"  // 将 "/path/to/nps_mcp" 替换为您的仓库本地路径
            ],
            "env": {
                "API_KEY": "YOUR_NPS_API_KEY_HERE" // 可选,如果已在 .env 文件中配置,此处可以省略
            }
        }
    }
}

配置参数说明:

  • 'server name': 'nps' (服务器名称,客户端用此名称识别和调用)
  • 'command': 'node' (启动服务器的命令,这里使用 Node.js 运行)
  • 'args':
    • '"/path/to/nps_mcp/build/server.js"': 服务器入口文件路径,请替换为实际的 'build/server.js' 文件路径。注意: 首次运行前需要先执行 'npm run build' 构建项目。
  • 'env':
    • 'API_KEY': NPS API 密钥,如果已经在 '.env' 文件中配置,可以省略此项。

请将上述配置添加到您的 MCP 客户端配置文件中,并确保路径正确。

基本使用方法

  1. 启动服务器: 在项目根目录下运行以下命令构建并启动服务器:

    npm run build
    node ./build/server.js

    或者,如果您使用 Claude Desktop,启动或重启 Claude Desktop 即可。

  2. 在 MCP 客户端中使用:

    • 确保您的 MCP 客户端已正确配置并连接到 'nps' 服务器。
    • 使用客户端提供的界面或方式,调用已定义的 工具 (Tools)Prompt 模板 (Prompts) 来查询国家公园数据。

    工具 (Tools) 使用示例:

    • 使用 'park-list' 工具,并传入 'stateCode' 参数(例如 "CA")来获取加利福尼亚州的国家公园列表。
    • 使用 'park-details' 工具,并传入 'parkCode' 参数(例如 "yell")来获取黄石国家公园的详细信息。

    Prompt 模板 (Prompts) 使用示例:

    • 使用 'parks-by-state' Prompt 模板,并传入 'stateCode' 参数(例如 "NY"),LLM 会理解您的意图并查询纽约州的国家公园。
    • 使用 'details-for-park' Prompt 模板,并传入 'park' 参数(例如 "Grand Canyon National Park"),LLM 会尝试获取大峡谷国家公园的详细信息。

    具体的调用方式请参考您使用的 MCP 客户端的文档。

信息

分类

网页与API