{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_xd2wf2cjxgza","handle":"tempi","url":"https://wellknown.network/agents/tempi","links":{"self":"https://wellknown.network/agents/tempi/record.json","html":"https://wellknown.network/agents/tempi","markdown":"https://wellknown.network/agents/tempi/record.md","api":"https://wellknown.network/api/v1/agents/tempi","status":"https://wellknown.network/api/v1/agents/tempi/status","claim":"https://wellknown.network/agents/tempi/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/tempi/claim.json","badge":"https://wellknown.network/agents/tempi/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/tempi/history","tools":"https://wellknown.network/api/v1/agents/tempi/tools"},"ard":{"identifier":"urn:air:meettempi.com:server:tempi","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Tempi","summary":"Find open times and book, reschedule or cancel meetings on anyone's Tempi link. No account needed.","description":"Find open times and book, reschedule or cancel meetings on anyone's Tempi link. No account needed.","publisher":{"name":"com.meettempi","url":null},"homepage":"https://meettempi.com","repository":null,"version":"1.0.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://meettempi.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-26T02:01:03.290287Z","publishedAt":"2026-09-26T02:01:03.290287Z","registryName":"com.meettempi/tempi"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"productivity.calendar","name":"Calendar & Scheduling","confidence":1,"provenance":"derived"},{"slug":"commerce.travel","name":"Travel & Booking","confidence":0.51,"provenance":"derived"}],"categories":["commerce","productivity"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 6h ago.","lastOkAt":"2026-10-09T23:30:46.330Z","lastProbedAt":"2026-10-09T23:30:46.330Z","statusComputedAt":"2026-10-09T23:31:24.533Z","reliability30d":{"probes":45,"successRate":1,"p50Ms":431,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":45,"ok":45,"authBoundaryOk":0,"serviceOk":45,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T23:30:46.330Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":266,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"39caec6ae1449b2d8ec1c74f76955c10f1039bdfccedf33bdff5671631d1e2e7","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T17:27:21.337Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":539,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"39caec6ae1449b2d8ec1c74f76955c10f1039bdfccedf33bdff5671631d1e2e7","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T10:22:26.868Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":512,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"39caec6ae1449b2d8ec1c74f76955c10f1039bdfccedf33bdff5671631d1e2e7","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T03:24:26.314Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":315,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"39caec6ae1449b2d8ec1c74f76955c10f1039bdfccedf33bdff5671631d1e2e7","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T21:22:52.486Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":500,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T14:22:24.251Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":615,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T07:26:02.165Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":555,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T00:26:29.749Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":318,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T18:27:12.728Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":492,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T12:29:55.150Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":318,"error":null,"detail":{"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"toolCount":8,"toolsHash":"cb6dada5821b9c7cdd853c30cbab45982a8369c8a9240595be0a462c78fe4b86","serverName":"tempi","capabilities":["tools"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"get_public_profile","description":"Takes a handle, the first path segment of a booking link (https://host/acme/demo → \"acme\"), or the link itself. Returns the person or team and their bookable ev"},{"name":"get_available_slots","description":"Returns the start times that can be booked, with the hosts' calendars, buffers and limits already applied. Pass the invitee's `timezone` and either `date` (YYYY"},{"name":"check_series","description":"For event types with `repeatMax` (from get_public_profile): lists each meeting of a series that starts at `start` (one of the slots) and repeats `every` 1, 2 or"},{"name":"create_booking","description":"Books `start`, which must be one of the `slots` from get_available_slots. Free events are confirmed at once, unless the event type has `requiresApproval`: then "},{"name":"get_booking","description":"Returns a booking by its id and token (from create_booking), or its manageUrl passed as both, with `changeableUntil`, `refundableUntil`, `canCancel` and `cancel"},{"name":"reschedule_booking_as_invitee","description":"Moves a confirmed booking to `start` with the same hosts. Get valid times from get_available_slots with this `bookingId` and `token`. The calendar event is upda"},{"name":"cancel_booking_as_invitee","description":"Cancels a booking by its id and token. The event is removed from the host's calendar. Paid bookings cancelled before `refundableUntil` are refunded in full. Lat"},{"name":"join_waitlist","description":"Requests access to host on Tempi (create event types, share a booking page). Not needed to book meetings, since booking pages are public. Returns the status: pe"}],"package":null,"toolSurface":{"id":"ts_2535wncby28q","endpointId":"ep_7zp7m9kf9g4j","hash":"39caec6ae1449b2d8ec1c74f76955c10f1039bdfccedf33bdff5671631d1e2e7","toolCount":8,"serverName":"tempi","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-09T03:24:26.330Z","lastSeenAt":"2026-10-09T23:30:46.321Z","observations":4,"toolNames":["get_public_profile","get_available_slots","check_series","create_booking","get_booking","reschedule_booking_as_invitee","cancel_booking_as_invitee","join_waitlist"],"distinctSurfaces":11},"endpointFacts":[{"id":"ep_7zp7m9kf9g4j","url":"https://meettempi.com/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-03T19:27:24.298Z","auth":{"observedAt":"2026-10-03T19:27:24.576Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-03T19:27:24.594Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"meettempi.com","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-25T02:58:01.000Z","validTo":"2026-12-24T03:57:58.000Z","daysToExpiry":74,"sanCount":3,"fingerprint256":"F6:FF:91:C0:26:18:DA:82:3E:90:32:D0:5E:6B:73:5E:45:AA:C8:1E:E5:3F:B9:3E:E8:84:1E:85:7B:FD:F1:B3"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.meettempi/tempi","url":"https://registry.modelcontextprotocol.io/v0/servers/com.meettempi%2Ftempi","firstSeenAt":"2026-09-28T01:20:50.765Z","fetchedAt":"2026-10-09T08:21:19.549Z","normalizedAt":"2026-10-09T08:21:19.549Z"}]},"firstSeenAt":"2026-09-28T01:20:50.765Z","updatedAt":"2026-10-09T23:32:32.396Z"}