MCP Near Me

Find participating local service providers and book live appointment times.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
81%
命名质量
93%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~6,600token 数(工具定义)
~5.9 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 5.16%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "mcp-near-me": {
      "url": "https://mcp.voicedispatcher.com/mcp"
    }
  }
}

远程端点

https://mcp.voicedispatcher.com/mcpstreamable-http
https://mcpnear.com/mcpstreamable-http

它能做什么

工具清单

工具(12)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟡start_service_request(user_intent, vertical_hint, provider_hint, answers, idempotency_key)

Use this immediately when the user asks to book a supported local service. Pass the complete user intent and every public service detail already stated. The tool determines the vertical, creates the server-side request, and returns a vertical-specific introduction plus either one intake field batch or matching data when intake is already complete. In one customer-facing reply, lead with the introduction and immediately continue with the returned next step; do not wait for acknowledgment. Send provider_hint only when the user explicitly named a company. Do not collect contact PII.

输入模式

{
  "type": "object",
  "properties": {
    "user_intent": {
      "type": "string",
      "minLength": 3,
      "maxLength": 3000
    },
    "vertical_hint": {
      "description": "Optional exact live vertical ID. Omit it when uncertain and let the server classify user_intent.",
      "type": "string",
      "enum": [
        "appliance_repair",
        "commercial_kitchen_refrigeration_repair"
      ]
    },
    "provider_hint": {
      "anyOf": [
        {
          "type": "string",
          "minLength": 3,
          "maxLength": 100
        },
        {
          "type": "null"
        }
      ]
    },
    "answers": {
      "default": {},
      "type": "object",
      "properties": {
        "zip_code": {
          "description": "ZIP. Use the exact key zip_code."
        },
        "appliance_type": {
          "description": "Appliance type. Use the exact key appliance_type."
        },
        "brand": {
          "description": "Brand. Use the exact key brand."
        },
        "model": {
          "description": "Model. Use the exact key model."
        },
        "problem_description": {
          "description": "Problem. Use the exact key problem_description."
        },
        "selected_time_key": {
          "description": "Exact time key returned by MCP Near Me after the user chooses an arrival window.",
          "type": "string",
          "minLength": 1
        }
      },
      "additionalProperties": false
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    }
  },
  "required": [
    "user_intent",
    "idempotency_key"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "request_id": {
              "type": "string"
            },
            "state_version": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "vertical_id": {
              "type": "string"
            },
            "vertical_introduction": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                },
                "presentation_order": {
                  "type": "string",
                  "const": "lead_same_message"
                },
                "present_once": {
                  "type": "boolean",
                  "const": true
                }
              },
              "required": [
                "message",
                "presentation_order",
                "present_once"
              ],
              "additionalProperties": false
            },
            "user_stage": {
              "type": "string",
              "enum": [
                "intake",
                "matching",
                "confirmation"
              ]
            },
            "known_fields": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "field_batch": {
              "type": "object",
              "properties": {
                "required": {
                  "type": "array",
                  "items": {}
                },
                "conditionally_required": {
                  "type": "array",
                  "items": {}
                },
                "optional": {
                  "type": "array",
                  "items": {}
                }
              },
              "required": [
                "required",
                "conditionally_required",
                "optional"
              ],
              "additionalProperties": {}
            },
            "next_action": {
              "type": "string"
            }
          },
          "required": [
            "request_id",
            "state_version",
            "vertical_id",
            "user_stage",
            "known_fields",
            "field_batch",
            "next_action"
          ],
          "additionalProperties": {}
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟡update_service_request(request_id, expected_state_version, answers, explicitly_unknown_field_ids, idempotency_key)

Use this for the user's partial response to the current intake or matching batch. Pass only values the user supplied plus selected_time_key when chosen. Fields absent from answers are treated as omitted for that prompt batch; optional and conditionally required omissions do not block progress. Always pass the latest expected_state_version.

输入模式

