Goyondo

run.goyondo由 goyondo.run 發布官方發布者v0.3.0更新於 Nov 14, 2026

Agent-native trip planner: your AI plans the trip, and Goyondo keeps it all in one place.

已驗證Streamable HTTP可網頁執行位置與生活

概覽

AI 產生的概覽

Goyondo 是面向代理的行程規劃服務,讓 AI 助理規劃旅行並把行程集中保存在一處。

可以做什麼
  • 與助理一起規劃旅行,並把產生的行程集中保存在一處
  • 可透過遠端端點使用,也可透過 stdio 執行本機 npm 套件
  • 首次使用時以 OAuth 裝置流程登入,或使用既有的 API 金鑰
  • 未公布工具清單,因此具體可執行的動作在此無法說明
適用情境
當你希望助理協助規劃旅行,並把計畫保存在專門的行程規劃服務中,而不是散落在零散筆記裡時,可以考慮使用。
執行需求
需要 Goyondo 帳號。可使用遠端端點,或本機 npm 套件 goyondo-mcp(stdio)。必須進行身分驗證:首次使用時走 OAuth 裝置流程,或透過 GOYONDO_API_KEY 提供既有的 gyd_ 金鑰。
安裝前請注意
使用需要身分驗證,伺服器可能保存 GOYONDO_API_KEY 密鑰,請妥善保管。公開資料未說明有哪些工具,也未說明是否會建立、修改或刪除行程資料,因此在讓助理寫入你的行程前請先確認可用動作。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Goyondo,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/run.goyondo%2Fgoyondo/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "goyondo": {
      "type": "http",
      "url": "https://goyondo.run/mcp"
    }
  }
}

工具

53

connect_goyondo

Connect Goyondo

Connect this assistant to the user's Goyondo account, or check the connection. Returns a sign-in link for the user to approve when not connected. Other Goyondo tools start the same sign-in automatically, so call this only when the user asks to connect, or to confirm the connection after they approve.

無需輸入參數。

describe_capabilities

Describe capabilities

Describe available Goyondo agent capabilities, including input schemas, enum values, and supported interfaces. Use this for introspection before calling other capabilities.

輸入參數namecapability

get_schema

Get capability schema

Return the JSON input schema for one Goyondo capability, or all schemas if no capability is provided.

輸入參數namecapability

list_trips

List trips

List trips for the authenticated user, newest first. Returns trip id, destination, dates and status. Pages with limit and offset: when has_more is true, call again with offset set to next_offset.

輸入參數limitoffset

get_trip

Get trip

Get a single trip by id including full itinerary (days and activities). trip.origin is where the trip starts and trip.journey the estimated flight hours and time difference (estimates; say "about").

輸入參數trip_id必填

create_trip

Create trip

Create a new trip and optionally generate an AI itinerary, which can take up to a few minutes. Returns the created trip and itinerary. Pass fixed_plans for tickets, reservations and must-sees. To write the itinerary yourself, pass skip_ai_generation: true and then call save_itinerary with all the days in one call.

輸入參數originchildrenend_date必填timezoneintereststravelersstart_date必填destination必填fixed_plansarrival_timetravel_stylegroupTripCode另有 5 個

update_trip

Update trip

Update trip metadata such as dates, title, traveler count, budget, or status. When start_date or end_date changes, the response includes itinerary_dates showing the first and last day dates after the shift — verify these match your intended dates before proceeding.

輸入參數notestitleoriginstatustrip_id必填childrencurrencyend_datetravelersstart_datedestinationarrival_time另有 7 個

regenerate_itinerary

Regenerate itinerary

Regenerate the AI itinerary for an existing trip. Replaces AI suggestions only: fixed plans and activities the user or an agent added or edited are kept, and removed activities are not suggested again.

輸入參數trip_id必填

add_activity

Add activity

Add an activity to a trip. To assign to a specific day use itinerary_id (UUID from get_trip itinerary days — most reliable), date (YYYY-MM-DD), or day_number (1-based). If none are provided the activity lands on Day 1. The result includes warnings (duplicates, time overlaps) for the new activity; fix them or tell the user. To add several activities, use save_itinerary.

