tripinned-mcp 1.0.15 → 1.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +9 -3
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -48,7 +48,7 @@ Tripinned trip planning rules:
|
|
|
48
48
|
- Each item belongs to exactly one day; do not split a single event across multiple days.
|
|
49
49
|
- When adding flight segments, group the full route (origin → stopover → destination) as one item if the user is just passing through.
|
|
50
50
|
- To show an item in the route map, set show_on_route to true. For place items, provide either lat/lng for a single location or locations for up to 10 ordered place stops. For flights, provide origin/destination IATA codes in from_place and to_place; no separate coordinates are needed. For non-flight transport, provide from_place/from_lat/from_lng and/or to_place/to_lat/to_lng.
|
|
51
|
-
- Hotel stays
|
|
51
|
+
- Hotel stays must use icon HOTEL with check-in in start_time, check-out in end_time, and end_day_offset for the check-out day. The API creates a check-in/check-out group with one shared groupId; add_item returns the check-in item and get_trip shows both items.
|
|
52
52
|
`.trim(),
|
|
53
53
|
});
|
|
54
54
|
// ── Trips ────────────────────────────────────────────────────────────────────
|
|
@@ -109,6 +109,7 @@ server.tool("add_item", `특정 Day에 일정을 추가합니다. Day당 최대
|
|
|
109
109
|
trip_id: z.string().describe("플랜 ID"),
|
|
110
110
|
day_id: z.string().describe("Day ID (get_trip으로 확인 가능)"),
|
|
111
111
|
title: z.string().max(50).describe("일정 제목 (최대 50자)"),
|
|
112
|
+
order: z.coerce.number().int().min(0).optional().describe("Day 안에서의 일정 순서 (0부터 시작)"),
|
|
112
113
|
icon: z.string().optional().describe("아이콘 (FOOD|CAFE|HOTEL|SIGHTSEEING|SHOPPING|ACTIVITY|ETC|TRANSPORT|PLANE|TRAIN|BUS|CAR|BOAT|WALK|TRANSPORT_ETC, 기본값: ETC)"),
|
|
113
114
|
start_time: z.string().optional().describe("시작 시간 (HH:MM)"),
|
|
114
115
|
end_time: z.string().optional().describe("종료 시간 (HH:MM)"),
|
|
@@ -141,8 +142,10 @@ server.tool("add_item", `특정 Day에 일정을 추가합니다. Day당 최대
|
|
|
141
142
|
.optional()
|
|
142
143
|
.describe('경유지 JSON 배열 (항공편 전용). 필드: iata, tz, arrTime(HH:MM), arrOffset, depTime(HH:MM), depOffset, depFlightNo?, airportChange?, depIata?, depTz?'),
|
|
143
144
|
flight_no: z.string().optional().describe("항공편 번호 (예: KE447)"),
|
|
144
|
-
}, async ({ trip_id, day_id, title, icon, start_time, end_time, end_day_offset, place, lat, lng, locations, timezone, show_on_route, memo, from_place, from_lat, from_lng, to_place, to_lat, to_lng, layovers, flight_no, }) => {
|
|
145
|
+
}, async ({ trip_id, day_id, title, order, icon, start_time, end_time, end_day_offset, place, lat, lng, locations, timezone, show_on_route, memo, from_place, from_lat, from_lng, to_place, to_lat, to_lng, layovers, flight_no, }) => {
|
|
145
146
|
const body = { title };
|
|
147
|
+
if (order !== undefined)
|
|
148
|
+
body.order = order;
|
|
146
149
|
if (icon)
|
|
147
150
|
body.icon = icon;
|
|
148
151
|
if (start_time)
|
|
@@ -189,6 +192,7 @@ server.tool("update_item", "일정을 수정합니다. 변경할 필드만 보
|
|
|
189
192
|
day_id: z.string().describe("Day ID"),
|
|
190
193
|
item_id: z.string().describe("일정 ID"),
|
|
191
194
|
title: z.string().max(50).optional().describe("새 제목"),
|
|
195
|
+
order: z.coerce.number().int().min(0).optional().describe("Day 안에서의 일정 순서 (0부터 시작)"),
|
|
192
196
|
icon: z.string().optional().describe("아이콘 (FOOD|CAFE|HOTEL|SIGHTSEEING|SHOPPING|ACTIVITY|ETC|TRANSPORT|PLANE|TRAIN|BUS|CAR|BOAT|WALK|TRANSPORT_ETC)"),
|
|
193
197
|
start_time: z.string().optional().describe("시작 시간 (HH:MM)"),
|
|
194
198
|
end_time: z.string().optional().describe("종료 시간 (HH:MM)"),
|
|
@@ -223,10 +227,12 @@ server.tool("update_item", "일정을 수정합니다. 변경할 필드만 보
|
|
|
223
227
|
.optional()
|
|
224
228
|
.describe('경유지 JSON 배열 (항공편 전용). 필드: iata, tz, arrTime(HH:MM), arrOffset, depTime(HH:MM), depOffset, depFlightNo?, airportChange?, depIata?, depTz?. null로 초기화 가능'),
|
|
225
229
|
flight_no: z.string().optional().describe("항공편 번호 (예: KE447)"),
|
|
226
|
-
}, async ({ trip_id, day_id, item_id, title, icon, start_time, end_time, end_day_offset, place, lat, lng, locations, timezone, show_on_route, memo, from_place, from_lat, from_lng, to_place, to_lat, to_lng, layovers, flight_no, }) => {
|
|
230
|
+
}, async ({ trip_id, day_id, item_id, title, order, icon, start_time, end_time, end_day_offset, place, lat, lng, locations, timezone, show_on_route, memo, from_place, from_lat, from_lng, to_place, to_lat, to_lng, layovers, flight_no, }) => {
|
|
227
231
|
const body = {};
|
|
228
232
|
if (title !== undefined)
|
|
229
233
|
body.title = title;
|
|
234
|
+
if (order !== undefined)
|
|
235
|
+
body.order = order;
|
|
230
236
|
if (icon !== undefined)
|
|
231
237
|
body.icon = icon;
|
|
232
238
|
if (start_time !== undefined)
|