{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_68ab7zad8wdz","handle":"tewdy","url":"https://wellknown.network/agents/tewdy","links":{"self":"https://wellknown.network/agents/tewdy/record.json","html":"https://wellknown.network/agents/tewdy","markdown":"https://wellknown.network/agents/tewdy/record.md","api":"https://wellknown.network/api/v1/agents/tewdy","status":"https://wellknown.network/api/v1/agents/tewdy/status","claim":"https://wellknown.network/agents/tewdy/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/tewdy/claim.json","badge":"https://wellknown.network/agents/tewdy/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/tewdy/history","tools":"https://wellknown.network/api/v1/agents/tewdy/tools"},"ard":{"identifier":"urn:air:mcp.tewdy.com:server:tewdy","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Tewdy","summary":"Find local service providers — plumbers, tutors, translators — and estimate provider earnings.","description":"Find local service providers — plumbers, tutors, translators — and estimate provider earnings.","publisher":{"name":"dugiwarc","url":null},"homepage":"https://tewdy.com/integrations","repository":"https://github.com/dugiwarc/tewdy-stack","version":"0.1.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://mcp.tewdy.com","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-04-28T07:14:17.591165Z","publishedAt":"2026-04-28T07:14:17.591165Z","registryName":"io.github.dugiwarc/tewdy"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"content.translation","name":"Translation","confidence":1,"provenance":"derived"},{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":1,"provenance":"derived"},{"slug":"commerce.payments","name":"Payments","confidence":0.51,"provenance":"derived"}],"categories":["commerce","content"],"language":"pt"},"observed":{"status":"unavailable","statusReason":"4 consecutive checks failed; last success 5d ago.","lastOkAt":"2026-10-06T23:27:10.427Z","lastProbedAt":"2026-10-10T18:27:01.654Z","statusComputedAt":"2026-10-10T18:28:59.313Z","reliability30d":{"probes":38,"successRate":0.8421,"p50Ms":1214,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":38,"ok":32,"authBoundaryOk":0,"serviceOk":32,"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-10T18:27:01.654Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-10-08T18:28:00.814Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-10-07T19:25:22.256Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-10-07T06:30:31.790Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-10-06T23:27:10.427Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":3125,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-06T16:29:32.098Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":96,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-06T09:25:28.237Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":78,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-06T03:21:27.072Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":55,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-05T21:22:00.981Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":3119,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-05T14:30:35.750Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":267,"error":null,"detail":{"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"toolCount":11,"toolsHash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","serverName":"tewdy","capabilities":["tools"],"serverVersion":"1.48.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_providers","description":"Search Tewdy for service providers (plumbers, translators, tutors, cleaners, etc.) by category and/or location. Returns a ranked list including name, rating, re"},{"name":"get_provider_details","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"},{"name":"list_categories","description":"List the service categories Tewdy supports (plumbing, translation, tutoring, cleaning, etc.). Returns slug, name, description, and businessType for each. Use th"},{"name":"get_category_pricing","description":"Get aggregated price ranges for a service category, optionally filtered by location. Prefers transacted prices (accepted quotes) when at least 5 samples exist; "},{"name":"get_earnings_estimate","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 ear"},{"name":"request_quote","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 "},{"name":"get_my_requests","description":"List the authenticated user's quote requests with current status (open / closed / cancelled / expired) and quote-response counts. Read-only — no state changes. "},{"name":"accept_quote","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 "},{"name":"message_provider","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_requ"},{"name":"list_inbound_requests","description":"For the authenticated provider, list open quote requests that match the provider's capabilities and service area. Optional filters: category, location radius, b"},{"name":"submit_quote","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 qu"}],"package":null,"toolSurface":{"id":"ts_jr4ndzqfbajv","endpointId":"ep_sm2vbjmxumus","hash":"756ca1eb62dda308d55ce75139df7a8755b694d88fd617703c21ce66c9f0afa3","toolCount":11,"serverName":"tewdy","serverVersion":"1.48.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-28T13:27:20.374Z","lastSeenAt":"2026-10-06T23:27:10.425Z","observations":32,"toolNames":["search_providers","get_provider_details","list_categories","get_category_pricing","get_earnings_estimate","request_quote","get_my_requests","accept_quote","message_provider","list_inbound_requests","submit_quote"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_sm2vbjmxumus","url":"https://mcp.tewdy.com","type":"mcp_streamable_http","factsCheckedAt":"2026-10-05T21:22:00.997Z","auth":{"observedAt":"2026-10-05T21:22:01.123Z","authRequired":false,"scheme":null,"resourceMetadata":{"url":"https://mcp.tewdy.com/.well-known/oauth-protected-resource","resource":"https://mcp.tewdy.com/","authorizationServers":["https://mcp.tewdy.com/"],"scopesSupported":["mcp.read","mcp.write"]},"authorizationServer":{"url":"https://mcp.tewdy.com/.well-known/oauth-authorization-server","issuer":"https://mcp.tewdy.com/","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["client_secret_post","none"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":null},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":false,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-05T21:22:01.167Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"tewdy.com","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-09-10T17:28:52.000Z","validTo":"2026-12-09T17:28:51.000Z","daysToExpiry":59,"sanCount":2,"fingerprint256":"E5:25:02:42:EE:45:2B:CD:32:F1:64:AE:37:61:71:B3:FA:35:8D:7B:D3:D1:F1:86:F0:DC:17:4A:D9:5C:BD:84"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.dugiwarc/tewdy","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.dugiwarc%2Ftewdy","firstSeenAt":"2026-09-06T13:20:54.538Z","fetchedAt":"2026-10-10T09:18:24.528Z","normalizedAt":"2026-10-10T09:18:24.528Z"}]},"firstSeenAt":"2026-09-06T13:20:54.538Z","updatedAt":"2026-10-06T23:29:47.144Z"}