{
  "type": "object",
  "properties": {
    "request_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    },
    "expected_state_version": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "answers": {
      "default": {},
      "type": "object",
      "properties": {
        "zip_code": {
          "description": "ZIP. Use the exact key zip_code."
        },
        "appliance_type": {
          "description": "Appliance type. Use the exact key appliance_type."
        },
        "brand": {
          "description": "Brand. Use the exact key brand."
        },
        "model": {
          "description": "Model. Use the exact key model."
        },
        "problem_description": {
          "description": "Problem. Use the exact key problem_description."
        },
        "selected_time_key": {
          "description": "Exact time key returned by MCP Near Me after the user chooses an arrival window.",
          "type": "string",
          "minLength": 1
        }
      },
      "additionalProperties": false
    },
    "explicitly_unknown_field_ids": {
      "default": [],
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 120
      }
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    }
  },
  "required": [
    "request_id",
    "expected_state_version",
    "idempotency_key"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "request_id": {
              "type": "string"
            },
            "state_version": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "vertical_id": {
              "type": "string"
            },
            "vertical_introduction": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                },
                "presentation_order": {
                  "type": "string",
                  "const": "lead_same_message"
                },
                "present_once": {
                  "type": "boolean",
                  "const": true
                }
              },
              "required": [
                "message",
                "presentation_order",
                "present_once"
              ],
              "additionalProperties": false
            },
            "user_stage": {
              "type": "string",
              "enum": [
                "intake",
                "matching",
                "confirmation"
              ]
            },
            "known_fields": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "field_batch": {
              "type": "object",
              "properties": {
                "required": {
                  "type": "array",
                  "items": {}
                },
                "conditionally_required": {
                  "type": "array",
                  "items": {}
                },
                "optional": {
                  "type": "array",
                  "items": {}
                }
              },
              "required": [
                "required",
                "conditionally_required",
                "optional"
              ],
              "additionalProperties": {}
            },
            "next_action": {
              "type": "string"
            }
          },
          "required": [
            "request_id",
            "state_version",
            "vertical_id",
            "user_stage",
            "known_fields",
            "field_batch",
            "next_action"
          ],
          "additionalProperties": {}
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_service_options(request_id)

Use after intake required fields are known, or to refresh matching data. It returns live aggregated potential windows and the current refinement batch without company names. It does not select a provider or reserve capacity.

输入模式

{
  "type": "object",
  "properties": {
    "request_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    }
  },
  "required": [
    "request_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "request_id": {
              "type": "string"
            },
            "state_version": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "vertical_id": {
              "type": "string"
            },
            "vertical_introduction": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                },
                "presentation_order": {
                  "type": "string",
                  "const": "lead_same_message"
                },
                "present_once": {
                  "type": "boolean",
                  "const": true
                }
              },
              "required": [
                "message",
                "presentation_order",
                "present_once"
              ],
              "additionalProperties": false
            },
            "user_stage": {
              "type": "string",
              "enum": [
                "intake",
                "matching",
                "confirmation"
              ]
            },
            "known_fields": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "field_batch": {
              "type": "object",
              "properties": {
                "required": {
                  "type": "array",
                  "items": {}
                },
                "conditionally_required": {
                  "type": "array",
                  "items": {}
                },
                "optional": {
                  "type": "array",
                  "items": {}
                }
              },
              "required": [
                "required",
                "conditionally_required",
                "optional"
              ],
              "additionalProperties": {}
            },
            "next_action": {
              "type": "string"
            }
          },
          "required": [
            "request_id",
            "state_version",
            "vertical_id",
            "user_stage",
            "known_fields",
            "field_batch",
            "next_action"
          ],
          "additionalProperties": {}
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢render_service_request_form(request_id)

Use only when update_service_request returns next_action=render_service_request_form. It opens the one final card containing exact provider options, booking fields, policies and Confirm. Do not ask for contact PII in chat.

输入模式

{
  "type": "object",
  "properties": {
    "request_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    }
  },
  "required": [
    "request_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "request_id": {
              "type": "string"
            },
            "state_version": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "vertical_id": {
              "type": "string"
            },
            "vertical_introduction": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string"
                },
                "presentation_order": {
                  "type": "string",
                  "const": "lead_same_message"
                },
                "present_once": {
                  "type": "boolean",
                  "const": true
                }
              },
              "required": [
                "message",
                "presentation_order",
                "present_once"
              ],
              "additionalProperties": false
            },
            "user_stage": {
              "type": "string",
              "enum": [
                "intake",
                "matching",
                "confirmation"
              ]
            },
            "known_fields": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "field_batch": {
              "type": "object",
              "properties": {
                "required": {
                  "type": "array",
                  "items": {}
                },
                "conditionally_required": {
                  "type": "array",
                  "items": {}
                },
                "optional": {
                  "type": "array",
                  "items": {}
                }
              },
              "required": [
                "required",
                "conditionally_required",
                "optional"
              ],
              "additionalProperties": {}
            },
            "next_action": {
              "type": "string"
            }
          },
          "required": [
            "request_id",
            "state_version",
            "vertical_id",
            "user_stage",
            "known_fields",
            "field_batch",
            "next_action"
          ],
          "additionalProperties": {}
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟡select_service_option(request_id, expected_state_version, option_key, idempotency_key)

