Skip to main content
Glama
KatouMegumii

vac-product-recommend-mcp

by KatouMegumii

vac-product-recommend-mcp

Servidor MCP local en formato stdio que busca productos en las listas «Destacados/General» de los tours en grupo de Ctrip según la demanda, y recomienda el TopN según dimensiones como puntuación de reseñas, ventas y precio. Devuelve una tabla Markdown en formato unificado (incluye enlaces de versión web y móvil).

Implementado solo con la librería estándar de Python, sin dependencias de terceros. Basta con Python 3.10+.

Herramientas incluidas

Herramienta

Descripción

recommend_tours

Filtra por palabra clave y múltiples condiciones, y devuelve los TopN productos con mejores ventas y reseñas

search_tours

Busca en la lista general y devuelve una tabla Markdown

get_filter_options

Consulta los filtros disponibles y sus valores posibles, para mapear enumerados

get_departure_cities

Consulta el ID de ciudad de salida de Ctrip por nombre/pinyin de la ciudad (usar solo cuando sea necesario)

Related MCP server: 12306 Train Ticket Search MCP Server

Consulta de filtros enumerados

Cuando se deseen convertir las necesidades del usuario en valores de filtro concretos, llama primero a get_filter_options_:

{ "keyword": "川西" }

Devuelve todos los grupos de filtros y sus valores enumerados dentro de fastFilters. El Agent puede elegir según esto y luego pasarlos a search_tours / recommend_tours.

get_departure_cities se usa solo cuando el usuario menciona una ciudad de salida y se necesita el ID; en caso contrario, se usa el depart_city_id predeterminado.

Instalación (se recomienda usar uv, no es necesario instalar Python manualmente)

Primero instala uv:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows PowerShell
irm https://astral.sh/uv/install.ps1 | iex

Después instala mediante el enlace git:

uv tool install git+https://github.com/KatouMegumii/vac-product-recommend-mcp

También puedes ejecutar directamente el script de instalación del repositorio:

./scripts/install.sh
# Windows: powershell -File scripts/install.ps1

v descargará Python y la dependencias automáticamente en la primera ejecución. No es necesario que la máquina objetivo tenga Python preinstalado.

Actualización

Los usuarios que ya tienen instalado el paquete deben actualizarlo según el método de instalación:

# 用 uv tool 安装的
uv tool upgrade vac-product-recommend-mcp
# 如果上面没拉到最新,强制重装:
uv tool install --force git+https://github.com/KatouMegumii/vac-product-recommend-mcp

# 克隆仓库 + pip install -e . 安装的
cd vac-product-recommend-mcp && git pull

Si la configuración del cliente usa uvx --from git+..., limpia la caché y reinicia el cliente de MCP:

uv cache clean

Después de la actualización, reinicia / vuelve a conectarte al MCP para que las nuevas herramientas y instructions entren en vigencia.

Al actualar/instalar, si la operación la realiza el Agent, lo siguiente es obligatorio:

  1. Tocar estrictamente si las restricciones de este README para las secciones «Importante: para que el Agent mantenga estrictamente el formato de salida» y «Cada consulta es completamente independiente» han cambiado;

  2. Sincronizar las últimas restricciones en la personalización / memoria / Rules / indicaciones del sistema del Agent;

  3. Reiniciar / reconectar MCP y luego confirmar la lista de herramientas actualizada.

Configuración del cliente

Con Claude Desktop como ejemplo, edita claude_desktop_config.json:

{
  "mcpServers": {
    "vac-product-recommend": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/KatouMegumii/vac-product-recommend-mcp",
        "vac-product-recommend-mcp"
      ],
      "env": {
        "CTRIP_COOKIE": "",
        "CTRIP_GUID": ""
      }
    }
  }
}

En el directorio config_examples/ se incluirán configuraciones de ejemplo para Claude Desktop / Cursor / Cline.

Variables de entorno:

Variable

Obligatorio

Descripción

CTRIP_COOKIE

No

Cadena completa de cookie copiada en navegador. Sin ella también funciona (podría activar el control de riesgo)

CTRIP_GUID

No

Se puede dejar vacío; si se deja vacío, se usa el valor incorporado predeterminado

CTRIP_W_PAYLOAD_SOURCE

No

Firma de control de riesgo; no es obligatoria en la interfaz actual

CTRIP_X_CTX_CLIENT_REQ

No

Token rotatorio; no es obligatorio en la interfaz actual

Parámetros principales

recommend_tours / search_tours

Parámetro

Descripción

keyword

Destino o tema, p. ej. «Turquía», «Guangxi»

depart_city_id

ID de ciudad de salida; consultar con get_departure_cities solo cuando el usuario mencione la ciudad de salida

travel_way

Modalidad de viaje, array de selección múltiple: ["拼小团","跟团游"], etc.

brand

Marca, p. ej. 自营 / 携程自营, selección múltiple

level

Nivel, p. ej. 5钻 / 4钻 / 3钻, selección múltiple

team_size

Tamaño del grupo: 最多9人 / 10-20人 / 21人及以上; obligatorio si el usuario menciona adultos

vehicle

Forma de transporte: 不含往返交通 / 不含大交通 / 当地参团

service_tags

Garantías de servicio, selección múltiple con AND (separado o en array): 0购物, 一价全包, etc.

suit_person

Público adecuado, selección múltiple con OR (separado o en array): 亲子友好, 老友会严选, etc.

promo

Oferta promocional, p. ej. 机票用户价, 火车票用户价

days

Días, admite 7 / 6-8 / 6,7,8; si se proporcionan fecha de regreso y salida, usar 返程-出发+1

departure_date

Fecha de salida (solo la fecha de salida), formato YYYY-MM-DD

vendor

Nombre o ID del proveedor, selección múltiple, coincidencia de texto libre

include_traffic

Enviar solo cuando el usuario pida «incluir transporte de ida y vuelta; si no, usar vehicle`

min_score

Puntuación mínima de reseña, valor predeterminado0 (sin filtro); independiente del tamaño del grupo

budget_max

Presupuesto máximo

top_n

Cantidad de recomendaciones

candidate_limit

Límite en el grupo de candidatos; hace paginación automática hasta alcanzar el número de coincidencias

  1. Abre la lista de viajes en grupo H5 de Ctrip en el navegador (o Cambia a modo móvil en DevTools).

  2. F12 → Network → busca graphql?queryName=productSearchInfo.

  3. Click derecho → Copy → Copy as cURL.

  4. Pega toda la parte después del -b '...' en CTRIP_COOKIE (exactamente, sin URL-encoded).

Ejemplo

Ayúdame a buscar un recorrido de 3-5 días por Guangxi, de pequeño viaje por +.. o tour con grupo, que sea adecuado para familias; consulta el top 3.

Agent consulta primero si es necesario el ID de ciudad de salida que opcional, luego llama a la herramienta de recomendación y devuelve directamente la tabla Markdown.

Importante: para que el Aopt esté estricto con el formato de salida

Añade la siguiente restricción en la personalización / memoria / indicadores del sistema / añadir recordatorio al Agent (esta es la capa MÁS estable; si el Agent lo ejecuta por sí mismo, debe autoexigirse por igual):

当调用 vac-product-recommend 的 recommend_tours(又称mcp__recommend_tours) / 或 search_tours(又称mcp__search_tours) 后,
必须把工具返回的 Markdown(包含筛选项和表格) 原样作为最终回复输出。
禁止改写、禁止总结、禁止转成列表、禁止删除或合并列。

También añade la restricción de que cada consulta es completamente independiente:

每次调用 recommend_tours / search_tours 时,只根据当前这一轮用户的原话设置参数。
不要复用上一轮对话中的 keyword、travel_way、departure_date、days、team_size、budget 等参数。
如果用户新一轮没有提到某个筛选条件,就不要传该参数(使用默认值或留空)。

Además, no mezcles el número de participantes con el tipo de producto:

用户提到人数(如 4人、6人、8人)时,必须设置 team_size(4人→最多9人)。
用户只说人数,不要推断为私家团;用户只说私家团,才设置 travel_way=私家团。

Estructura del directorio

vac-product-recommend-mcp/
├── vac_product_recommend_mcp/
│   ├── __init__.py
│   ├── __main__.py
│   ├── server.py         # stdio MCP 协议 + 工具注册 + Markdown 渲染
│   ├── ctrip_api.py      # 携程接口客户端 + 字段归一化 + 筛选
│   └── recommender.py    # 评分、过滤、TopN
├── config_examples/
├── pyproject.toml
└── README.md
Install Server
F
license - not found
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    C
    quality
    D
    maintenance
    Enables interaction with Douban content including searching and reviewing books, movies, TV shows, and browsing group discussions. Supports searching by ISBN or keywords, retrieving reviews, and managing group topics with filtering capabilities.
    8
    9
    9
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A travel planning MCP server that supports flight search, weather (including cherry blossom forecasts), exchange rate queries, and trip planning. It specializes in Japan travel from Shenzhen/Hong Kong, providing optimal date analysis and multi-day itinerary suggestions.
    11
    ISC

View all related MCP servers

Related MCP Connectors

  • TravelMind: 8 MCP tools for travel (12306 trains, flights, hotels, geocode, planning, policy).

  • Search and book theatre, attractions, tours across 681 cities. 13,090+ products.

  • China & Asia travel eSIM specialist. 200+ countries. No-VPN internet in China.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/KatouMegumii/vac-product-recommend-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server