_ registry / mcp streamable-http · checked 1h ago

Ourway – Camino de Santiago

https://mcp.ourway.travel

Registry code: 1833b50160b10885

api record

# Ourway – Camino de Santiago · Official MCP server for AI assistants / Canal oficial para asistentes de IA

## What this server does / Qué hace este servidor

endpoint
https://mcp.ourway.travel/mcp
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is Ourway – Camino de Santiago live?
Yes — it answered the hub's last check (checked 1h ago). It answered 99% of checks over the last 30 days.
Is Ourway – Camino de Santiago free to use?
Yes — the hub reached it with no key and no payment.
What tools does Ourway – Camino de Santiago have?
14 tools: camino_route_towns, quote_camino_package, camino_hotel_alternatives, update_camino_package_extras, camino_transfer_options, camino_proposal_status, swap_camino_hotel, create_camino_booking_proposal, ….
Is Ourway – Camino de Santiago safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
99.4%

90 days 99.3%· all time 99.3%

latency
102ms

last good check

priced tools
0

of 14 tools

_ answered our checks, 90 days 294 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • plan a camino de santiago itinerary
  • quote a camino trip package
  • swap hotels on a camino package
  • create a camino booking request
takes → gives
text, data → data, text
tools
10 reads2 changes data
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 14 tools
3 open 11 never probed 3 of 14 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • camino_extras_catalog reads open 16h ago

    Official Ourway catalog of pilgrim extras for the Camino de Santiago: pilgrim credential (credencial), travel insurance, luggage / backpack transfer between stages, guided visits and activities. No unit prices (extras are folded into the package total via update_camino_package_extras(extras_ids=…) on a quoted package, or quote_camino_package(extras_ids=…) before quoting). `preseleccionado` marks the defaults (credential + insurance by nationality). Pass the route's `camino_slug` to get only the activities of the towns along that Camino (plus the generic pilgrim extras). The ONLY extras that may be offered. / Extras oficiales del catálogo, sin precio unitario y sin mostrar IDs; con `camino_slug`, solo las actividades de las poblaciones de ese camino. (es: catalogo_extras)

    mcp-tool

    {
      "type": "object",
      "title": "camino_extras_catalogArguments",
      "properties": {
        "camino_slug": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Camino Slug",
          "default": null
        },
        "nacionalidad": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Nacionalidad",
          "default": null
        }
      }
    }
    arguments 30 lines
  • list_camino_routes reads open 16h ago

    List the Camino de Santiago routes Ourway sells and can book: Camino Francés (French Way), Camino Portugués (Central & Coastal), Camino del Norte, Camino Primitivo, Camino Inglés, Vía de la Plata / Sanabrés, Finisterre-Muxía and more, with slug, name and total km. Start here for any Camino de Santiago trip question ("which Camino should I walk?", "routes from Porto / Sarria / Tui"). `tipo`: a_pie (walking) | en_bicicleta (cycling) | a_caballo. / Lista los Caminos de Santiago que Ourway comercializa: solo estos son reservables. El itinerario reservable lo construye plan_camino_itinerary. (es: listar_caminos)

    mcp-tool

    {
      "type": "object",
      "title": "list_camino_routesArguments",
      "properties": {
        "tipo": {
          "type": "string",
          "title": "Tipo",
          "default": "a_pie"
        }
      }
    }
    arguments 11 lines
  • camino_trip_intake_form reads open 16h ago

    Intake form contract for a tailor-made Camino de Santiago trip: the fields to collect conversationally from the customer BEFORE quoting anything (rooms with children's ages, nationality/residence, start date and nights, walking or cycling, route and starting town, daily pace, accommodation category, meal plan, luggage transfer, pets, budget per person, comments). Call it at the start of any planning request. / Espejo del formulario 'Camino a medida' de ourway.travel. No llames a quote_camino_package sin `presupuesto` ni a create_camino_booking_proposal sin los datos de contacto. (es: iniciar_peticion_medida)

    mcp-tool

    {
      "type": "object",
      "title": "camino_trip_intake_formArguments",
      "properties": {}
    }
    arguments 5 lines
  • camino_route_towns reads unknown 12h ago

    Towns along a Camino de Santiago route in trail order (Sarria, Portomarín, O Cebreiro, Tui, Porto, Roncesvalles, Ferrol…), with id, name, cumulative km and GPS coordinates. Use it to pick the starting town (`poblacion_inicio_id` for plan_camino_itinerary), to check where the 100 km Compostela threshold falls, and to validate overnight stops. / Poblaciones de un camino en orden de trazado con km acumulados y coordenadas. Las etapas reservables las construye plan_camino_itinerary. (es: poblaciones_ruta)

    mcp-tool

    {
      "type": "object",
      "title": "camino_route_townsArguments",
      "required": [
        "camino_slug"
      ],
      "properties": {
        "camino_slug": {
          "type": "string",
          "title": "Camino Slug"
        }
      }
    }
    arguments 13 lines
  • quote_camino_package reads unknown 5h ago

    Quote a complete Camino de Santiago trip as ONE all-in package price (hotels night by night with LIVE availability + pilgrim extras) — the source of the official Ourway package price. Use it whenever the user asks how much a Camino costs, wants a quote, or approves an itinerary from plan_camino_itinerary. It auto-selects the best accommodation for each night (Ourway quality filters: verified meal plan, close to the centre, guest rating) and returns a single `total_paquete_eur`. NEVER returns per-hotel, per-night or per-extra prices. `presupuesto` is REQUIRED (per person, whole trip, EUR): sin_preferencia | lt_500 | 500_1000 | 1000_1500 | gt_1500. `meal_plan`: RO | BB | HB | FB. `categoria_alojamiento`: recomendado | hoteles_encanto | casas_rurales | albergues. `extras_ids` from camino_extras_catalog (default: pilgrim credential + insurance; luggage transfer if incluir_mochila=true, one bag per traveller, priced by Ourway as bags × official stages of the Camino covered, so a day that spans two official stages counts two; pass the route's `camino_slug` from plan_camino_itinerary). `traslados`: private transfers chosen from camino_transfer_options (arrival to the first town, return from the last…); their price goes inside the total and they are listed in `traslados_incluidos`. `etapas` = one entry per night; consecutive nights in the same town (rest day) get the same hotel. `solo_paso_final` = arrival without night from plan_camino_itinerary ({poblacion_id, fecha} with fecha = check-out of the last night): no hotel, but the luggage transfer covers that last stage. ALWAYS pass `nacionalidad` (or `residente_espana`): it sets the insurance. `mascotas=true` when travelling with a pet. If a category has no availability one night the best alternative category is chosen (see `avisos`); if a town has no rooms at all that night, the stop is moved to the nearest town on the route with availability and reported in `pernoctas_reubicadas` + `avisos` (tell the client). Keep `oferta_paquete_firmada` verbatim for create_camino_booking_proposal. Usually 20-45 s (live checks hotel by hotel): tell the user it takes a moment. If your client times out, call it again with the SAME parameters: the result is cached and comes back instantly. / Fuente del precio oficial Ourway: un solo importe total del paquete, nunca precios parciales. Sin presupuesto no se cotiza. La mochila se calcula como bultos × etapas oficiales (un día que cubre dos etapas oficiales cuenta dos) y va dentro del total. Si tu cliente corta por timeout, repite la llamada con los mismos parámetros: el resultado está en caché. (es: cotizar_paquete)

    mcp-tool

    {
      "type": "object",
      "$defs": {
        "EtapaPaquete": {
          "type": "object",
          "title": "EtapaPaquete",
          "required": [
            "noche_num",
            "poblacion_id",
            "fecha_entrada",
            "fecha_salida"
          ],
          "properties": {
            "noche_num": {
              "type": "integer",
              "title": "Noche Num",
              "minimum": 1
            },
            "fecha_salida": {
              "type": "string",
              "title": "Fecha Salida",
              "description": "YYYY-MM-DD (normalmente el día siguiente)"
            },
            "poblacion_id": {
              "type": "integer",
              "title": "Poblacion Id",
              "description": "ID de la población de pernocta (de camino_route_towns / plan_camino_itinerary)"
            },
            "fecha_entrada": {
              "type": "string",
              "title": "Fecha Entrada",
              "description": "YYYY-MM-DD"
            }
          }
        },
        "SoloPasoPaquete": {
          "type": "object",
          "title": "SoloPasoPaquete",
          "required": [
            "poblacion_id",
            "fecha"
          ],
          "properties": {
            "fecha": {
              "type": "string",
              "title": "Fecha",
              "description": "YYYY-MM-DD: check-out date of the last night"
            },
            "poblacion_id": {
              "type": "integer",
              "title": "Poblacion Id",
              "description": "Town reached walking on the last day without sleeping there (plan_camino_itinerary `solo_paso_final`)"
            }
          }
        },
        "TrasladoPaquete": {
          "type": "object",
          "title": "TrasladoPaquete",
          "required": [
            "origen_poblacion_id",
            "destino_poblacion_id",
            "fecha",
            "categoria_id"
          ],
          "properties": {
            "fecha": {
              "type": "string",
              "title": "Fecha",
              "description": "YYYY-MM-DD del traslado"
            },
            "categoria_id": {
              "type": "integer",
              "title": "Categoria Id",
              "description": "Vehículo elegido (categoria_id de camino_transfer_options)"
            },
            "num_pasajeros": {
              "anyOf": [
                {
                  "type": "integer",
                  "maximum": 20,
                  "minimum": 1
                },
                {
                  "type": "null"
                }
              ],
              "title": "Num Pasajeros",
              "default": null,
              "description": "Pasajeros; por defecto, todos los viajeros"
            },
            "origen_poblacion_id": {
              "type": "integer",
              "title": "Origen Poblacion Id",
              "description": "ID de la población de recogida"
            },
            "destino_poblacion_id": {
              "type": "integer",
              "title": "Destino Poblacion Id",
              "description": "ID de la población de destino"
            }
          },
          "description": "Traslado elegido para el paquete (de camino_transfer_options)."
        },
        "HabitacionOcupacion": {
          "type": "object",
          "title": "HabitacionOcupacion",
          "required": [
            "adults"
          ],
          "properties": {
            "adults": {
              "type": "integer",
              "title": "Adults",
              "maximum": 6,
              "minimum": 1,
              "description": "Adultos en esta habitación"
            },
            "children_ages": {
              "type": "array",
              "items": {
                "type": "integer"
              },
              "title": "Children Ages",
              "description": "Edades de los niños en esta habitación, ej [5, 8]"
            }
          },
          "description": "Ocupación de UNA habitación."
        }
      },
      "title": "quote_camino_packageArguments",
      "required": [
        "etapas",
        "habitaciones",
        "presupuesto"
      ],
      "properties": {
        "etapas": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/EtapaPaquete"
          },
          "title": "Etapas"
        },
        "mascotas": {
          "type": "boolean",
          "title": "Mascotas",
          "default": false
        },
        "meal_plan": {
          "type": "string",
          "title": "Meal Plan",
          "default": "BB"
        },
        "traslados": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/TrasladoPaquete"
              }
            },
            {
              "type": "null"
            }
          ],
          "title": "Traslados",
          "default": null
        },
        "extras_ids": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "integer"
              }
            },
            {
              "type": "null"
            }
          ],
          "title": "Extras Ids",
          "default": null
        },
        "camino_slug": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Camino Slug",
          "default": null
        },
        "presupuesto": {
          "type": "string",
          "title": "Presupuesto"
        },
        "habitaciones": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/HabitacionOcupacion"
          },
          "title": "Habitaciones"
        },
        "nacionalidad": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Nacionalidad",
          "default": null
        },
        "incluir_mochila": {
          "type": "boolean",
          "title": "Incluir Mochila",
          "default": false
        },
        "solo_paso_final": {
          "anyOf": [
            {
              "$ref": "#/$defs/SoloPasoPaquete"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "residente_espana": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Residente Espana",
          "default": null
        },
        "categoria_alojamiento": {
          "type": "string",
          "title": "Categoria Alojamiento",
          "default": "recomendado"
        }
      }
    }
    arguments 253 lines
  • camino_hotel_alternatives reads unknown 12h ago

    Up to 3 alternative hotels for ONE night of a quoted Camino de Santiago package, of ANY accommodation category and as close as possible in price to the current one, each with the change in the package total (`variacion_total_eur`), room, meal plan and distance to the centre. Use it when the client wants a different hotel in a town — do NOT re-quote the whole trip. It checks live availability for that night, so it can find options even when the quote reported `alternativas_disponibles: 0` (takes a few seconds). Then apply the choice with swap_camino_hotel (`alternativa_id`). / Alternativas de cualquier categoría y de precio parecido para una noche; nunca precios por noche. (es: alternativas_alojamiento)

    mcp-tool

    {
      "type": "object",
      "title": "camino_hotel_alternativesArguments",
      "required": [
        "oferta_paquete_firmada",
        "noche_num"
      ],
      "properties": {
        "noche_num": {
          "type": "integer",
          "title": "Noche Num"
        },
        "oferta_paquete_firmada": {
          "type": "string",
          "title": "Oferta Paquete Firmada"
        }
      }
    }
    arguments 18 lines
  • update_camino_package_extras unknown never probed

    Change the pilgrim extras, private transfers or luggage transfer of an ALREADY QUOTED Camino de Santiago package, keeping the same hotels night by night: no new availability check, answers in a few seconds. Pass the COMPLETE new selection: `extras_ids` (from camino_extras_catalog; omit for the default credential + insurance), `traslados` (from camino_transfer_options; omit or [] for none) and `incluir_mochila`. Returns the same shape as quote_camino_package with the new single `total_paquete_eur` and a NEW `oferta_paquete_firmada` that replaces the previous one. Use it instead of quote_camino_package whenever only extras or transfers change. / Añade o quita extras y traslados del paquete ya cotizado sin volver a cotizar los hoteles. (es: actualizar_extras_paquete)

    mcp-tool

    {
      "type": "object",
      "$defs": {
        "TrasladoPaquete": {
          "type": "object",
          "title": "TrasladoPaquete",
          "required": [
            "origen_poblacion_id",
            "destino_poblacion_id",
            "fecha",
            "categoria_id"
          ],
          "properties": {
            "fecha": {
              "type": "string",
              "title": "Fecha",
              "description": "YYYY-MM-DD del traslado"
            },
            "categoria_id": {
              "type": "integer",
              "title": "Categoria Id",
              "description": "Vehículo elegido (categoria_id de camino_transfer_options)"
            },
            "num_pasajeros": {
              "anyOf": [
                {
                  "type": "integer",
                  "maximum": 20,
                  "minimum": 1
                },
                {
                  "type": "null"
                }
              ],
              "title": "Num Pasajeros",
              "default": null,
              "description": "Pasajeros; por defecto, todos los viajeros"
            },
            "origen_poblacion_id": {
              "type": "integer",
              "title": "Origen Poblacion Id",
              "description": "ID de la población de recogida"
            },
            "destino_poblacion_id": {
              "type": "integer",
              "title": "Destino Poblacion Id",
              "description": "ID de la población de destino"
            }
          },
          "description": "Traslado elegido para el paquete (de camino_transfer_options)."
        }
      },
      "title": "update_camino_package_extrasArguments",
      "required": [
        "oferta_paquete_firmada"
      ],
      "properties": {
        "traslados": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/TrasladoPaquete"
              }
            },
            {
              "type": "null"
            }
          ],
          "title": "Traslados",
          "default": null
        },
        "extras_ids": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "integer"
              }
            },
            {
              "type": "null"
            }
          ],
          "title": "Extras Ids",
          "default": null
        },
        "camino_slug": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Camino Slug",
          "default": null
        },
        "nacionalidad": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Nacionalidad",
          "default": null
        },
        "incluir_mochila": {
          "type": "boolean",
          "title": "Incluir Mochila",
          "default": false
        },
        "residente_espana": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Residente Espana",
          "default": null
        },
        "oferta_paquete_firmada": {
          "type": "string",
          "title": "Oferta Paquete Firmada"
        }
      }
    }
    arguments 134 lines
  • camino_transfer_options unknown never probed

    Private transfer options to add to a Camino de Santiago package (e.g. Santiago airport or city → Sarria before the first stage, or back from the last town): one option per vehicle type with enough seats, with distance, duration and how much it ADDS to the package total (`variacion_total_eur`). Town ids come from camino_route_towns. To include one in an already quoted package, call update_camino_package_extras with the full `traslados` list ([{ origen_poblacion_id, destino_poblacion_id, fecha, categoria_id}]); before the first quote, pass it to quote_camino_package(traslados=…). / Opciones de traslado privado para añadir al paquete del Camino, con lo que suma cada una al total. Para incluirla en un paquete ya cotizado, update_camino_package_extras. (es: opciones_traslado)

    mcp-tool

    {
      "type": "object",
      "title": "camino_transfer_optionsArguments",
      "required": [
        "origen_poblacion_id",
        "destino_poblacion_id",
        "fecha",
        "num_pasajeros"
      ],
      "properties": {
        "fecha": {
          "type": "string",
          "title": "Fecha"
        },
        "num_pasajeros": {
          "type": "integer",
          "title": "Num Pasajeros"
        },
        "origen_poblacion_id": {
          "type": "integer",
          "title": "Origen Poblacion Id"
        },
        "destino_poblacion_id": {
          "type": "integer",
          "title": "Destino Poblacion Id"
        }
      }
    }
    arguments 28 lines
  • camino_proposal_status reads unknown 12h ago

    Check the status of a Camino de Santiago booking proposal created through this channel (code PET-123): active / confirmed / expired, plus its link and deadline. Use it when the customer comes back asking about "my proposal", "my booking" or gives a PET code. / Estado de una propuesta creada por este canal. (es: estado_propuesta)

    mcp-tool

    {
      "type": "object",
      "title": "camino_proposal_statusArguments",
      "required": [
        "codigo"
      ],
      "properties": {
        "codigo": {
          "type": "string",
          "title": "Codigo"
        }
      }
    }
    arguments 13 lines
  • swap_camino_hotel changes data unknown never probed

    Apply one alternative from camino_hotel_alternatives or adjust_camino_package to a quoted Camino de Santiago package and get a NEW signed offer (`oferta_paquete_firmada`) with the new package total. Always use the most recent offer for create_camino_booking_proposal. / Sustituye el hotel de esa noche y devuelve una nueva oferta firmada con el nuevo total. (es: cambiar_alojamiento)

    mcp-tool

    {
      "type": "object",
      "title": "swap_camino_hotelArguments",
      "required": [
        "oferta_paquete_firmada",
        "noche_num",
        "alternativa_id"
      ],
      "properties": {
        "noche_num": {
          "type": "integer",
          "title": "Noche Num"
        },
        "alternativa_id": {
          "type": "string",
          "title": "Alternativa Id"
        },
        "oferta_paquete_firmada": {
          "type": "string",
          "title": "Oferta Paquete Firmada"
        }
      }
    }
    arguments 23 lines
  • create_camino_booking_proposal changes data unknown never probed

    Create the Ourway booking request for a quoted Camino de Santiago package and return the customer's personal proposal link (valid 7 days) where they review the trip day by day, confirm and pay securely. ONLY call it after the customer explicitly approves the itinerary and the package total and gives real contact details (full name, email, phone, nationality). Accepts no prices: only the signed offer from quote_camino_package / swap_camino_hotel. / Crea la petición en Ourway y devuelve el enlace de la propuesta (única llamada a la acción). (es: crear_propuesta)

    mcp-tool

    {
      "type": "object",
      "$defs": {
        "DatosCliente": {
          "type": "object",
          "title": "DatosCliente",
          "required": [
            "nombre_completo",
            "email",
            "telefono",
            "nacionalidad"
          ],
          "properties": {
            "email": {
              "type": "string",
              "title": "Email",
              "description": "Email real del cliente (recibirá la propuesta)"
            },
            "telefono": {
              "type": "string",
              "title": "Telefono",
              "description": "Teléfono con prefijo internacional"
            },
            "nacionalidad": {
              "type": "string",
              "title": "Nacionalidad",
              "description": "Nacionalidad del cliente (determina el seguro)"
            },
            "nombre_completo": {
              "type": "string",
              "title": "Nombre Completo",
              "minLength": 5,
              "description": "Nombre y apellidos del cliente"
            }
          }
        },
        "FormularioMedida": {
          "type": "object",
          "title": "FormularioMedida",
          "required": [
            "rooms",
            "budget"
          ],
          "properties": {
            "board": {
              "enum": [
                "RO",
                "BB",
                "HB",
                "FB"
              ],
              "type": "string",
              "title": "Board",
              "default": "BB"
            },
            "rooms": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/HabitacionFormulario"
              },
              "title": "Rooms",
              "description": "Distribución por habitación"
            },
            "budget": {
              "enum": [
                "sin_preferencia",
                "lt_500",
                "500_1000",
                "1000_1500",
                "gt_1500"
              ],
              "type": "string",
              "title": "Budget"
            },
            "luggage": {
              "enum": [
                "si",
                "no",
                "no_seguro"
              ],
              "type": "string",
              "title": "Luggage",
              "default": "no_seguro"
            },
            "itinerary": {
              "enum": [
                "experto",
                "propio"
              ],
              "type": "string",
              "title": "Itinerary",
              "default": "experto"
            },
            "travel_type": {
              "enum": [
                "a_pie",
                "en_bicicleta"
              ],
              "type": "string",
              "title": "Travel Type",
              "default": "a_pie"
            },
            "lodging_mode": {
              "enum": [
                "rooms",
                "shared"
              ],
              "type": "string",
              "title": "Lodging Mode",
              "default": "rooms"
            },
            "observations": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Observations",
              "default": null
            },
            "accommodation": {
              "enum": [
                "recomendado",
                "hoteles_encanto",
                "casas_rurales",
                "albergues"
              ],
              "type": "string",
              "title": "Accommodation",
              "default": "recomendado"
            },
            "contact_preference": {
              "anyOf": [
                {
                  "enum": [
                    "whatsapp",
                    "telefono",
                    "email"
                  ],
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Contact Preference",
              "default": null
            }
          },
          "description": "Espejo del bloque MEDIDA del formulario 'Camino a medida' de la web\n(api/procesar_solicitud_medida.php). Se serializa tal cual en\npeticiones_adicionales para que el CRS y su cotizador lo lean igual."
        },
        "HabitacionFormulario": {
          "type": "object",
          "title": "HabitacionFormulario",
          "required": [
            "adults"
          ],
          "properties": {
            "adults": {
              "type": "integer",
              "title": "Adults",
              "maximum": 6,
              "minimum": 1
            },
            "child_ages": {
              "type": "array",
              "items": {
                "type": "integer"
              },
              "title": "Child Ages"
            }
          }
        }
      },
      "title": "create_camino_booking_proposalArguments",
      "required": [
        "cliente",
        "idioma_codigo",
        "camino_slug",
        "oferta_paquete_firmada",
        "formulario"
      ],
      "properties": {
        "cliente": {
          "$ref": "#/$defs/DatosCliente"
        },
        "formulario": {
          "$ref": "#/$defs/FormularioMedida"
        },
        "camino_slug": {
          "type": "string",
          "title": "Camino Slug"
        },
        "idioma_codigo": {
          "type": "string",
          "title": "Idioma Codigo"
        },
        "poblacion_inicio_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Poblacion Inicio Id",
          "default": null
        },
        "oferta_paquete_firmada": {
          "type": "string",
          "title": "Oferta Paquete Firmada"
        },
        "poblacion_inicio_nombre": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Poblacion Inicio Nombre",
          "default": null
        }
      }
    }
    arguments 230 lines
  • camino_de_santiago_info reads unknown 8h ago

    Practical, up-to-date answers about the Camino de Santiago from Ourway's specialist team — use it for ANY Camino question even when the user is not booking: pilgrim credential (credencial), the Compostela certificate and the 100 km / 200 km rule, best time of year and weather, which route to choose (Camino Francés, Portugués Central or Coastal from Porto/Tui, Norte, Primitivo, Inglés from Ferrol, Vía de la Plata, Finisterre-Muxía), how many days from Sarria / Tui / Porto / Roncesvalles / Saint-Jean-Pied-de-Port / Oviedo, daily distances and difficulty, luggage & backpack transfer, what to pack, walking with kids or seniors, cycling the Camino, pets, accommodation types (albergues, hostales, hotels, casas rurales), budget, how far ahead to book, getting to the start and back from Santiago, safety, food (pilgrim menu) and etiquette. `question`: free text in any language; `idioma`: es | en (auto-detected if omitted). Cheap and instant (no availability check). / Respuestas prácticas del equipo Ourway sobre el Camino de Santiago: credencial, Compostela, 100 km, mejor época, qué ruta elegir, etapas, mochila, niños, bici, mascotas, presupuesto… Úsala ante cualquier duda sobre el Camino aunque el usuario no quiera reservar. (es: info_camino)

    mcp-tool

    {
      "type": "object",
      "title": "camino_de_santiago_infoArguments",
      "required": [
        "question"
      ],
      "properties": {
        "idioma": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Idioma",
          "default": null
        },
        "question": {
          "type": "string",
          "title": "Question"
        }
      }
    }
    arguments 25 lines
  • plan_camino_itinerary reads unknown 8h ago

    Build a day-by-day Camino de Santiago itinerary (walking stages, km per day, overnight towns, dates, route map image) following the camino's OFFICIAL stages adapted to the pilgrim's daily pace. Use it for any Camino itinerary, stage plan or "how many days from Sarria/Tui/Porto/Roncesvalles" question: it is the itinerary Ourway books. `ritmo`: tranquilo (18-22 km/day) | medio (22-28) | experimentado (28-35); use `km_max_etapa` instead for an explicit km cap or cycling (~2x). `fecha_inicio` (YYYY-MM-DD, first night) is optional: without it dates come back "to be confirmed" — call it anyway. Only pass `num_noches` when the client fixes the number of nights. Each stage lists `alternativas_pernocta`: nearby towns where the client could sleep instead; to apply a change call again with `pernoctas_ids` (the overnight town of EVERY night, in walking order; repeat a town on consecutive nights for a rest day). Optional edits, all requiring `pernoctas_ids`: `solo_paso_final_id` = town reached walking on the last day without sleeping there; `extender_hasta_id` = extend the trip beyond the last stop up to that town (the new part is split at the pace); `camino_continuacion_slug` = route continuing after the goal (only `camino-finisterre-muxia`, starting in Santiago). Each stage has `tipo` (marcha | descanso | solo_paso), `dia_num`, `noche_num` (null on the arrival without night) and `intermedias` (towns inside the stage where to stop earlier); `continuaciones` lists where the trip can be extended. Returns `mapa_url`: a real PNG map of the route with numbered overnight stops — show it in the chat right after the stage table (`![Mapa](mapa_url)`). / Fuente del itinerario reservable: úsala para proponer o revisar etapas, aunque el cliente aún no tenga fecha. Presenta el itinerario y pide confirmación ANTES de cotizar. (es: proponer_itinerario)

    mcp-tool

    {
      "type": "object",
      "title": "plan_camino_itineraryArguments",
      "required": [
        "camino_slug",
        "poblacion_inicio_id"
      ],
      "properties": {
        "ritmo": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ritmo",
          "default": null
        },
        "num_noches": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Num Noches",
          "default": null
        },
        "camino_slug": {
          "type": "string",
          "title": "Camino Slug"
        },
        "fecha_inicio": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Fecha Inicio",
          "default": null
        },
        "km_max_etapa": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Km Max Etapa",
          "default": null
        },
        "pernoctas_ids": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "integer"
              }
            },
            {
              "type": "null"
            }
          ],
          "title": "Pernoctas Ids",
          "default": null
        },
        "extender_hasta_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Extender Hasta Id",
          "default": null
        },
        "solo_paso_final_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Solo Paso Final Id",
          "default": null
        },
        "poblacion_inicio_id": {
          "type": "integer",
          "title": "Poblacion Inicio Id"
        },
        "poblacion_destino_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Poblacion Destino Id",
          "default": null
        },
        "camino_continuacion_slug": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Camino Continuacion Slug",
          "default": null
        }
      }
    }
    arguments 129 lines
  • adjust_camino_package reads unknown 8h ago

    Propose per-night hotel swaps on a quoted Camino de Santiago package to reach a goal: cheaper, higher category, closer to the town centre or with breakfast. `objetivo`: bajar_precio | subir_categoria | mas_centrico | con_desayuno; optional `noche_num` to limit to one night. Use it when the client asks to LOWER THE PRICE, UPGRADE, sleep MORE CENTRAL or ADD BREAKFAST — do not re-quote. Returns each proposal with its change in the total and the total if all are applied; apply accepted ones one by one with swap_camino_hotel, chaining the new offer. If there are no proposals, offer to re-quote with another category/itinerary. (es: ajustar_paquete)

    mcp-tool

    {
      "type": "object",
      "title": "adjust_camino_packageArguments",
      "required": [
        "oferta_paquete_firmada",
        "objetivo"
      ],
      "properties": {
        "objetivo": {
          "type": "string",
          "title": "Objetivo"
        },
        "noche_num": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Noche Num",
          "default": null
        },
        "oferta_paquete_firmada": {
          "type": "string",
          "title": "Oferta Paquete Firmada"
        }
      }
    }
    arguments 30 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 1833b50160b10885.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/1833b50160b10885/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/1833b50160b10885/badge.svg)](https://brick.blue/agent/1833b50160b10885?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.