返回 MCP 目录
public公开dns本地运行

mcp-korea-tourism-api

该项目提供了一个基于韩国旅游组织(KTO)官方API的模型上下文协议(MCP)服务器,使AI助手能够查询韩国旅游景点、文化活动、餐饮住宿等详细信息。支持多语言搜索、位置感知、缓存和自动重试等功能,可通过Docker或Python直接运行。

article

README

🚀 韩国旅游信息 MCP 服务集成指南

本指南将详细介绍如何安装和集成韩国旅游信息 MCP 服务,助您轻松获取韩国旅游相关信息。

📦 安装指南

🛠️ Docker 安装说明

步骤 1: 创建 MCP 目录

在项目目录下创建一个名为 mcp-korea-tourism-api 的新文件夹,用于存放与韩国旅游信息相关的代码和资源。

mkdir -p mcp-korea-tourism-api
cd mcp-korea-tourism-api

步骤 2: 下载依赖项

为确保 MCP 服务顺利运行,需安装必要的 Python 包。创建一个 requirements.txt 文件,并添加以下依赖项:

uv>=0.13.0
python-dotenv==0.19.0

步骤 3: 安装依赖项

使用 pip 安装这些包:

pip install -r requirements.txt

步骤 4: 下载 Korea Tourism 数据

为使 MCP 服务能够访问韩国旅游数据,需从韩国旅游局获取最新的 XML 文件,并将这些文件放置在 mcp-korea-tourism-api/data 目录下。

步骤 5: 启动 MCP 服务

现在可以启动 MCP 服务了,运行以下命令:

uv run mcp_tourism.server

🛠️ 集成到 Cursor

若要在 Cursor 中使用这个 MCP 服务,请按照以下步骤操作:

步骤 1: 确保 Docker 容器可以运行

根据上述说明构建并运行 Docker 容器,确保 mcp-korea-tourism-api 镜像已经存在并且能够正常运行。

步骤 2: 找到你的 mcp.json 文件

该文件用于配置 Cursor 的 MCP 工具,通常可以在 ~/.cursor/mcp.json 或类似路径下找到它。

步骤 3: 添加或更新 MCP 配置

mcp.json 文件中添加以下 JSON 对象。若已有此工具的条目,请更新其 command 属性。将 "YOUR_KTO_API_KEY" 替换为实际的 API 密钥。

使用 Docker 的配置示例:

{
    "mcpServers": {
        "korea-tourism": {
            "command": "docker",
            "args": [
                "run",
                "--rm",
                "-i",
                "-e",
                "KOREA_TOURISM_API_KEY=YOUR_KTO_API_KEY",
                "mcp-korea-tourism-api"
            ]
        }
    }
}

使用 uv 的配置示例:

{
    "mcpServers": {
        "korea-tourism": {
            "command": "uv",
            "args": [
                "--directory",
                "{LOCAL_PATH}/mcp-korea-tourism-api",
                "run",
                "-m",
                "mcp_tourism.server"
            ],
            "env": {
                "KOREA_TOURISM_API_KEY": "YOUR_KTO_API_KEY"
            }
        }
    }
}

步骤 4: 保存 mcp.json 文件

完成配置后,保存 mcp.json 文件。

步骤 5: 重启 Cursor 或重新加载 MCP 工具

Cursor 应能检测到新工具,并在需要时使用 Docker 启动它。

✨ 主要特性

这个服务器为 AI 助手提供了以下功能:

  1. search_tourism_by_keyword:使用关键词搜索旅游信息(如“景福宫”、“拌饭”),可根据内容类型和区域代码进行过滤。
  2. get_tourism_by_area:根据地理区域代码(如首尔='1')浏览旅游信息,可根据内容类型和区域代码进行过滤。
  3. find_nearby_attractions:根据具体 GPS 坐标(经度、纬度)查找附近的旅游景点,可根据半径和内容类型进行过滤。
  4. search_festivals_by_date:在指定日期范围内查找节日信息(格式:YYYYMMDD),可根据区域代码进行过滤。
  5. find_accommodations:根据地区和区域代码搜索酒店、 guesthouses 等住宿设施。
  6. get_detailed_information:使用内容 ID 获取特定旅游项目的详细信息(概述、使用时间、停车等),可根据内容类型进行过滤。
  7. get_tourism_images:使用内容 ID 获取特定旅游项目的图像 URL。
  8. get_area_codes:获取区域代码(城市/省份)及其可选子区域代码。

⚠️ 重要提示

⚠️ 重要提示

  • 确保您拥有有效的 API 密钥,并了解其使用限制和条款。
  • 定期更新 Korea Tourism 数据,以确保信息的最新性。
  • 在生产环境中使用时,请考虑性能优化和错误处理。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端