Charter Boats API
AI Integrations

AI Integrations Overview

Use Charter Boats data through Custom GPTs, MCP servers, and direct API calls

Charter Boats exposes a set of AI-optimized endpoints under /api/ai/* designed for use by LLM-based integrations. These endpoints power two official integrations and are available for third-party use:

  1. Custom GPT -- A ChatGPT Action that uses the OpenAPI schema to search boats, locations, routes, trips, and content
  2. MCP Server -- A Model Context Protocol server at https://charter.boats/mcp that works in Claude.ai, Claude Desktop, ChatGPT Apps, Cursor, and any MCP-compatible client. Provides rich UI widgets for boats and locations.

Both integrations call the same underlying /api/ai/* endpoints, which are optimized for AI consumption: fuzzy location matching, compact response shapes, and rate limiting tuned for conversational use.

Base URL

All AI endpoints are relative to:

https://charter.boats/api/ai

Authentication

No authentication required. All AI endpoints are public. Rate limits apply per IP.

Rate Limits

SourceLimit
Custom GPT requests30 requests / 10 minutes
All other clients60 requests / 10 minutes

Rate-limited responses return 429 Too Many Requests with a Retry-After header.

Available Endpoints

Custom GPT

The Custom GPT uses an OpenAPI 3.1 schema (gpt-actions-schema.json) to expose the same 6 endpoints as ChatGPT Actions. The schema is configured to point at https://charter.boats/api/ai.

To set up your own Custom GPT using Charter Boats data:

  1. Create a new GPT in ChatGPT
  2. Add a new Action
  3. Import the OpenAPI schema from the repository (docs/gpt-actions-schema.json)
  4. No authentication is needed

GPT Conversation Tracking

When requests come from a Custom GPT, the server tracks search history per conversation using an openai-conversation-id header. This enables:

  • Context retrieval via GET /ai/gpt-context?oid=<conversation_id> -- returns the last search parameters so the GPT can reference previous results
  • URL tagging -- all URLs in responses are appended with ?oid=<conversation_id> for attribution tracking

MCP Server

The ChatGPT Apps MCP Server provides the same data through the Model Context Protocol with rich HTML widgets for boat and location results. See the dedicated page for details.

On this page