輸入參數whydatenotestitle必填addresstrip_id必填end_timelocationmetadatapriorityday_numberstart_time另有 6 個

update_activity

Update activity

Update an existing activity. All fields except trip_id and activity_id are optional. The result includes warnings (duplicates, time overlaps) involving the activity. Changing anything other than status marks the activity as the user's, so regenerate_itinerary keeps it.

輸入參數whydatenotestitleaddresstrip_id必填end_timelocationmetadatapriorityday_numberstart_time另有 6 個

save_itinerary

Save itinerary

Save an itinerary you wrote to an existing trip in one call: every day and its activities. Use it after create_trip with skip_ai_generation: true, or to add to a trip. Give each activity a why (and matches_preference when it serves a stated interest) so the user sees why it is in their plan. Append only: existing activities are kept, so call get_trip first and do not resend them. All activities are checked before anything is saved; if any is invalid nothing is saved and the error lists each problem. The result includes warnings (duplicates, time overlaps, repeats across days). Fix them with update_activity or delete_activity, then call get_trip_alerts. Limits: 31 days, 20 activities per day, 150 activities per call.

輸入參數days必填trip_id必填

list_activities

List activities

List all activities for a trip as a flat array.

輸入參數trip_id必填

search_places

Search places

Find a venue by name and return matching places with their place_id, for use in create_trip fixed_plans.

輸入參數query必填

get_trip_alerts

Get trip alerts

Check a trip's plan and return its alerts: venues closed or outside opening hours, public holidays, too much travel or backtracking, duplicates, time overlaps, pace, and fixed plans that clash, leave too little travel time, fall outside the trip or could not be placed. Each alert has a scope (activity, day or trip) and affected_activity_ids: the activities it is about, every activity on that day for a day alert, or an empty list for a trip alert. Call it after you finish editing an itinerary and fix or report what it finds. Read-only.

輸入參數modetrip_id必填

delete_activity

Delete activity

Delete an activity from a trip. Regeneration will not suggest it again. If the activity belongs to a fixed plan, that day is removed from the plan, or the whole plan if it was the last day.

輸入參數trip_id必填activity_id必填

get_user_preferences

Get travel preferences

Get the authenticated user's travel preferences (interests, dietary, accessibility, etc.). home_base is where they usually travel from (city and airport), or null.

無需輸入參數。

list_itinerary_segments

List itinerary segments

List the bookings saved on a trip: flights, hotel stays, transport (trains, buses, ferries, car rentals, transfers), restaurant reservations, attraction tickets and tours, and legacy meetings. They usually come from forwarded or pasted confirmations. Works on any trip; an empty list means none were added.

輸入參數trip_id必填

get_trip_document

Get trip document

Get a document saved on a trip, such as a boarding pass or booking PDF, by id or by name (e.g. boarding pass for flight SQ321). Works on any trip.

輸入參數nametrip_id必填document_id

get_trip_expense_summary

Get trip expense summary

Get the expense summary for a business trip (trip_mode: business), for expense reports. Do not use it for leisure trips.

輸入參數trip_id必填

submit_group_preferences

Submit group trip preferences

Submit group trip preferences for alignment (Group Harmony). Use trip_code from the share link. The caller must already be a member (call join_group_trip first). Canonical preferences shape (all keys optional, but alignment only reconciles dates, destination, and budget): dates: { ideal_start: "YYYY-MM-DD", ideal_end: "YYYY-MM-DD", flexibility_days: integer, blackout_dates: ["YYYY-MM-DD"] } destination: { top_choices: ["City, Country", ...], veto: ["City, Country", ...] } budget: { min: number, max: number } — MUST be an object. A scalar budget (e.g. 2000) is ignored by alignment and treated as 0. accommodation: string activities: [string, ...] Full example: {"dates":{"ideal_start":"2026-04-10","ideal_end":"2026-04-17","flexibility_days":3,"blackout_dates":["2026-04-13"]}, "destination":{"top_choices":["Tokyo, Japan","Osaka, Japan"],"veto":["Bangkok, Thailand"]}, "budget":{"min":1500,"max":2500},"accommodation":"hotel","activities":["food tours","museums"]} Response echoes trip_code and join_url so agents can persist context.