Use only from the final protected card when the user selects one exact provider option. It rechecks availability, releases any previous selection, creates one temporary hold for the selected company, and returns its protected booking schema. It does not create a booking.

输入模式

{
  "type": "object",
  "properties": {
    "request_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    },
    "expected_state_version": {
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "option_key": {
      "type": "string",
      "minLength": 10,
      "maxLength": 100
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    }
  },
  "required": [
    "request_id",
    "expected_state_version",
    "option_key",
    "idempotency_key"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "request_id": {
              "type": "string"
            },
            "state_version": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "option_key": {
              "type": "string"
            },
            "provider_public_name": {
              "type": "string"
            },
            "service_date": {
              "type": "string"
            },
            "arrival_window": {
              "type": "string"
            },
            "next_action": {
              "type": "string",
              "const": "complete_protected_form"
            }
          },
          "required": [
            "request_id",
            "state_version",
            "option_key",
            "provider_public_name",
            "service_date",
            "arrival_window",
            "next_action"
          ],
          "additionalProperties": {}
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🔴create_service_booking(booking_authorization_token, idempotency_key, source, campaign_id, anonymous_session_id, ...)

Use only from the protected final card with its one-time authorization after the user presses Confirm. Provider, request, hold, time and protected answers come from server context; do not pass or reconstruct them. This anonymous action completes the booking and must not trigger Connect or phone verification. Safe retries must reuse the same idempotency key.

输入模式

{
  "type": "object",
  "properties": {
    "booking_authorization_token": {
      "type": "string",
      "minLength": 32
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    },
    "source": {
      "type": "string",
      "enum": [
        "chatgpt_plugin",
        "chatgpt_ads",
        "ai_search",
        "organic_search",
        "paid_search",
        "manual_referral",
        "provider_referral",
        "direct",
        "test"
      ]
    },
    "campaign_id": {
      "type": "string",
      "maxLength": 200
    },
    "anonymous_session_id": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200
    },
    "correlation_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "booking_authorization_token",
    "idempotency_key",
    "source",
    "anonymous_session_id",
    "correlation_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "booking_id": {
              "type": "string"
            },
            "provider_public_name": {
              "type": "string"
            },
            "service_date": {
              "type": "string"
            },
            "arrival_window": {
              "type": "string"
            },
            "timezone": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "public_booking_ref": {
              "type": "string"
            },
            "account_linking": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "already_linked"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "unavailable"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "required"
                    },
                    "linking_session_id": {
                      "type": "string"
                    },
                    "expires_at": {
                      "type": "string"
                    },
                    "next_action": {
                      "type": "string",
                      "const": "complete_account_link"
                    }
                  },
                  "required": [
                    "status",
                    "linking_session_id",
                    "expires_at",
                    "next_action"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "booking_id",
            "provider_public_name",
            "service_date",
            "arrival_window",
            "timezone",
            "status"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
⚪complete_account_link(linking_session_id)

Compatibility-only completion for an explicitly initiated legacy profile-link session. Never call it as part of a new booking and never ask for an SMS code in chat. Viewing or managing an existing appointment starts Connect through the corresponding booking-management tool.

输入模式

{
  "type": "object",
  "properties": {
    "linking_session_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    }
  },
  "required": [
    "linking_session_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "linked": {
              "type": "boolean",
              "const": true
            }
          },
          "required": [
            "linked"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_my_service_bookings(status, limit)

Use immediately when the user asks to see or manage appointments. For cancellation or rescheduling, pass status='active'. Active means a confirmed or rescheduled appointment whose arrival window has not ended; past or terminal bookings are never active. If multiple active appointments are returned, show the choices instead of guessing. Connect is handled by the platform; never ask for a phone or code in chat.

输入模式

{
  "type": "object",
  "properties": {
    "status": {
      "description": "Use 'active' for cancellation or rescheduling. It returns only actionable appointments whose arrival window has not ended; omit to include history.",
      "type": "string",
      "maxLength": 40
    },
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "bookings": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "booking_id": {
                    "type": "string"
                  },
                  "provider_public_name": {
                    "type": "string"
                  },
                  "service_date": {
                    "type": "string"
                  },
                  "arrival_window": {
                    "type": "string"
                  },
                  "timezone": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string"
                  },
                  "public_booking_ref": {
                    "type": "string"
                  },
                  "is_active": {
                    "type": "boolean"
                  },
                  "is_manageable": {
                    "type": "boolean"
                  },
                  "is_past": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "booking_id",
                  "provider_public_name",
                  "service_date",
                  "arrival_window",
                  "timezone",
                  "status",
                  "public_booking_ref",
                  "is_active",
                  "is_manageable",
                  "is_past"
                ],
                "additionalProperties": false
              }
            },
            "count": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "active_count": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            }
          },
          "required": [
            "bookings",
            "count",
            "active_count"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_my_service_booking(booking_id, intent)

Open an appointment that belongs to the connected customer. This is read-only. Historical appointments have no available management actions; a current manageable appointment can provide the protected card for exact reschedule or cancellation review.

输入模式

{
  "type": "object",
  "properties": {
    "booking_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    },
    "intent": {
      "default": "view",
      "type": "string",
      "enum": [
        "view",
        "reschedule",
        "cancel"
      ]
    }
  },
  "required": [
    "booking_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "booking": {
              "type": "object",
              "properties": {
                "booking_id": {
                  "type": "string"
                },
                "provider_public_name": {
                  "type": "string"
                },
                "service_date": {
                  "type": "string"
                },
                "arrival_window": {
                  "type": "string"
                },
                "timezone": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "public_booking_ref": {
                  "type": "string"
                },
                "is_active": {
                  "type": "boolean"
                },
                "is_manageable": {
                  "type": "boolean"
                },
                "is_past": {
                  "type": "boolean"
                },
                "available_actions": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "reschedule",
                      "cancel"
                    ]
                  }
                }
              },
              "required": [
                "booking_id",
                "provider_public_name",
                "service_date",
                "arrival_window",
                "timezone",
                "status",
                "public_booking_ref",
                "is_active",
                "is_manageable",
                "is_past",
                "available_actions"
              ],
              "additionalProperties": false
            },
            "next_action": {
              "type": "string",
              "enum": [
                "view_complete",
                "choose_available_time",
                "review_cancellation"
              ]
            }
          },
          "required": [
            "booking",
            "next_action"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟡prepare_service_booking_change(booking_id, management_context_token, action, new_slot_id, idempotency_key)

Use this only from the protected management form after secure appointment access. It prepares the exact reschedule or cancellation review but does not change the booking. A reschedule accepts only a live slot returned inside the protected form and temporarily reserves that capacity. The user must separately confirm the exact preview before a write tool can run.

输入模式

{
  "type": "object",
  "properties": {
    "booking_id": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200
    },
    "management_context_token": {
      "description": "Opaque short-lived context supplied only by the protected management form.",
      "type": "string",
      "minLength": 32
    },
    "action": {
      "type": "string",
      "enum": [
        "reschedule",
        "cancel"
      ]
    },
    "new_slot_id": {
      "type": "string",
      "minLength": 32
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    }
  },
  "required": [
    "action",
    "idempotency_key"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "action": {
              "type": "string",
              "enum": [
                "reschedule",
                "cancel"
              ]
            },
            "booking_id": {
              "type": "string"
            },
            "provider_public_name": {
              "type": "string"
            },
            "service_date": {
              "type": "string"
            },
            "arrival_window": {
              "type": "string"
            },
            "timezone": {
              "type": "string"
            },
            "previous_service_date": {
              "type": "string"
            },
            "previous_arrival_window": {
              "type": "string"
            },
            "policy_text": {
              "type": "string"
            },
            "confirmation_required": {
              "type": "boolean",
              "const": true
            },
            "next_action": {
              "type": "string",
              "const": "confirm_in_protected_form"
            }
          },
          "required": [
            "action",
            "booking_id",
            "provider_public_name",
            "service_date",
            "arrival_window",
            "timezone",
            "policy_text",
            "confirmation_required",
            "next_action"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🔴reschedule_service_booking(booking_change_authorization_token, idempotency_key, source, anonymous_session_id, correlation_id)

Use this only with the one-time approval issued after the user confirms the exact reschedule inside the protected management form. It moves the existing booking to the reserved available time, preserves its prior-time history, frees the old capacity, and sends transactional notifications. Safe retries must reuse the same idempotency key.

输入模式

{
  "type": "object",
  "properties": {
    "booking_change_authorization_token": {
      "type": "string",
      "minLength": 32,
      "description": "One-time approval supplied only by the protected management form."
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    },
    "source": {
      "type": "string",
      "enum": [
        "chatgpt_plugin",
        "chatgpt_ads",
        "ai_search",
        "organic_search",
        "paid_search",
        "manual_referral",
        "provider_referral",
        "direct",
        "test"
      ]
    },
    "anonymous_session_id": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200
    },
    "correlation_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "booking_change_authorization_token",
    "idempotency_key",
    "source",
    "anonymous_session_id",
    "correlation_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "booking_id": {
              "type": "string"
            },
            "provider_public_name": {
              "type": "string"
            },
            "service_date": {
              "type": "string"
            },
            "arrival_window": {
              "type": "string"
            },
            "timezone": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "public_booking_ref": {
              "type": "string"
            },
            "account_linking": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "already_linked"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "unavailable"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "required"
                    },
                    "linking_session_id": {
                      "type": "string"
                    },
                    "expires_at": {
                      "type": "string"
                    },
                    "next_action": {
                      "type": "string",
                      "const": "complete_account_link"
                    }
                  },
                  "required": [
                    "status",
                    "linking_session_id",
                    "expires_at",
                    "next_action"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "booking_id",
            "provider_public_name",
            "service_date",
            "arrival_window",
            "timezone",
            "status"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🔴cancel_service_booking(booking_change_authorization_token, idempotency_key, source, anonymous_session_id, correlation_id)

Use this only with the one-time approval issued after the user confirms the exact cancellation inside the protected management form. It cancels only the authorized active booking, frees its capacity, and sends transactional notifications. Safe retries must reuse the same idempotency key.

输入模式

{
  "type": "object",
  "properties": {
    "booking_change_authorization_token": {
      "type": "string",
      "minLength": 32,
      "description": "One-time approval supplied only by the protected management form."
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 16,
      "maxLength": 200
    },
    "source": {
      "type": "string",
      "enum": [
        "chatgpt_plugin",
        "chatgpt_ads",
        "ai_search",
        "organic_search",
        "paid_search",
        "manual_referral",
        "provider_referral",
        "direct",
        "test"
      ]
    },
    "anonymous_session_id": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200
    },
    "correlation_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "booking_change_authorization_token",
    "idempotency_key",
    "source",
    "anonymous_session_id",
    "correlation_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "booking_id": {
              "type": "string"
            },
            "provider_public_name": {
              "type": "string"
            },
            "service_date": {
              "type": "string"
            },
            "arrival_window": {
              "type": "string"
            },
            "timezone": {
              "type": "string"
            },
            "status": {
              "type": "string"
            },
            "public_booking_ref": {
              "type": "string"
            },
            "account_linking": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "already_linked"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "unavailable"
                    }
                  },
                  "required": [
                    "status"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "const": "required"
                    },
                    "linking_session_id": {
                      "type": "string"
                    },
                    "expires_at": {
                      "type": "string"
                    },
                    "next_action": {
                      "type": "string",
                      "const": "complete_account_link"
                    }
                  },
                  "required": [
                    "status",
                    "linking_session_id",
                    "expires_at",
                    "next_action"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "required": [
            "booking_id",
            "provider_public_name",
            "service_date",
            "arrival_window",
            "timezone",
            "status"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "error": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string"
                },
                "category": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "retryable": {
                  "type": "boolean"
                },
                "correlation_id": {
                  "type": "string"
                },
                "details": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                }
              },
              "required": [
                "code",
                "category",
                "message",
                "retryable",
                "correlation_id",
                "details"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "error"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本12 个工具
观测失败未记录版本—
已验证未记录版本12 个工具