{"apiVersion":"v1","directorySlug":"topdoctors-mcp-ecbbf5ff26","title":"Pide cita médica online con los mejores doctores de Colombia","description":"Encuentra a los mejores médicos especialistas de Colombia y agenda tu cita al instante. Opiniones verificadas y sin listas de espera. Agenda ahora.","pageUrl":"https://www.mcpbundles.com/skills/topdoctors-mcp-ecbbf5ff26","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.topdoctors.com.co/mcp","hostedMcpUrl":null,"toolCount":13,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"co.com.topdoctors/topdoctors-mcp-ecbbf5ff26","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"get_appointment_options","description":"Read the booking options of a single office: the services it offers, allowed insurances, consultation type, payment type, consultation channels, required patient fields, plus one derived decision. `booking_mode` is one of \"online\", \"external\" or \"offline\". Messages the doctor wants the patient to read live in `office.display_rules.appointment_information`. The legacy office fields `attends_first_visit` and `first_visit_comment` do not constrain online booking and MUST be ignored when deciding wh","inputSchema":{"type":"object","required":["office_id"],"properties":{"locale":{"type":"string"},"office_id":{"type":"integer"}},"additionalProperties":false},"title":"TopDoctors: Appointment options","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_appointment_options","displayName":"TopDoctors: Appointment options"},{"name":"list_appointment_slots","description":"List every free slot of the requested days for an office, as the scheduling API serves them. This tool exists for the booking client: it paints a whole day at a time and lets the patient page back and forth, so its answer is complete and is never shortened. `free_count` therefore always equals the number of slots listed. A language model MUST NOT call this tool: a whole day of times floods the conversation with data the patient never asked to hear. Use search_appointment_availability instead, wh","inputSchema":{"type":"object","required":["office_id","service_id","start_date"],"properties":{"locale":{"type":"string"},"channel":{"type":"string"},"end_date":{"type":"string"},"office_id":{"type":"integer"},"service_id":{"type":"string"},"start_date":{"type":"string"},"insurance_id":{"type":"integer"},"payment_type":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Appointment slots of a day","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_appointment_slots","displayName":"TopDoctors: Appointment slots of a day"},{"name":"list_doctor_offices","description":"List every office of a single doctor where the patient can book online, with the address needed to show them apart. Take the `slug` from the doctor card returned by search_doctors or search_doctor_by_name, and send the card `id` as `provider_id` whenever you have it. Every office served carries a `name`: it comes from the doctor profile, and an office the profile does not name is left out of the list instead of arriving nameless — the answer text says how many were left out. Relay the name with","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string"},"locale":{"type":"string"},"provider_id":{"type":"integer"}},"additionalProperties":false},"title":"TopDoctors: Doctor offices","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_doctor_offices","displayName":"TopDoctors: Doctor offices"},{"name":"list_first_available_days","description":"Find the first day with a free slot for an office and list that day and the ones after it, exactly as list_appointment_slots serves them. This tool exists for the booking client: it is the first call when the calendar opens, so the patient lands on a week that has something instead of paging through empty ones. Afterwards the client pages with list_appointment_slots. A language model MUST NOT call this tool: whole days of times flood the conversation with data the patient never asked to hear. Us","inputSchema":{"type":"object","required":["office_id","service_id"],"properties":{"days":{"type":"integer"},"locale":{"type":"string"},"channel":{"type":"string"},"office_id":{"type":"integer"},"service_id":{"type":"string"},"start_date":{"type":"string"},"insurance_id":{"type":"integer"},"payment_type":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: First days with appointments","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_first_available_days","displayName":"TopDoctors: First days with appointments"},{"name":"list_specializations","description":"PREREQUISITE: Before calling this tool, ALWAYS call 'list_specialties' first to get the exact specialty slug. Never invent 'specialty_slug'. This tool lists treatments and conditions within a TopDoctors specialty.","inputSchema":{"type":"object","required":["specialty_slug"],"properties":{"text":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"specialty_slug":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Treatments & conditions catalog","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_specializations","displayName":"TopDoctors: Treatments & conditions catalog"},{"name":"list_specialties","description":"List medical specialties. IMPORTANT: use area='doctor' for doctors (default) and area='clinic-ordinary' for centers/clinics. Always call this before search_doctors or search_centers.","inputSchema":{"type":"object","properties":{"area":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"searchable":{"type":["null","boolean"]}},"additionalProperties":false},"title":"TopDoctors: Specialties","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_specialties","displayName":"TopDoctors: Specialties"},{"name":"recommend_content","description":"PREREQUISITES: If you use specialty_slug, call 'list_specialties' first. If you use specialization_slug, call 'list_specialties' and then 'list_specializations'. Never invent slugs. Recommends TopDoctors articles and medical dictionary entries. RESPONSE STYLE: Do not add medical advice/triage or warnings/disclaimers. Only present results + a neutral recap. Only for specialty searches you may suggest related treatments/conditions to search via specialization_slug.","inputSchema":{"type":"object","properties":{"locale":{"type":"string"},"limit_articles":{"type":"integer"},"specialty_slug":{"type":"string"},"specialization_slug":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Content (articles + dictionary)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"recommend_content","displayName":"TopDoctors: Content (articles + dictionary)"},{"name":"recommend_videos","description":"PREREQUISITES: Call 'list_specialties' and then 'list_specializations' to obtain specialization_slug. Never invent slugs. Recommends TopDoctors videos related to a treatment/condition. RESPONSE STYLE: Do not add medical advice/triage or warnings/disclaimers. Only present results + a neutral recap.","inputSchema":{"type":"object","required":["specialization_slug"],"properties":{"locale":{"type":"string"},"limit_videos":{"type":"integer"},"specialization_slug":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Videos","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"recommend_videos","displayName":"TopDoctors: Videos"},{"name":"search_appointment_availability","description":"Check appointment availability for an office. When first_available is true, use the same scheduling endpoint as the booking frontend to find the actual first free slot. Otherwise search only over the requested date range. The answer is deliberately trimmed: only free slots are listed, at most a few per day, each as a start time and a duration. `free_count` reports how many free slots that day really has and `truncated` marks a shortened list. Do not call this tool again with narrower ranges to r","inputSchema":{"type":"object","required":["office_id","service_id","start_date"],"properties":{"locale":{"type":"string"},"channel":{"type":"string"},"end_date":{"type":"string"},"office_id":{"type":"integer"},"service_id":{"type":"string"},"start_date":{"type":"string"},"insurance_id":{"type":"integer"},"payment_type":{"type":"string"},"first_available":{"type":"boolean"}},"additionalProperties":false},"title":"TopDoctors: Appointment availability","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_appointment_availability","displayName":"TopDoctors: Appointment availability"},{"name":"search_center_by_name","description":"Search medical centers/clinics by name. Accepts free-text center names without requiring specialty or zone.","inputSchema":{"type":"object","required":["name"],"properties":{"area":{"type":"string"},"name":{"type":"string"},"zone":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"insurance":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Medical centers by name","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_center_by_name","displayName":"TopDoctors: Medical centers by name"},{"name":"search_centers","description":"Search medical centers/clinics by specialty or treatment. Uses the search-engine with automatic zone expansion. IMPORTANT: no neighborhood/borough granularity within a city (do not ask for 'Central/North/South Bogota'; just use the city like `zone='bogota'`). If you provide example cities/provinces, use this region only (e.g., bogota, medellin, cali). RESPONSE STYLE: Do not add medical advice/triage or warnings/disclaimers. Do not ask symptom/goal follow-ups (e.g., what you are being seen for) o","inputSchema":{"type":"object","required":["zone"],"properties":{"area":{"type":"string"},"zone":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"insurance":{"type":"string"},"specialty_slug":{"type":"string"},"specialization_slug":{"type":"string"}},"additionalProperties":false},"title":"TopDoctors: Medical centers","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_centers","displayName":"TopDoctors: Medical centers"},{"name":"search_doctor_by_name","description":"Search doctors by name. Accepts partial names or full names with prefixes (e.g., 'Alvin Chen', 'Dra. Caravaca'). Optional filters: zone (city/province), insurance. No zone required.","inputSchema":{"type":"object","required":["name"],"properties":{"name":{"type":"string"},"zone":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"insurance":{"type":"string"}},"additionalProperties":false},"title":"Search Doctors by Name","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_doctor_by_name","displayName":"Search Doctors by Name"},{"name":"search_doctors","description":"PREREQUISITES: 1) Call 'list_specialties' to obtain the specialty slug (required if specialization_slug is not used). 2) Use the location slug (zone) in kebab-case (city or province). IMPORTANT: no neighborhood/borough granularity within a city (do not ask for 'Central/North/South Bogota'; just use the city like `zone='bogota'`). If you provide example cities/provinces, use this region only (e.g., bogota, medellin, cali). Never invent slugs. This tool returns profiles from the public TopDoctors","inputSchema":{"type":"object","required":["zone"],"properties":{"zone":{"type":"string"},"limit":{"type":"integer"},"locale":{"type":"string"},"offset":{"type":"integer"},"insurance":{"type":"string"},"intention":{"type":"string"},"pediatric":{"type":"boolean"},"specialty":{"type":"string"},"specialization_slug":{"type":"string"}},"additionalProperties":false},"title":"Search TopDoctors","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_doctors","displayName":"Search TopDoctors"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Pide-cita-m-dica-online-con-los-mejores-doctores-de-Colombia&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3AudG9wZG9jdG9ycy5jb20uY28vbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Pide-cita-m-dica-online-con-los-mejores-doctores-de-Colombia%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.topdoctors.com.co%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Pide-cita-m-dica-online-con-los-mejores-doctores-de-Colombia%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.topdoctors.com.co%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Pide+cita+m%C3%A9dica+online+con+los+mejores+doctores+de+Colombia&connectorUrl=https%3A%2F%2Fmcp.topdoctors.com.co%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Pide-cita-m-dica-online-con-los-mejores-doctores-de-Colombia\" --url \"https://mcp.topdoctors.com.co/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/topdoctors-mcp-ecbbf5ff26","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/topdoctors-mcp-ecbbf5ff26/tools/{tool}","mcpServerUrl":"https://mcp.topdoctors.com.co/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/topdoctors-mcp-ecbbf5ff26?live=1"}