輸入參數trip_code必填preferences必填

submit_group_inspiration

Add to group inspiration board

Submit a link, raw text, or explicit place to a group inspiration board. Use trip_code from the group share link. Provide exactly one of url, text, or place.

輸入參數urltextplacetrip_code必填

get_group_board

Get group inspiration board

Get the collaborative inspiration board for a group trip, including candidates, reactions, review lane, and readiness signals. readiness signals report whether the board is ready to generate an itinerary, evaluated against readiness_policy: alignment_min_score (number) — required alignment_score before generation min_locked_in_places (integer) — how many "locked_in" candidates are required unresolved_splits / failed_imports / review_candidates — each "block" | "warn" | "ignore" creator_override (boolean) — when true, blockers become warnings The response carries ready (boolean), blockers[], warnings[], and counts. The creator sets readiness_policy on the group trip page in Goyondo.

輸入參數trip_code必填

react_to_place

React to a place

Vote on a place candidate in a group inspiration board. Agent votes are advisory until the human member confirms them.

輸入參數vote必填reasonstarredtrip_code必填candidate_id必填

update_place_candidate

Edit place candidate

Edit or ignore a review-lane place candidate on a group inspiration board. Agents cannot use action="confirm" (403): a human member confirms the place in Goyondo, which makes it binding. An agent edit corrects the fields and leaves the place in review.

輸入參數citynameblurbaction必填categorytrip_code必填candidate_id必填neighborhood

update_user_preferences

Update travel preferences

Update the authenticated user's travel preferences. Only the fields you send change. You cannot set the home base: if the user asks, pass home_base and Goyondo returns confirmation_required with a confirm_url; give that link to the user so they confirm it in the app. Nothing is saved until they do.

輸入參數home_baseinterestsbudget_rangetravel_styledefault_childrenaccommodation_typeaccessibility_needsdietary_restrictionspreferred_destinations

create_group_trip

Create group trip

Create a new group trip. Returns trip_code and join_url that members use to join. The caller becomes the creator (and default lead agent). Agent actions on this trip are attributed to the creating member.

輸入參數titlebudget_maxbudget_mintentative_datesdestination_options

list_group_trips

List group trips

List all group trips the authenticated user belongs to. Returns an array of { trip_code, status, role, title, id, ... }. role is one of "creator" or "member". Requires the group_trips:read scope.

無需輸入參數。

delete_group_trip

Delete group trip

Delete a group trip and its members, preferences, and alignment data. Creator only — other members receive a 403. Members are not notified; a generated itinerary is kept. Requires the group_trips:write scope.

輸入參數trip_code必填

join_group_trip

Join group trip

Join an existing group trip using its trip_code.

輸入參數trip_code必填

get_group_trip

Get group trip

Get a group trip by its trip_code, including members and current preferences. Call join_group_trip first if the user has not joined; otherwise this returns 403 not_a_member.

輸入參數trip_code必填

run_alignment

Run group alignment

Trigger Group Harmony alignment — AI reconciles all member preferences (only dates, destination, and budget are reconciled) and produces a consensus plan. Lead agent only. Each call runs the next round; the default max is 2 rounds before the trip moves to escalation_pending (the creator can then call extend-rounds). Every round sets a response_deadline 48h out; the next round can run once every member has responded or that deadline has passed (before then it returns 409 round_still_open with pending_members). Members still silent after the deadline are auto-accepted and returned in timed_out_members.

輸入參數trip_code必填

get_alignment

Get group alignment

Get the latest Group Harmony alignment result for a group trip: consensus_items, conflicts, proposed_destination, proposed_dates, round_number, response_deadline (48h per round), and alignment_score (20/45/70/95 for 0/1/2/3 of dates+destination+budget reconciled). Use get_alignment_history for every round with each member's response, plus pending and timed-out members.

輸入參數trip_code必填

list_proposals

