Use when user wants to add travel ideas, places, or itinerary items to Notion. Handles creating ideas (rough candidates), confirmed places, itinerary day entries, and promoting ideas to places.
Manage a Notion-backed travel planning system with three databases: Ideas (inbox), Places (confirmed), and Itinerary (daily plan).
The following environment variables must be set in the pod:
echo $NOTION_TOKEN # Should start with ntn_ or secret_
echo $NOTION_IDEAS_DB_ID
echo $NOTION_PLACES_DB_ID
echo $NOTION_ITINERARY_DB_ID
If any are missing, tell the user to set them in their Helm values under extraEnv.
The Python tool is at the skill's parent repo. Invoke it like:
echo '<JSON_PAYLOAD>' | python3 /skills/travel-skills/skills/notion-trip-manager/tool.py
Use exactly these values (case-sensitive):
Add a rough candidate to the Ideas inbox. Use when the user mentions a place casually or you discover something worth saving.
echo '{"action": "add_idea", "name": "Saryo Tsujiri", "category": "Matcha", "area": "Gion", "source": "AI", "added_by": "AI"}' | python3 /skills/travel-skills/skills/notion-trip-manager/tool.py
Required fields: action, name, category
Optional fields: area, source, added_by, confidence
Add a confirmed place with full details. Use when the user says they want to go somewhere specific.
echo '{"action": "add_place", "name": "Kiyomizu-dera", "category": "Cultural Site", "area": "Higashiyama", "latitude": 34.9949, "longitude": 135.7850, "address": "1 Chome-294 Kiyomizu, Kyoto", "google_maps_url": "https://maps.google.com/?q=34.9949,135.7850", "priority": "Must", "time_estimate_minutes": 90, "notes": "Go early to avoid crowds"}' | python3 /skills/travel-skills/skills/notion-trip-manager/tool.py
Required fields: action, name, category
Optional fields: area, latitude, longitude, address, google_maps_url, priority (Must/High/Medium/Low), time_estimate_minutes, notes
Create a day entry and optionally link an existing place by name.
echo '{"action": "add_itinerary_item", "title": "Kyoto East Day", "day": "2026-04-05", "notes": "Focus on east Kyoto", "place_name": "Kiyomizu-dera"}' | python3 /skills/travel-skills/skills/notion-trip-manager/tool.py
Required fields: action, title, day (YYYY-MM-DD)
Optional fields: area, notes, place_name (must match an existing Place name exactly)
Find an idea by name and create a place from it.
echo '{"action": "promote_idea_to_place", "idea_name": "Saryo Tsujiri", "priority": "High"}' | python3 /skills/travel-skills/skills/notion-trip-manager/tool.py
Required fields: action, idea_name
Optional fields: priority
add_idea (Ideas DB)add_place or promote_idea_to_place (Places DB)add_itinerary_item (Itinerary DB, linked to Places){"ok": true, "page_id": "..."} on success{"error": "message"} with exit code 1place_name in add_itinerary_item doesn't match any Place, the item is created without a link