agentorist
Booking gateway for AI agents — discover events, movies & hotels, hand off to partner checkout.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"agentorist": {
"url": "https://mcp.agentorist.com/mcp"
}
}
}远程端点
https://mcp.agentorist.com/mcpstreamable-http它能做什么
工具清单
工具(7)
🟢list_verticals
List all booking verticals Agentorist currently supports. Returns a dict with each vertical's name and description. Call this first to discover what's bookable before constructing other tool calls.
输入模式
{
"type": "object",
"properties": {},
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🟢search(vertical, query, location, territory, when, ...)
Search for bookable items within a vertical.
输入模式
{
"type": "object",
"properties": {
"vertical": {
"type": "string",
"description": "One of the names returned by list_verticals (e.g. \"movies\",\n\"events\", \"experiences\", \"hotels\", \"cars\")."
},
"query": {
"type": "string",
"description": "Natural-language query — movie title, event keyword, tour name,\ntheme like \"beach getaway\", etc."
},
"location": {
"type": "string",
"description": "City, postcode, or \"lat,lng\"."
},
"territory": {
"default": "US",
"type": "string",
"description": "ISO country code (US, GB, etc.). Default US."
},
"when": {
"default": "",
"type": "string",
"description": "Optional ISO date filter (YYYY-MM-DD) for events."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Optional — name of the calling agent (Claude, ChatGPT, etc.)."
},
"locale": {
"default": "",
"type": "string",
"description": "Optional BCP-47 locale ('en-US', 'fr-FR', 'de-DE', 'ja-JP', etc.).\nCurrently consumed by the 'experiences' vertical to localise the\nViator response and hand-off URL. Auto-detected from the query\nwhen the language is unambiguous."
},
"hotel_name": {
"default": "",
"type": "string"
},
"check_in": {
"default": "",
"type": "string"
},
"check_out": {
"default": "",
"type": "string"
},
"adults": {
"default": 0,
"type": "integer"
},
"children": {
"default": 0,
"type": "integer"
},
"rooms": {
"default": 1,
"type": "integer"
},
"budget_range": {
"default": "",
"type": "string"
},
"hotel_class": {
"default": "",
"type": "string"
},
"pickup_date": {
"default": "",
"type": "string"
},
"dropoff_date": {
"default": "",
"type": "string"
},
"driver_age": {
"default": 0,
"type": "integer"
}
},
"required": [
"vertical",
"query",
"location"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🟢search_all(query, location, when, territory, agent_client, ...)
Search every Agentorist vertical at once — the answer to "what's on?". Use this when the user's request spans verticals or doesn't clearly name one ("what's on tonight", "anything to do in Boston?", "Friday night plans"). For specific single-vertical queries ("movies tonight", "Italian restaurants"), `search_all` auto-narrows to the hinted vertical so you don't waste calls. Returns `results_by_vertical` keyed by movies/events/local, plus `total_count` and `bookable_total` for quick summaries.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Natural-language query. Empty string is fine (= browse)."
},
"location": {
"type": "string",
"description": "City, postcode, or \"lat,lng\"."
},
"when": {
"default": "",
"type": "string",
"description": "Optional time hint (\"tonight\", \"weekend\", or ISO date)."
},
"territory": {
"default": "US",
"type": "string",
"description": "ISO country code (US, GB, etc.). Default US."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Optional — name of the calling agent."
},
"locale": {
"default": "",
"type": "string",
"description": "Optional BCP-47 locale ('en-US', 'fr-FR', 'de-DE', etc.).\nForwarded to verticals that localise their response (experiences)."
}
},
"required": [
"query",
"location"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🟢find_options(vertical, item_id, location, when, agent_client)
Find concrete bookable options for an item. For movies: showtimes for the given film. For events: ticket classes.
输入模式
{
"type": "object",
"properties": {
"vertical": {
"type": "string",
"description": "The vertical (e.g. \"movies\", \"events\")."
},
"item_id": {
"type": "string",
"description": "ID returned by `search` (film_id, event_id), or a title for fuzzy lookup."
},
"location": {
"default": "",
"type": "string",
"description": "City, postcode, or \"lat,lng\" — required for movies."
},
"when": {
"default": "today",
"type": "string",
"description": "ISO date (YYYY-MM-DD) or \"today\"/\"tomorrow\". Default \"today\"."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Optional — name of the calling agent (Claude, ChatGPT,\netc.). Pass the SAME value across search → find_options → book so\nthe trust stack can link the booking to its prior discovery."
}
},
"required": [
"vertical",
"item_id"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🔴book(vertical, option_id, party_size, item_title, venue_name, ...)
Book an option (showtime, ticket class, etc.). If a partner API is connected, completes the booking inline with a confirmation code. Otherwise returns an affiliate deep link the agent should hand to the user.
输入模式
{
"type": "object",
"properties": {
"vertical": {
"type": "string",
"description": "The vertical (e.g. \"movies\", \"events\")."
},
"option_id": {
"type": "string",
"description": "showtime_id or ticket_id from find_options."
},
"party_size": {
"default": 2,
"type": "integer",
"description": "Number of tickets/seats. Default 2."
},
"item_title": {
"default": "",
"type": "string",
"description": "For affiliate fallback / logging."
},
"venue_name": {
"default": "",
"type": "string",
"description": "For logging."
},
"location": {
"default": "",
"type": "string",
"description": "For affiliate fallback."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Optional — name of the calling agent (Claude, ChatGPT, etc.)."
}
},
"required": [
"vertical",
"option_id"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🟢list_venues(vertical, location, radius_km, agent_client)
List venues near a location, marked as bookable or not.
输入模式
{
"type": "object",
"properties": {
"vertical": {
"type": "string",
"description": "The vertical (e.g. \"movies\", \"events\")."
},
"location": {
"type": "string",
"description": "City, postcode, or \"lat,lng\"."
},
"radius_km": {
"default": 15,
"type": "number",
"description": "Search radius. Default 15 km."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Optional — name of the calling agent (Claude, ChatGPT, etc.)."
}
},
"required": [
"vertical",
"location"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}🔴request_unsupported_booking(vertical, venue_name, item_title, when_iso, party_size, ...)
Log a booking request Agentorist can't yet fulfil. This is the demand-intelligence engine. Every call here becomes a data point sold to the venue as monthly missed-revenue insight. Optionally captures email so the user is notified when the venue joins.
输入模式
{
"type": "object",
"properties": {
"vertical": {
"type": "string",
"description": "Which vertical the request belongs to."
},
"venue_name": {
"type": "string",
"description": "Name of the venue the user wanted."
},
"item_title": {
"type": "string",
"description": "The film, event, or experience."
},
"when_iso": {
"default": "",
"type": "string",
"description": "Requested time in ISO 8601 (optional)."
},
"party_size": {
"default": 2,
"type": "integer",
"description": "Number of tickets."
},
"venue_chain": {
"default": "",
"type": "string",
"description": "e.g. Vue, Odeon, Cineworld."
},
"location": {
"default": "",
"type": "string",
"description": "City or area."
},
"user_email": {
"default": "",
"type": "string",
"description": "Optional, for join-notification."
},
"agent_client": {
"default": "",
"type": "string",
"description": "Calling agent (Claude, ChatGPT, etc.)."
}
},
"required": [
"vertical",
"venue_name",
"item_title"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"additionalProperties": true
}社区
证据