List change proposals

List pending change proposals for a trip (editors and owners only).

輸入參數trip_id必填

approve_proposal

Approve change proposal

Approve a pending change proposal on a trip.

輸入參數trip_id必填proposal_id必填

reject_proposal

Reject change proposal

Reject a pending change proposal on a trip.

輸入參數trip_id必填proposal_id必填

get_edit_log

Get trip edit log

Get the edit history for a trip, including agent and human changes.

輸入參數trip_id必填

set_user_preference

Record a travel preference

Record a travel preference on behalf of the authenticated user. Use this when the user states a preference during conversation (e.g. "I prefer window seats", "I am vegetarian", "I like boutique hotels"). The preference is stored as a signal and their AI travel profile is updated automatically.

輸入參數type必填value必填confidence

get_preference_profile

Get travel preference profile

Get the authenticated user's AI-rendered travel preference profile (full markdown doc). Useful before creating a trip or making personalised recommendations.

無需輸入參數。

update_day_notes

Update day notes

Set or replace the notes for a specific itinerary day. Day notes are free-text and visible in the travel view. Use this to record how a day went, note plan deviations, or add context for a day. Provide either itinerary_id (the day's UUID from get_trip, the same id add_activity uses) or day_number (1-based integer); itinerary_id is preferred when available.

輸入參數notes必填day_idtrip_id必填day_numberitinerary_id

delete_trip

Delete trip

Permanently delete a trip and its itinerary. Only for trips the user owns. Ask the user first, then pass confirm: true; without it nothing is deleted.

輸入參數confirm必填trip_id必填

list_fixed_plans

List fixed plans

List a trip's fixed plans (tickets, reservations and must-sees the itinerary is built around), with their ids and any clashes between them.

輸入參數trip_id必填

add_fixed_plan

Add fixed plan

Add a fixed plan (ticket, reservation or must-see) to an existing trip. Ask the user for the place and timing; never guess them. Get place_id from search_places. Clashes are reported by get_trip_alerts; existing activities are never overwritten.

輸入參數citytitle必填timing必填trip_id必填categoryplace_idsessions

update_fixed_plan

Update fixed plan

Replace a fixed plan with new details. Send the whole plan (title, timing, place and sessions), not just the changed fields; get the current values from list_fixed_plans.

輸入參數citytitle必填timing必填trip_id必填categoryplace_idsessionsfixed_plan_id必填

delete_fixed_plan

Delete fixed plan

Remove a fixed plan from a trip.

輸入參數trip_id必填fixed_plan_id必填

respond_to_alignment

Respond to group alignment

Respond to an open Group Harmony alignment round for the user. decision: accept, reject or partial_accept; feedback is required for reject and partial_accept. A human member's own response overrides their agent's. Get round_id from get_alignment or get_alignment_history.

輸入參數decision必填feedbackround_id必填trip_code必填accepted_components

extend_alignment_rounds

Extend alignment rounds

Give a Group Harmony trip more alignment rounds after it reaches escalation_pending. Creator only.

輸入參數trip_code必填additional_rounds必填

get_alignment_history

Get alignment history

Get every Group Harmony alignment round for a group trip with each member's response, plus the current round's status: who has responded, who is pending and who timed out.

輸入參數trip_code必填

get_inspiration

Get destination inspiration

Get destination ideas from Goyondo's Inspiration page. view: featured (editor picks), trending, hidden_gems (reviewed lesser-known places) or calendar (where to go by month). Use it when the user has not picked a destination.

輸入參數view必填limit

list_community_itineraries

Browse community itineraries

Browse published itineraries shared by Goyondo travelers in the Community Hub, newest first. Filter by destination, month, pace or interests. Use get_community_itinerary for the full day-by-day plan.

輸入參數pacelimitmonthoffsetinterestsdestination

get_community_itinerary

Get community itinerary

Get one published Community Hub itinerary with its day-by-day plan. The user can adapt it into their own trip with create_trip and save_itinerary.

輸入參數listing_id必填

版本歷史

1
  1. v0.3.0最新Nov 14, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Goyondo 整合