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

Server definition

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

The blob, as servednamed by its sha256

{ "instructions": "Tewdy is a global service-provider marketplace serving two audiences: people offering skills (plumbers, translators, tutors, cleaners, photographers, and more) and people needing local help. Read-only tools (search_providers, get_provider_details, list_categories, get_category_pricing, get_earnings_estimate) require no authentication. Authenticated tools require an Authorization: Bearer <Tewdy JWT> header — these cover the full transactional flow on both sides: request_quote, get_my_requests, accept_quote, message_provider for clients; list_inbound_requests, submit_quote for providers. Quote acceptance and payment confirmation always happen on tewdy.com via deep link, never in chat.", "tools": [ { "description": "Look up a quote and return a deep link to the Tewdy app where the user can confirm acceptance and proceed to payment. This tool deliberately does not accept or pay — quote acceptance and payment confirmation always happen on tewdy.com via the deep link, not in chat. Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "quote_id": { "maxLength": 120, "minLength": 1, "type": "string" } }, "required": [ "quote_id" ], "type": "object" }, "name": "accept_quote", "outputSchema": null }, { "description": "Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; otherwise falls back to listed (asking) prices from provider capability pricing. Returns median, p25, p75, min, max, sample size, and currency.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "category": { "maxLength": 120, "minLength": 1, "type": "string" }, "currency": { "maxLength": 3, "minLength": 3, "type": "string" }, "location": { "maxLength": 200, "type": "string" } }, "required": [ "category" ], "type": "object" }, "name": "get_category_pricing", "outputSchema": null }, { "description": "Estimate weekly and monthly earnings for a Tewdy provider in a given category. Uses listed hourly rates from existing providers as the baseline and projects earnings under three utilisation scenarios (40%/60%/80%). Returns ranges, not guarantees.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "category": { "maxLength": 120, "minLength": 1, "type": "string" }, "currency": { "maxLength": 3, "minLength": 3, "type": "string" }, "hours_per_week": { "maximum": 80, "minimum": 1, "type": "number" }, "location": { "maxLength": 200, "type": "string" } }, "required": [ "category", "hours_per_week" ], "type": "object" }, "name": "get_earnings_estimate", "outputSchema": null }, { "description": "List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "limit": { "maximum": 50, "minimum": 1, "type": "integer" }, "offset": { "maximum": 1000, "minimum": 0, "type": "integer" }, "sort_by": { "enum": [ "createdAt", "expiresAt", "quotesReceived" ], "type": "string" }, "sort_order": { "enum": [ "ASC", "DESC" ], "type": "string" }, "status": { "enum": [ "open", "closed", "cancelled", "expired" ], "type": "string" } }, "type": "object" }, "name": "get_my_requests", "outputSchema": null }, { "description": "Look up the full public profile for a Tewdy provider. Accepts either a Tewdy UUID (returned by search_providers as `id`) or a tewdyTag handle (e.g. \"marcus-chen\", returned as `tewdyTag`). Returns name, jobTitle, bio, profile picture, languages, capability pricing, ratings, verification status, and tewdyTag.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "provider_id": { "maxLength": 120, "minLength": 1, "type": "string" } }, "required": [ "provider_id" ], "type": "object" }, "name": "get_provider_details", "outputSchema": null }, { "description": "List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use this to map a free-text user request to a known category before calling search_providers. Optional business_type filter (e.g. \"individual\", \"company\").", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "business_type": { "maxLength": 60, "type": "string" } }, "type": "object" }, "name": "list_categories", "outputSchema": null }, { "description": "For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, budget range, urgency. Read-only. Use this to find work to quote on. Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "category_id": { "maxLength": 120, "type": "string" }, "lat": { "maximum": 90, "minimum": -90, "type": "number" }, "limit": { "maximum": 50, "minimum": 1, "type": "integer" }, "lng": { "maximum": 180, "minimum": -180, "type": "number" }, "max_budget": { "maximum": 1000000, "minimum": 0, "type": "number" }, "min_budget": { "maximum": 1000000, "minimum": 0, "type": "number" }, "offset": { "maximum": 1000, "minimum": 0, "type": "integer" }, "radius_km": { "maximum": 500, "minimum": 0.5, "type": "number" }, "urgency": { "enum": [ "urgent", "normal", "flexible" ], "type": "string" } }, "type": "object" }, "name": "list_inbound_requests", "outputSchema": null }, { "description": "Send a chat message into an existing Tewdy thread (typically created when a quote was submitted or accepted). The chat_id is the same id surfaced by get_my_requests or accept_quote. Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "chat_id": { "maxLength": 120, "minLength": 1, "type": "string" }, "text": { "maxLength": 4000, "minLength": 1, "type": "string" } }, "required": [ "chat_id", "text" ], "type": "object" }, "name": "message_provider", "outputSchema": null }, { "description": "Compose a Tewdy quote request from the user's description. Returns a deep link to the Tewdy app with all fields pre-filled; the user reviews and clicks publish to actually post the request. This tool deliberately does not auto-post — quote acceptance and payment confirmation always happen on tewdy.com via deep link, never in chat. Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "budget_max": { "maximum": 1000000, "minimum": 0, "type": "number" }, "budget_min": { "maximum": 1000000, "minimum": 0, "type": "number" }, "category": { "maxLength": 120, "type": "string" }, "currency": { "maxLength": 3, "minLength": 3, "type": "string" }, "description": { "maxLength": 2000, "minLength": 10, "type": "string" }, "location_name": { "maxLength": 200, "type": "string" }, "preferred_date": { "maxLength": 40, "type": "string" }, "urgency": { "enum": [ "urgent", "normal", "flexible" ], "type": "string" } }, "required": [ "description" ], "type": "object" }, "name": "request_quote", "outputSchema": null }, { "description": "Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, response time, and Tewdy profile tag.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "category": { "maxLength": 120, "type": "string" }, "lat": { "maximum": 90, "minimum": -90, "type": "number" }, "limit": { "maximum": 50, "minimum": 1, "type": "integer" }, "lng": { "maximum": 180, "minimum": -180, "type": "number" }, "locationName": { "maxLength": 200, "type": "string" }, "query": { "maxLength": 200, "type": "string" }, "radiusKm": { "maximum": 500, "minimum": 0.5, "type": "number" } }, "type": "object" }, "name": "search_providers", "outputSchema": null }, { "description": "Submit a quote on an open quote request. The provider sets the estimated price, optional duration and availability, and a short message to the requester. The quote is not a financial commitment — the requester still has to accept (which itself goes through a deep-link confirmation on tewdy.com). Requires authentication.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "availability_date": { "maxLength": 40, "type": "string" }, "business_id": { "maxLength": 120, "type": "string" }, "currency": { "maxLength": 3, "minLength": 3, "type": "string" }, "estimated_duration": { "maxLength": 120, "type": "string" }, "estimated_price": { "maximum": 1000000, "minimum": 0, "type": "number" }, "message": { "maxLength": 2000, "minLength": 10, "type": "string" }, "provider_type": { "enum": [ "individual", "business" ], "type": "string" }, "quote_request_id": { "maxLength": 120, "minLength": 1, "type": "string" }, "terms_conditions": { "maxLength": 2000, "type": "string" } }, "required": [ "quote_request_id", "provider_type", "estimated_price", "currency", "message" ], "type": "object" }, "name": "submit_quote", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:bff53e3e34c06f5074b1ba6de60df8fceb00acb57ba46fd81e11b141ea6b5306 | sha256sum