Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,547Letters: 14Defects: 1,324counted 2 min ago
teppi

Server definition

Hash
sha256:a0ec03ecc3e35919443bf79da055129a42aeeade3e6ab15168c85376fff6f29f
What it is
What a remote MCP server returned when asked what it offers: 10 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Check a captain's or boat's availability. Provide exactly one of captainSlug or boatId. Omit date to get available dates for the next 90 days; provide both date (YYYY-MM-DD) and durationHours to get bookable time slots for that date. Each slot lists its offeredDurations, and every entry carries the durationId to pass to get_quote, create_booking, or create_boat_rental (null means that length is offered but not bookable through the API).", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "boatId": { "minLength": 1, "type": "string" }, "captainSlug": { "minLength": 1, "type": "string" }, "date": { "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "durationHours": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "type": "object" }, "name": "check_availability", "outputSchema": null }, { "description": "Book a bareboat boat rental and get a Stripe Checkout link for the charterer to complete payment. Requires captainChoiceRightAcknowledged: true (the charterer affirms their right to choose their own captain). Optionally attach a partner/affiliate code.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "boatId": { "minLength": 1, "type": "string" }, "captainChoiceRightAcknowledged": { "const": true, "type": "boolean" }, "date": { "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "durationId": { "minLength": 1, "type": "string" }, "email": { "format": "email", "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "type": "string" }, "firstName": { "minLength": 1, "type": "string" }, "lastName": { "minLength": 1, "type": "string" }, "partnerCode": { "type": "string" }, "partySize": { "maximum": 13, "minimum": 1, "type": "integer" }, "phone": { "minLength": 1, "type": "string" }, "pricingTierId": { "minLength": 1, "type": "string" }, "specialRequests": { "maxLength": 500, "type": "string" }, "startTime": { "pattern": "^\\d{2}:\\d{2}$", "type": "string" } }, "required": [ "boatId", "captainChoiceRightAcknowledged", "date", "startTime", "durationId", "pricingTierId", "partySize", "firstName", "lastName", "email", "phone" ], "type": "object" }, "name": "create_boat_rental", "outputSchema": null }, { "description": "Book a charter with a captain and get a Stripe Checkout link for the charterer to complete payment. Optionally attach a partner/affiliate code to credit a referrer.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "captainSlug": { "minLength": 1, "type": "string" }, "date": { "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "durationId": { "minLength": 1, "type": "string" }, "email": { "format": "email", "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", "type": "string" }, "firstName": { "minLength": 1, "type": "string" }, "harborId": { "minLength": 1, "type": "string" }, "lastName": { "minLength": 1, "type": "string" }, "partnerCode": { "type": "string" }, "partySize": { "maximum": 13, "minimum": 1, "type": "integer" }, "phone": { "minLength": 1, "type": "string" }, "pricingTierId": { "minLength": 1, "type": "string" }, "specialRequests": { "maxLength": 500, "type": "string" }, "startTime": { "pattern": "^\\d{2}:\\d{2}$", "type": "string" } }, "required": [ "captainSlug", "harborId", "date", "startTime", "durationId", "pricingTierId", "partySize", "firstName", "lastName", "email", "phone" ], "type": "object" }, "name": "create_booking", "outputSchema": null }, { "description": "Get a boat's full profile by id, enriched with a rating summary and the most recent reviews.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "boatId": { "minLength": 1, "type": "string" } }, "required": [ "boatId" ], "type": "object" }, "name": "get_boat", "outputSchema": null }, { "description": "Get a captain's full profile by tenant slug, enriched with a rating summary and the most recent reviews.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "slug": { "minLength": 1, "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "get_captain", "outputSchema": null }, { "description": "Get a non-binding price quote (in cents) for a charter or rental. Provide exactly one of captainSlug or boatId, plus durationId and partySize. Pass `date` (YYYY-MM-DD) whenever you know it: the rate then comes from the operator's rate card for that day — weekday vs weekend vs holiday, including any per-date price the operator set — so the quote matches what checkout charges. Without a date, pass pricingTierId instead; the quote then reflects that tier and may differ from checkout for the actual day. Optionally pass a partnerCode to preview a discount. Returns currency, totalCents, depositCents, balanceCents, pricingModel, and (when a code is given) a discountPreview.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "boatId": { "minLength": 1, "type": "string" }, "captainSlug": { "minLength": 1, "type": "string" }, "date": { "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "durationId": { "minLength": 1, "type": "string" }, "partnerCode": { "minLength": 1, "type": "string" }, "partySize": { "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "pricingTierId": { "minLength": 1, "type": "string" } }, "required": [ "durationId", "partySize" ], "type": "object" }, "name": "get_quote", "outputSchema": null }, { "description": "List active harbors, each with a count of active captains and listed boats operating there.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "list_harbors", "outputSchema": null }, { "description": "Health check", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "ping", "outputSchema": null }, { "description": "Search listed boats, optionally filtered by harbor, type, minimum capacity, and max hourly price, with sorting and pagination.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "harbor": { "type": "string" }, "limit": { "default": 20, "maximum": 50, "minimum": 1, "type": "integer" }, "maxPrice": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "minCapacity": { "maximum": 9007199254740991, "minimum": 1, "type": "integer" }, "page": { "default": 1, "maximum": 9007199254740991, "minimum": 1, "type": "integer" }, "sort": { "default": "name", "enum": [ "price_asc", "price_desc", "capacity", "name" ], "type": "string" }, "type": { "enum": [ "SAILBOAT", "POWERBOAT", "PONTOON", "JETSKI", "KAYAK", "CANOE", "YACHT", "OTHER", "FISHING" ], "type": "string" } }, "type": "object" }, "name": "search_boats", "outputSchema": null }, { "description": "Search bookable charter captains, optionally filtered by harbor, with sorting and pagination. Returns a paginated list with starting price and rating.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "harbor": { "type": "string" }, "limit": { "default": 20, "maximum": 50, "minimum": 1, "type": "integer" }, "page": { "default": 1, "maximum": 9007199254740991, "minimum": 1, "type": "integer" }, "sort": { "default": "rating", "enum": [ "rating", "price_asc", "price_desc", "name" ], "type": "string" } }, "type": "object" }, "name": "search_captains", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:a0ec03ecc3e35919443bf79da055129a42aeeade3e6ab15168c85376fff6f29f | sha256sum