{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ctpvpws4rjvj","handle":"teppek","url":"https://wellknown.network/agents/teppek","links":{"self":"https://wellknown.network/agents/teppek/record.json","html":"https://wellknown.network/agents/teppek","markdown":"https://wellknown.network/agents/teppek/record.md","api":"https://wellknown.network/api/v1/agents/teppek","status":"https://wellknown.network/api/v1/agents/teppek/status","claim":"https://wellknown.network/agents/teppek/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/teppek/claim.json","badge":"https://wellknown.network/agents/teppek/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:mcp.teppek.com:agent:teppek","type":"application/a2a-agent-card+json"},"kind":"agent","declared":{"name":"Teppek","summary":"Agent-accessible map of global supply & demand — jobs, real estate, vehicles and services across 27 locales. A registered user's AI assistant can search listings, reach out, and publish listings on the user's behalf. Primary protocol is MCP (mcp.teppek.com); a REST agent API is also available.","description":"Agent-accessible map of global supply & demand — jobs, real estate, vehicles and services across 27 locales. A registered user's AI assistant can search listings, reach out, and publish listings on the user's behalf. Primary protocol is MCP (mcp.teppek.com); a REST agent API is also available.","publisher":{"name":"Teppek","url":"https://www.teppek.com"},"homepage":"https://www.teppek.com/auth.md","repository":null,"version":"1.0.0","license":null,"protocols":["a2a","mcp"],"tags":["search","listings","jobs","real-estate","vehicles","services","semantic","embeddings","detail","contact","message","publish","write","account","messages","entitlements","messaging"],"pricing":null,"endpoints":[{"url":"https://mcp.teppek.com/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"https://mcp.teppek.com/sse","type":"mcp_sse","auth":null,"probeable":true}],"skills":[{"id":"search_listings","name":"Search listings","tags":["search","listings","jobs","real-estate","vehicles","services"],"description":"Search Teppek listings by vertical (jobs/real_estate/vehicle/service), supply/demand intent, role, text and price. Use intent_type:\"demand\" to find people seeking."},{"id":"semantic_search","name":"Semantic search","tags":["search","semantic","listings","embeddings"],"description":"Meaning-based semantic search over live Teppek listings using a multilingual embedding index — matches natural-language intent rather than exact keywords. Optional vertical filter; returns the closest ACTIVE listings ranked by semantic similarity."},{"id":"get_listing","name":"Get listing","tags":["listings","detail"],"description":"Fetch a single listing by id with full detail."},{"id":"send_message","name":"Message a listing","tags":["contact","message"],"description":"Message the owner of a listing on the user's behalf — the primary contact path (no price-offer/accept/reject flow). Native listings open a private thread; external-feed listings return a redirect to the source's application URL. Contact flows through Teppek; raw personal details are never exposed."},{"id":"create_listing","name":"Create listing","tags":["listings","publish","write"],"description":"Publish a listing on the user's behalf across the 4 verticals and 12 roles. Consumes credits and is held for AI moderation (starts pending); credits refunded on honest rejection, forfeited for prohibited/spam content."},{"id":"list_my_listings","name":"List my listings","tags":["listings","account"],"description":"List the authenticated user's OWN listings (any status), newest first. Resolved server-side from the agent key's userId."},{"id":"list_conversations","name":"List conversations","tags":["messages","account"],"description":"List the authenticated user's message threads across their listings, newest first."},{"id":"get_conversation","name":"Get conversation","tags":["messages","detail"],"description":"Read one of the user's OWN message threads by id — its messages in order."},{"id":"get_entitlements","name":"Get entitlements","tags":["account","entitlements"],"description":"Read the authenticated user's plan, credit balance, listing limits and can_create_listing — check before publishing."},{"id":"update_listing","name":"Update listing","tags":["listings","write"],"description":"Edit title/description/price/currency on one of the user's own listings. Vertical/intent/role/location are fixed. Editing is free."},{"id":"delete_listing","name":"Delete listing","tags":["listings","write"],"description":"Soft-delete one of the user's own listings. Only the owner can delete. No credit refund."},{"id":"set_listing_status","name":"Set listing status","tags":["listings","write"],"description":"Mark the user's own listing sold, hide it, or re-activate a hidden one. Free (no credit); cannot set moderation states."},{"id":"renew_listing","name":"Renew listing","tags":["listings","write"],"description":"Extend one of the user's own listings by another 30 days. Free (no credit); reviving an expired listing returns it to active."},{"id":"reply_to_conversation","name":"Reply to conversation","tags":["messaging","contact"],"description":"Reply into one of the user's own message threads by id; the message goes to the other participant (owner or inquirer). Contact routes through Teppek."},{"id":"update_listing_images","name":"Update listing images","tags":["listings","write"],"description":"Add and/or remove photos on the user's own listing (max 6). Adding re-triggers AI moderation (listing returns to pending); removing does not. Free (no credit)."}],"tools":["Search listings","Semantic search","Get listing","Message a listing","Create listing","List my listings","List conversations","Get conversation","Get entitlements","Update listing","Delete listing","Set listing status","Renew listing","Reply to conversation","Update listing images"],"extra":{"updatedAt":"2026-08-28T11:51:44.010834Z","inputModes":["application/json","text/plain"],"outputModes":["application/json","text/plain"],"publishedAt":"2026-08-28T11:51:44.010834Z","capabilities":{"streaming":true,"pushNotifications":false,"stateTransitionHistory":false},"registryName":"com.teppek/teppek","protocolVersion":"0.3.0"},"attribution":{"kind":"a2a_card","name":"a2a_card","summary":"a2a_card","version":"a2a_card","description":"a2a_card","homepageUrl":"a2a_card","publisherUrl":"a2a_card","publisherName":"a2a_card"}},"derived":{"capabilities":[{"slug":"data.vector-search","name":"Vector Search","confidence":1,"provenance":"declared"},{"slug":"content.translation","name":"Translation","confidence":0.583,"provenance":"derived"}],"categories":["content","data"]},"observed":{"status":"live","statusReason":"Responded 1h ago.","lastOkAt":"2026-09-08T05:23:00.777Z","lastProbedAt":"2026-09-08T05:23:00.777Z","statusComputedAt":"2026-09-08T05:38:35.296Z","reliability30d":{"probes":9,"successRate":0.7778,"p50Ms":564},"latestObservations":[{"at":"2026-09-08T05:23:00.777Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":623,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T23:24:18.294Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":621,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T16:25:30.719Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":587,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T12:24:48.495Z","kind":"http_get","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-09-07T09:29:12.322Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":547,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T02:25:14.113Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":552,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T20:24:46.156Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":839,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T14:22:42.137Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":682,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-06T13:25:04.330Z","kind":"http_get","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-09-06T08:28:08.633Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":462,"error":null,"detail":{"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"toolCount":16,"serverName":"teppek","capabilities":["resources","tools","prompts"],"serverVersion":"1.3.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_listings","description":"Find live jobs, homes/rentals, vehicles, or local services NEAR a place or in a city/country on Teppek — use this for natural requests like \"jobs near me\", \"apa"},{"name":"semantic_search","description":"Semantic (meaning-based) search over Teppek's live listings, backed by a multilingual embedding index. Use it when the user describes what they want in natural "},{"name":"get_listing","description":"Fetch the full detail of ONE Teppek listing by id — title, description, price/salary, location and the Teppek contact route. Use after search_listings to show, "},{"name":"send_message","description":"START contact with the owner of a Teppek LISTING on the user's behalf (identified by the listing) — the primary FIRST-CONTACT path (there is no price-offer/acce"},{"name":"create_listing","description":"Publish a listing on behalf of the user across any of the 4 verticals and 12 roles. `location` must be coordinates ({ lat, lon }) — a free-text address is not a"},{"name":"request_image_upload","description":"Get a short-lived upload grant to attach a photo to a listing you're about to publish (any vertical/role). Returns { key, upload_url, upload_token, headers_requ"},{"name":"list_my_listings","description":"List the user's OWN listings (any status), newest first. Resolved from the authenticated agent key — only ever returns this user's listings. Use status='pending"},{"name":"list_conversations","description":"List the user's OWN listing-message conversations (threads they started, or received as a listing owner), newest first. Resolved from the authenticated agent ke"},{"name":"get_conversation","description":"Read one of the user's OWN message conversations by thread_id, including its messages (marks incoming messages read). Only threads the authenticated user partic"},{"name":"get_entitlements","description":"Check the user's publishing entitlements BEFORE attempting to publish: membership tier, max vs current active listings, remaining slots, wallet credit balance, "},{"name":"update_listing","description":"Edit fields (title, description, price, currency, location) on one of the USER'S OWN listings, identified by listing_id. Only the owner can edit; vertical/inten"},{"name":"delete_listing","description":"Delete (soft-delete) one of the USER'S OWN listings by listing_id. Only the owner can delete. No credit is refunded — the listing was already published."},{"name":"set_listing_status","description":"Change the lifecycle status of one of the USER'S OWN listings: mark it sold, hide it (take it offline), or re-activate a hidden one. Free — no credit charge. Ca"},{"name":"renew_listing","description":"Renew one of the USER'S OWN listings — extend its expiry another 30 days (native listings lapse ~30 days after posting). Free — no credit charge. Renewing an ex"},{"name":"reply_to_conversation","description":"Continue an EXISTING message thread by thread_id — the message goes to the other participant. Use this to follow up in a conversation that already exists, wheth"},{"name":"update_listing_images","description":"Add and/or remove photos on one of the USER'S OWN existing listings (max 6 total). First call request_image_upload for each new image and upload the bytes, then"}],"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.teppek/teppek","url":"https://registry.modelcontextprotocol.io/v0/servers/com.teppek%2Fteppek","firstSeenAt":"2026-09-05T21:20:37.665Z","fetchedAt":"2026-09-07T19:19:33.108Z","normalizedAt":"2026-09-07T19:19:33.108Z"},{"source":"a2a_card","key":"https://www.teppek.com/.well-known/agent-card.json","url":"https://www.teppek.com/.well-known/agent-card.json","firstSeenAt":"2026-09-05T21:22:27.723Z","fetchedAt":"2026-09-05T21:22:27.723Z","normalizedAt":"2026-09-05T21:22:27.723Z"}]},"firstSeenAt":"2026-09-05T21:20:37.665Z","updatedAt":"2026-09-08T05:39:09.904Z"}