Skip to main content
Glama

Server Details

Travel notebook your AI agent writes from your photos and remarks over MCP.

Ownership verified

The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
Uptime
48.5% over 59 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP
URL

TDQS

B3.3/5.0

Scored across 59 tools

Disambiguation3/5

The set contains many parallel resource families (experience/memory CRUD, trip state/context/profile, share/upload links, wrapped tools) that are conceptually distinct but easy to confuse. Descriptions are detailed, but the breadth of 59 tools makes misselection likely, especially between near-identical create/get/update/review pairs for experiences and memories.

Naming Consistency3/5

Names are mostly snake_case and often follow verb_noun patterns (create_trip, get_timeline, update_media), but there are notable deviations like account_status, search, learn, and inconsistent wrapped naming (get_trip_wrapped, publish_trip_wrapped, save_trip_wrapped, manage_wrapped_link). The convention is readable but not uniform.

Tool Count1/5

59 tools is far beyond a typical well-scoped toolset and creates a heavy surface for any agent. While the domain is broad, many operations are specialized variants of the same lifecycle, so the count feels excessive and harmful to coherence.

Completeness4/5

The surface covers trips, timeline blocks, media, people, knowledge, recall, sharing, uploads, wrapped publishing, search, transcription, and account upgrade, which is unusually complete. Some lifecycle gaps remain (e.g., no clear delete/archive for trips, media, or blocks), but core workflows are covered.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 11 tool updates
    • Changedcapture_remark1 field changed
      • addedInput schema / properties / confirmation_reason
        Added value: +{
        +  "description": "Nonblank owner confirmation for selected identity; required when correcting identity. (must not be empty, at most 2000 characters)",
        +  "type": "string"
        +}
    • Changedconfirm_upload1 field changed
      • addedInput schema / properties / confirmation_reason
        Added value: +{
        +  "description": "Explicit owner confirmation for selected contributor_person_id, which must be supplied together with this reason; does not identify photographer or depicted people. (must not be empty, at most 2000 characters)",
        +  "type": "string"
        +}
    • Changedcreate_person2 fields changed
      • addedInput schema / properties / alias_records
        Added value: +{
        +  "description": "(at most 20 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alias": {
        +        "description": "(must not be empty, at most 100 characters)",
        +        "type": "string"
        +      },
        +      "confirmation_reason": {
        +        "description": "(must not be empty, at most 1000 characters)",
        +        "type": "string"
        +      },
        +      "expected_version": {
        +        "description": "(≥1)",
        +        "type": "integer"
        +      },
        +      "id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "scope": {
        +        "enum": [
        +          "global",
        +          "trip"
        +        ],
        +        "type": "string"
        +      },
        +      "source": {
        +        "enum": [
        +          "user_confirmed",
        +          "imported",
        +          "agent_inferred"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "enum": [
        +          "confirmed",
        +          "candidate",
        +          "rejected"
        +        ],
        +        "type": "string"
        +      },
        +      "trip_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "alias",
        +      "scope",
        +      "source",
        +      "status"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / request_key
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedcreate_upload_link1 field changed
      • addedInput schema / properties / request_key
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedfile_remark2 fields changed
      • addedInput schema / properties / confirmation_reason
        Added value: +{
        +  "description": "Nonblank owner confirmation for selected identity; required when correcting identity. (must not be empty, at most 2000 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / expected_source_version
        Added value: +{
        +  "description": "Required observed semantic source version for unlinked identity correction. (≥1)",
        +  "type": "integer"
        +}
    • Changedget_person1 field changed
      • addedInput schema / properties / trip_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedlist_people1 field changed
      • addedInput schema / properties / trip_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Addedrebind_person_attribution
    • Changedset_trip_people1 field changed
      • addedInput schema / properties / participants / items / properties / display_name_snapshot
        Added value: +{
        +  "description": "(must not be empty, at most 100 characters)",
        +  "type": "string"
        +}
    • Changedupdate_media2 fields changed
      • addedInput schema / properties / confirmation_reason
        Added value: +{
        +  "description": "Required nonblank owner reason for identity correction. (must not be empty, at most 2000 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / expected_source_version
        Added value: +{
        +  "description": "Required observed semantic source version for unlinked identity correction. (≥1)",
        +  "type": "integer"
        +}
    • Changedupdate_person1 field changed
      • addedInput schema / properties / alias_records
        Added value: +{
        +  "description": "(at most 20 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "alias": {
        +        "description": "(must not be empty, at most 100 characters)",
        +        "type": "string"
        +      },
        +      "confirmation_reason": {
        +        "description": "(must not be empty, at most 1000 characters)",
        +        "type": "string"
        +      },
        +      "expected_version": {
        +        "description": "(≥1)",
        +        "type": "integer"
        +      },
        +      "id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "scope": {
        +        "enum": [
        +          "global",
        +          "trip"
        +        ],
        +        "type": "string"
        +      },
        +      "source": {
        +        "enum": [
        +          "user_confirmed",
        +          "imported",
        +          "agent_inferred"
        +        ],
        +        "type": "string"
        +      },
        +      "status": {
        +        "enum": [
        +          "confirmed",
        +          "candidate",
        +          "rejected"
        +        ],
        +        "type": "string"
        +      },
        +      "trip_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "alias",
        +      "scope",
        +      "source",
        +      "status"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  2. 4 tool updates
    • Changedget_trip_state1 field changed
      • addedInput schema / properties / knowledge_source_cursor
        Added value: +{
        +  "description": "(must not be empty, at most 100000 characters)",
        +  "type": "string"
        +}
    • Changedlist_experiences1 field changed
      • changedInput schema / properties / person_id / description
        Previous value: -"(must not be empty, at most 200 characters)"New value: +"Stable account-owned person ID; filters recorded Experience participants. Trip attendance alone does not match. (must not be empty, at most 200 characters)"
    • Changedlist_memories1 field changed
      • changedInput schema / properties / person_id / description
        Previous value: -"(must not be empty, at most 200 characters)"New value: +"Stable account-owned person ID; filters the Memory subject, not its speaker or author. (must not be empty, at most 200 characters)"
    • Changedrecord_trip_review4 fields changed
      • addedInput schema / properties / reviews / items / properties / knowledge / properties / decisions / items / properties / attribution_status
        Added value: +{
        +  "description": "confirmed has subjects; unresolved has no confirmed subject and permits only skipped; not_personal permits Experience without subjects.",
        +  "enum": [
        +    "confirmed",
        +    "unresolved",
        +    "not_personal"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / reviews / items / properties / knowledge / properties / decisions / items / properties / statement
        Added value: +{
        +  "description": "(must not be empty, at most 2000 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / reviews / items / properties / knowledge / properties / decisions / items / properties / subject_person_ids
        Added value: +{
        +  "description": "Confirmed subjects: Memory at most one person; Experience all confirmed recorded participants. Never infer identity from photo uploaders or unanswered/unverified Recall. (at most 50 items)",
        +  "items": {
        +    "description": "(must not be empty, at most 200 characters)",
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / reviews / items / properties / knowledge / properties / source_coverage
        Added value: +{
        +  "description": "Explicit source audit, at most 100 records per resumable batch. Optional for legacy compatibility; absent or empty coverage never establishes completion. (at most 100 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "candidate_keys": {
        +        "description": "(at most 50 items)",
        +        "items": {
        +          "description": "(must not be empty, at most 200 characters)",
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "checked_person_ids": {
        +        "description": "People considered for this source, including attributed Remark speaker as a hint and separately confirmed candidate subjects; speaker is not automatically fact subject. (at most 50 items)",
        +        "items": {
        +          "description": "(must not be empty, at most 200 characters)",
        +          "type": "string"
        +        },
        +        "type": "array"
        +      },
        +      "reason": {
        +        "description": "(must not be empty, at most 1000 characters, must match \\S)",
        +        "type": "string"
        +      },
        +      "result": {
        +        "enum": [
        +          "candidates",
        +          "no_candidates",
        +          "needs_attribution"
        +        ],
        +        "type": "string"
        +      },
        +      "source_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "source_kind": {
        +        "enum": [
        +          "trip",
        +          "media",
        +          "remark",
        +          "block",
        +          "recall_answer"
        +        ],
        +        "type": "string"
        +      },
        +      "source_signature": {
        +        "description": "(must match ^[a-f0-9]{64}$)",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "source_kind",
        +      "source_id",
        +      "source_signature",
        +      "result",
        +      "checked_person_ids",
        +      "candidate_keys",
        +      "reason"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  3. 2 tool updates
    • Changedget_trip_state2 fields changed
      • addedInput schema / properties / affected_sources
        Added value: +{
        +  "description": "(at least 1 item, at most 100 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "source_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "source_kind": {
        +        "enum": [
        +          "trip",
        +          "media",
        +          "remark",
        +          "block"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "source_kind",
        +      "source_id"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / knowledge_review_cursor
        Added value: +{
        +  "description": "(must not be empty, at most 100000 characters)",
        +  "type": "string"
        +}
    • Changedrecord_trip_review2 fields changed
      • addedInput schema / properties / affected_sources
        Added value: +{
        +  "description": "(at least 1 item, at most 100 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "source_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "source_kind": {
        +        "enum": [
        +          "trip",
        +          "media",
        +          "remark",
        +          "block"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "source_kind",
        +      "source_id"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / reviews / items / properties / payload / properties / maintenance_deferred
        Added value: +{
        +  "description": "(at most 100 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "expected_version": {
        +        "description": "(≥1)",
        +        "type": "integer"
        +      },
        +      "id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "kind": {
        +        "enum": [
        +          "experience",
        +          "memory"
        +        ],
        +        "type": "string"
        +      },
        +      "reason": {
        +        "description": "(must not be empty, at most 1000 characters, must match \\S)",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "kind",
        +      "id",
        +      "expected_version",
        +      "reason"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
  4. 1 tool update
    • Changedrecord_trip_review3 fields changed
      • changedInput schema / properties / reviews / items / properties / outcome / description
        Previous value: -"(at most 100 characters)"New value: +"timeline: organised, unchanged, no_material; recall_prompt: offered, existing_sufficient, no_useful_question, user_declined; recall_answers: incorporated, no_relevant_change, needs_attribution, no_answers; knowledge: evaluated; discoveries: published, updated, still_valid, insufficient_evidence, user_declined"
      • addedInput schema / properties / reviews / items / properties / outcome / enum
        Added value: +[
        +  "organised",
        +  "unchanged",
        +  "no_material",
        +  "offered",
        +  "existing_sufficient",
        +  "no_useful_question",
        +  "user_declined",
        +  "incorporated",
        +  "no_relevant_change",
        +  "needs_attribution",
        +  "no_answers",
        +  "evaluated",
        +  "published",
        +  "updated",
        +  "still_valid",
        +  "insufficient_evidence"
        +]
      • changedInput schema / properties / reviews / items / properties / reason / description
        Previous value: -"(must not be empty, at most 1000 characters)"New value: +"Non-blank explanation of the actual checks and evidence; free text, not an outcome code. (must not be empty, at most 1000 characters, must match \\S)"
  5. 4 tool updates
    • Removedget_knowledge_evaluation
    • Changedget_trip_state7 fields changed
      • addedInput schema / properties / detail_limit
        Added value: +{
        +  "description": "(≥1, ≤100)",
        +  "type": "integer"
        +}
      • addedInput schema / properties / include
        Added value: +{
        +  "description": "(at most 2 items)",
        +  "items": {
        +    "enum": [
        +      "knowledge_details",
        +      "recall_details"
        +    ],
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / knowledge_exclusion_cursor
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / recall_cursor
        Added value: +{
        +  "description": "(must not be empty, at most 1000 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / request_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
      • addedInput schema / properties / scope
        Added value: +{
        +  "enum": [
        +    "organise",
        +    "targeted"
        +  ],
        +  "type": "string"
        +}
      • addedInput schema / properties / steps
        Added value: +{
        +  "description": "(at least 1 item, at most 5 items)",
        +  "items": {
        +    "enum": [
        +      "timeline",
        +      "recall_prompt",
        +      "recall_answers",
        +      "knowledge",
        +      "discoveries"
        +    ],
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Removedrecord_knowledge_evaluation
    • Addedrecord_trip_review
  6. 5 tool updates
    • Addedget_knowledge_evaluation
    • Changedmanage_wrapped_link1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Unique operation key. Reuse only for an identical retry; replay never recovers a bearer URL. (must not be empty)"New value: +"Unique operation key. Reuse only for an identical retry; replay never recovers independent Wrapped capability tokens. Save/publish may resolve a currently valid unified Trip URL. (must not be empty)"
    • Changedpublish_trip_wrapped2 fields changed
      • changedInput schema / properties / expires_at / description
        Previous value: -"Future UTC milliseconds; null means indefinite share. Preview requires a future time within 30 days."New value: +"Legacy retries only. Omit for new publication requests: publishing only updates content. Manage link expiry through explicit sharing operations."
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Unique operation key. Reuse only for an identical retry; replay never recovers a bearer URL. (must not be empty)"New value: +"Unique operation key. Reuse only for an identical retry; replay never recovers independent Wrapped capability tokens. Save/publish may resolve a currently valid unified Trip URL. (must not be empty)"
    • Addedrecord_knowledge_evaluation
    • Changedsave_trip_wrapped3 fields changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Unique operation key. Reuse only for an identical retry; replay never recovers a bearer URL. (must not be empty)"New value: +"Unique operation key. Reuse only for an identical retry; replay never recovers independent Wrapped capability tokens. Save/publish may resolve a currently valid unified Trip URL. (must not be empty)"
      • addedInput schema / properties / mode
        Added value: +{
        +  "description": "Default publish saves and publishes in one operation; preview explicitly saves without publishing.",
        +  "enum": [
        +    "publish",
        +    "preview"
        +  ],
        +  "type": "string"
        +}
      • changedInput schema / properties / preview_expires_at / description
        Previous value: -"Future UTC milliseconds, within 30 days; first preview only. Default seven days."New value: +"Only with mode=preview: future UTC milliseconds within 30 days; first preview only. Default seven days."
  7. 5 tool updates
    • Addedget_trip_wrapped
    • Changedlearn1 field changed
      • changedInput schema / properties / topic / description
        Previous value: -"One of: recall | people | knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."New value: +"One of: wrapped | recall | people | knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."
    • Addedmanage_wrapped_link
    • Addedpublish_trip_wrapped
    • Addedsave_trip_wrapped
  8. 4 tool updates
    • Addedcreate_recall_questionnaire
    • Addedget_recall_answers
    • Addedget_recall_questionnaire
    • Changedlearn1 field changed
      • changedInput schema / properties / topic / description
        Previous value: -"One of: people | knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."New value: +"One of: recall | people | knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."
  9. 28 tool updates
    • Addedarchive_person
    • Changedcapture_remark1 field changed
      • addedInput schema / properties / speaker_person_id
        Added value: +{
        +  "description": "(must not be empty)",
        +  "type": "string"
        +}
    • Changedconfirm_upload1 field changed
      • addedInput schema / properties / contributor_person_id
        Added value: +{
        +  "description": "(must not be empty)",
        +  "type": "string"
        +}
    • Changedcreate_experience1 field changed
      • addedInput schema / properties / participants
        Added value: +{
        +  "description": "(at most 50 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "person_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "role": {
        +        "enum": [
        +          "participant",
        +          "guide",
        +          "local_contact",
        +          "other"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "person_id",
        +      "role"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedcreate_memory1 field changed
      • addedInput schema / properties / subject_person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Addedcreate_person
    • Changedcreate_upload_link1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "Stable ID from list_people; use it to distinguish same-name people. (must not be empty)",
        +  "type": "string"
        +}
    • Changedfile_remark1 field changed
      • addedInput schema / properties / speaker_person_id
        Added value: +{
        +  "description": "(must not be empty)",
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
    • Addedget_person
    • Changedget_travel_context1 field changed
      • addedInput schema / properties / person_ids
        Added value: +{
        +  "description": "(at most 10 items)",
        +  "items": {
        +    "description": "(must not be empty, at most 200 characters)",
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedget_user_profile1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedlearn1 field changed
      • changedInput schema / properties / topic / description
        Previous value: -"One of: knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."New value: +"One of: people | knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."
    • Changedlist_experiences1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedlist_media1 field changed
      • addedInput schema / properties / cursor
        Added value: +{
        +  "description": "Previous next_cursor; keep filter/trip_id unchanged.",
        +  "type": "string"
        +}
    • Changedlist_memories1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Addedlist_people
    • Changedlist_trips1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "Filter explicitly recorded trip participants. (must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedrequest_upload2 fields changed
      • addedInput schema / properties / kind / description
        Added value: +"image or video; photo is a legacy alias for image."
      • changedInput schema / properties / kind / enum
        Previous value: -[
        -  "image",
        -  "video"
        -]New value: +[
        +  "image",
        +  "video",
        +  "photo"
        +]
    • Addedrestore_person
    • Changedreview_experience1 field changed
      • addedInput schema / properties / participants
        Added value: +{
        +  "description": "(at most 50 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "person_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "role": {
        +        "enum": [
        +          "participant",
        +          "guide",
        +          "local_contact",
        +          "other"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "person_id",
        +      "role"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedreview_memory1 field changed
      • addedInput schema / properties / subject_person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Changedrevoke_upload_link1 field changed
      • addedInput schema / properties / person_id
        Added value: +{
        +  "description": "Stable ID from list_people or get_trip_state; can revoke an archived person's link. (must not be empty)",
        +  "type": "string"
        +}
    • Addedset_experience_people
    • Addedset_trip_people
    • Changedupdate_experience1 field changed
      • addedInput schema / properties / participants
        Added value: +{
        +  "description": "(at most 50 items)",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "person_id": {
        +        "description": "(must not be empty, at most 200 characters)",
        +        "type": "string"
        +      },
        +      "role": {
        +        "enum": [
        +          "participant",
        +          "guide",
        +          "local_contact",
        +          "other"
        +        ],
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "person_id",
        +      "role"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Changedupdate_media4 fields changed
      • addedInput schema / properties / contributor_person_id
        Added value: +{
        +  "description": "(must not be empty)",
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • changedInput schema / properties / rotate / description
        Previous value: -"Clockwise degrees. EXIF orientation is already applied; use this only for a deliberate turn."New value: +"Clockwise degrees; null clears rotation. EXIF orientation is already applied; use this only for a deliberate turn."
      • changedInput schema / properties / rotate / enum
        Previous value: -[
        -  90,
        -  180,
        -  270
        -]New value: +[
        +  90,
        +  180,
        +  270,
        +  null
        +]
      • changedInput schema / properties / rotate / type
        Previous value: -"number"New value: +[
        +  "number",
        +  "null"
        +]
    • Changedupdate_memory1 field changed
      • addedInput schema / properties / subject_person_id
        Added value: +{
        +  "description": "(must not be empty, at most 200 characters)",
        +  "type": "string"
        +}
    • Addedupdate_person
  10. 13 tool updates
    • Addedcreate_experience
    • Addedcreate_memory
    • Addedget_experience
    • Addedget_memory
    • Addedget_travel_context
    • Addedget_user_profile
    • Changedlearn1 field changed
      • changedInput schema / properties / topic / description
        Previous value: -"One of: workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."New value: +"One of: knowledge | workflow | block_types | block_types/<TYPE> | media | pipeline | head | theme | voice | rules | recipes | recipes/<name>. Leave empty for the index."
    • Addedlist_experiences
    • Addedlist_memories
    • Addedreview_experience
    • Addedreview_memory
    • Addedupdate_experience
    • Addedupdate_memory
  11. 30 tool updates
    • First observedaccount_status
    • First observedadd_block
    • First observedcapture_remark
    • First observedconfirm_upload
    • First observedcreate_share_link
    • First observedcreate_trip
    • First observedcreate_upload_link
    • First observedfile_remark
    • First observedget_timeline
    • First observedget_trip_state
    • First observedlearn
    • First observedlist_media
    • First observedlist_remarks
    • First observedlist_trips
    • First observedrequest_upload
    • First observedresolve_place
    • First observedrevoke_share_link
    • First observedrevoke_upload_link
    • First observedsearch
    • First observedset_trip_ending
    • First observedset_trip_head
    • First observedset_trip_theme
    • First observedshow_media
    • First observedtranscribe_video
    • First observedupdate_block
    • First observedupdate_media
    • First observedupdate_share_link
    • First observedupdate_trip
    • First observedupgrade_link
    • First observedview_media

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables an AI companion to take a small solo trip to a real, specific place, choosing its own steps over 4–10 rounds and then writing its own travelogue and picking one thing to bring home. Each journey becomes a station on a self-hosted roadbook map with coordinates, the traveler's own words, their souvenir, and a matching photo, with unfinished trips never lost and no ghostwriting by the engine.
    26
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources