Privacy Policy (ChatGPT App)

Effective date: March 27, 2026
Provider: Spheric Admin Ltd ("we," "us," "our")
Contact: privacy.widgets@olutely.com
Product: "Tide Times" (the "App"), a ChatGPT app

1) Scope

This policy explains how we process data through the Tide Times App when it is used inside ChatGPT. The App provides upcoming and recent high/low tide times for a user-specified place through a read-only MCP tool and widget. This policy covers Spheric Admin Ltd's processing through the App, its MCP server, widget, caches, logging, analytics, and third-party data lookups. It does not replace OpenAI's policies for ChatGPT platform processing.

Important: The current app code geocodes the place string you provide, resolves a timezone from the resulting coordinates, selects a tide-data source by region, and returns normalized tide events plus response metadata. Depending on deployment configuration, our MCP hosting path may also generate request logs and server-side analytics telemetry as described in section 3.4.

2) Current tool contract and app behavior covered by this policy

  • Tool name: tides.
  • Tool input: location, a natural-language location string such as a city, port, beach, or coastal landmark.
  • Tool output: location.name and tides[] entries with datetime (UTC ISO timestamp), type (high or low), and height (metres).
  • Tool response metadata: source, attribution, and resolvedLocation with latitude, longitude, optional countryCode, and optional timezone.
  • In-widget behavior: The widget displays a tide chart and table using the returned tool data, keeps that returned data in temporary in-session widget state, and lets you type another place name to send a follow-up message back into ChatGPT in the form Show tides for {location}.
  • Current scope limits: The current App does not require sign-in, account creation, email address, phone number, payment details, microphone, camera, contacts, or precise device geolocation from your browser or device.

3) Data categories, purposes, recipients, retention, and controls

3.1 Tool invocation data and normalized tide response

What: The location string you or ChatGPT provide, the resolved place name, the returned tide events, and response metadata (source, attribution, resolved coordinates, optional country code, optional timezone).
Why: To resolve the requested place, retrieve tide predictions, normalize the results, and render the widget with tide times and heights.
Recipients: Our MCP server, OpenAI/ChatGPT as part of the tool invocation flow, our hosting/infrastructure providers acting on our behalf, and the third-party geocoding, timezone, and tide-data services described in section 3.2.
Retention by us: We do not use a separate application database to keep a persistent history of tide lookups. The current server code uses in-memory caches that may retain geocoding results and timezone lookups for up to 24 hours, generic station lists for up to 24 hours, and tide-provider responses for up to 30 minutes. These caches are intended for performance, not for long-term user history. Tool request data may also appear in limited logs or analytics telemetry as described in section 3.4.
Your controls: You choose whether to use the App, what place name to provide, and whether to make the place description broad or specific.

3.2 Third-party geocoding, timezone, and tide-data lookups

What: To fulfil a tide request, the current App may disclose your supplied place name or derived location data to third-party services:

  • OpenStreetMap Nominatim geocoding: receives the raw location string to resolve a place name and coordinates.
  • TimeAPI timezone lookup: receives derived latitude and longitude to resolve an IANA timezone for the resolved place.
  • Stormglass: if selected for the location, receives derived latitude and longitude plus the requested tide window.
  • NOAA: for U.S. locations, our server first downloads NOAA station lists, calculates the nearest station locally, and then requests tide predictions using the selected station ID and date window rather than sending your original place string.
  • UK Hydrographic Office (UKHO): for UK and related locations, our server first downloads UKHO station lists, calculates the nearest station locally, and then requests tidal events using the selected station ID and date window rather than sending your original place string.

Why: To turn a place name into coordinates, determine the correct timezone for display, select a suitable regional tide provider, and retrieve tide predictions.
Recipients: OpenStreetMap Nominatim, TimeAPI, Stormglass, NOAA, UKHO, and their respective hosting/infrastructure providers.
Retention by us: The App keeps the in-memory caches described in section 3.1. We do not control how third-party data providers retain requests once data is sent to them; their own policies govern that processing.
Your controls: You can choose not to use the App, provide a less specific location description, or avoid submitting locations you consider sensitive.

3.3 In-session widget state and follow-up messages

What: Temporary widget state containing the returned location and tides data, plus any follow-up place name you type into the widget. The widget also reads runtime presentation data such as locale, theme, and display mode, and may read device-platform information exposed by the ChatGPT widget runtime for display adaptation.
Why: To render the chart and table, format times in the resolved timezone, support display-mode changes, and let you request tides for another place from the widget.
Recipients: OpenAI/ChatGPT and its widget runtime. If a follow-up request leads to a new tool call, our MCP server and the third-party services described above will also receive the new request data.
Retention by us: We do not intentionally store this in-session widget state in a separate app database. It is intended to exist mainly within the active ChatGPT session and is otherwise governed by OpenAI's platform controls unless it becomes part of a later tool call or support request.
Your controls: You can stop using the widget at any time, choose whether to use the follow-up field, and manage ChatGPT conversation data through OpenAI controls.

3.4 Technical delivery data, request logs, and analytics telemetry

What: Technical data generated when the App is delivered or invoked, such as IP address, user agent, URL path, timestamp, HTTP status, and response time. Depending on deployment configuration, our MCP hosting path may also record MCP request bodies and server-side analytics telemetry. In the current codebase, the hosted Express path logs MCP request bodies and sends HTTP/MCP telemetry to Mixpanel's EU endpoint. That telemetry can include JSON-RPC request IDs, MCP method names, request params (which can include the location field), IP address, user agent, URL, response status, duration, and an OpenAI subject identifier if the platform provides one for a tool call.
Why: Security, abuse prevention, service reliability, performance monitoring, debugging, and incident response.
Recipients: Our hosting, CDN, and infrastructure providers, personnel who need access for operations or security, and Mixpanel using the EU Mixpanel endpoint when that deployment path is in use.
Retention: We aim to minimize operational logs and generally retain them for no longer than 30 days unless a longer period is reasonably necessary for a security investigation, abuse prevention, or legal obligation. Mixpanel telemetry is retained in our analytics workspace until deleted by us or until any applicable Mixpanel or account retention setting removes it.
Your controls: You can avoid submitting unnecessary information in place names or surrounding prompts, choose not to use the App, and contact us with rights requests or questions.

3.5 Contact data if you email us

What: Your email address and the contents of your message.
Why: To respond to privacy, support, or legal requests and maintain a record of the request.
Recipients: Spheric Admin Ltd and our email/service providers acting on our behalf.
Retention: Up to 24 months after final resolution unless a longer period is required by law or reasonably needed to establish, exercise, or defend legal claims.

4) What we do not do

  • No account creation or sign-in through the current App.
  • No requirement to provide direct identifiers such as your name, email address, or phone number to use the current tides tool.
  • No sale of personal information.
  • No browser GPS or precise device geolocation request by the current widget.
  • No use of ChatGPT-provided openai/userLocation metadata in the current tide lookup logic; the current tool uses the place string supplied in location.
  • No advertising SDKs or intentional third-party tracking scripts in the current widget.

5) Cookies and similar technologies

We do not intentionally set advertising or cross-site analytics cookies through the Tide Times widget. ChatGPT/OpenAI, your browser, and our hosting providers may use their own operational cookies or similar technologies for platform operation, security, or content delivery under their own policies.

6) Sharing and disclosure

We do not sell personal information. We may disclose data only as necessary to:

  • Operate, host, monitor, and secure the App through service providers such as hosting, CDN, infrastructure, logging, and analytics providers.
  • Obtain geocoding, timezone, and tide data needed to produce the App's outputs.
  • Comply with law, regulation, legal process, or enforceable government request.
  • Protect the rights, safety, and security of users, us, and the service.

7) User rights and controls

Depending on your jurisdiction, you may have rights to access, correct, delete, restrict, or object to processing of personal data we hold.

To exercise rights or ask questions, contact privacy.widgets@olutely.com. We may need to verify your identity before fulfilling a request.

Because the App runs inside ChatGPT, you can also manage conversation and account data through OpenAI controls. OpenAI's privacy policy: https://openai.com/policies/privacy-policy.

8) International processing

The App may be accessed globally, and data may be processed in countries where we or our service providers operate. Where required, we use appropriate safeguards for international data transfers.

9) Security

We implement reasonable technical and organizational safeguards designed to protect data processed through the App. No system can guarantee absolute security.

10) Children's privacy

The App is not directed to children under 13 (or the minimum age required in your jurisdiction). We do not knowingly collect personal information from children.

11) ChatGPT / OpenAI platform notice

ChatGPT/OpenAI independently processes chat content, account data, platform telemetry, in-session widget state, and follow-up messages under OpenAI's own terms and privacy practices. This policy describes Spheric Admin Ltd's processing through Tide Times only.

12) Changes to this policy

We may update this policy from time to time. If we make material changes, we will update the effective date above and ensure the policy continues to reflect the App's current tool inputs, outputs, and disclosed data uses.

13) Contact

Questions about this policy or App privacy practices: privacy.widgets@olutely.com (Spheric Admin Ltd).