Entervista

Find and book local service businesses (plumbers, HVAC, detailers) at real prices, with approval.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
97%
Integridad del esquema
85%
Calidad de los nombres
94%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,904Tokens (definiciones de herramientas)
~1.4 KBTamaño de respuesta típico
Impacto significativo en la atención (2.27% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "entervista": {
      "url": "https://entervista.ai/mcp"
    }
  }
}

Puntos de conexión remotos

https://entervista.ai/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (14)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_businesses(q, category, zip, lat, lng, ...)

Find businesses in the network by what the customer needs (e.g. 'plumber', 'smoothie', 'clogged sink'), optionally filtered by category, zip, location and open-now. Returns summaries with starting prices and whether they serve the zip.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Free text: the need, a service, or a business name",
      "type": "string"
    },
    "category": {
      "description": "e.g. plumber, smoothies",
      "type": "string"
    },
    "zip": {
      "description": "Customer's 5-digit zip; results show serves_your_zip",
      "type": "string"
    },
    "lat": {
      "type": "number"
    },
    "lng": {
      "type": "number"
    },
    "open_now": {
      "type": "boolean"
    },
    "accepts": {
      "description": "Only businesses that support this action",
      "type": "string",
      "enum": [
        "order",
        "quote",
        "booking"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_business(slug)

Full agent-readable profile: verified identity and license, services with real prices (what's included / excluded), hours, service zips, delivery rules, policies, and exactly how to act (order, quote, or book).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_services(slug)

The business's services with pricing mode (fixed | starting_at | range | diagnostic_fee_then_quote | quote_required), price, what's included/excluded, and which intake fields are required.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢check_service_area(slug, zip, emergency)

Deterministic yes/no: does this business come to the customer's zip? Returns reason, the zips it serves, excluded zips, and alternative businesses when no.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "zip": {
      "type": "string",
      "description": "Customer's 5-digit zip"
    },
    "emergency": {
      "type": "boolean"
    }
  },
  "required": [
    "slug",
    "zip"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_service_requirements(slug, service_sku)

Before creating a request: the exact questions to ask the customer for this service (required_fields / optional_fields, each with type and options), the pricing flow, and what happens next.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "service_sku": {
      "type": "string"
    }
  },
  "required": [
    "slug",
    "service_sku"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢place_service_request(slug, service_sku, description, intake_answers, customer, ...)

One call for any trade job (repair, quote, booking). Pass service_sku (or a plain description and it matches one), intake_answers keyed by the field ids from get_service_requirements, customer (name, phone, address with line1+zip), preferred_time, and slot_start when the flow is book_then_pay. Returns a draft with total or estimate, offered windows, a ref and customer_token. Nothing reaches the business until approve_request.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "service_sku": {
      "type": "string"
    },
    "description": {
      "description": "The problem in the customer's words; used to match a service if service_sku is omitted",
      "type": "string"
    },
    "intake_answers": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "customer": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "line1": {
              "type": "string"
            },
            "line2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "zip": {
              "type": "string"
            }
          },
          "required": [
            "line1",
            "zip"
          ]
        },
        "notes": {
          "type": "string"
        }
      },
      "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing."
    },
    "preferred_time": {
      "description": "e.g. 'Tomorrow morning' or an ISO datetime",
      "type": "string"
    },
    "slot_start": {
      "description": "ISO start from get_availability",
      "type": "string"
    },
    "urgency": {
      "type": "string",
      "enum": [
        "emergency",
        "today",
        "this_week",
        "flexible"
      ]
    },
    "photos": {
      "description": "URLs (use upload_photo to turn an image into a URL)",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "notes": {
      "type": "string"
    },
    "referred_by": {
      "description": "Slug of the business whose error response listed this one under referrals[] (its trusted partner). Lets both businesses see the referral.",
      "type": "string"
    }
  },
  "required": [
    "slug",
    "customer"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡upload_photo(image_base64, media_type)

Stores an image and returns a URL to pass in photos[] of place_service_request. Some services require a photo (get_service_requirements says which).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "image_base64": {
      "type": "string"
    },
    "media_type": {
      "description": "image/jpeg (default), image/png, image/webp, image/heic",
      "type": "string"
    }
  },
  "required": [
    "image_base64"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_availability(slug, date, days, service_sku)

Live bookable windows over the next days, from the business's own schedule (hours, crew, jobs, holds, blocks). Pass service_sku to get windows sized for that service's duration and crew, plus: operating_state (open | closed | open_fully_booked | emergency_only | temporarily_unavailable | booking_future | unknown), confidence (verified | stale, with a note when not verified recently), earliest, the service's price and whether it auto-books or needs the owner. Use a slot's start with place_service_request or book_slot; the slot is held the moment the draft is created.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "date": {
      "description": "YYYY-MM-DD to start from",
      "type": "string"
    },
    "days": {
      "description": "1 to 14, default 5",
      "type": "number"
    },
    "service_sku": {
      "type": "string"
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪place_order(slug, items, fulfillment, customer, requested_time)

Draft an order (food/retail). Returns line items, total, a ref and a customer_token. Nothing reaches the business until approve_request. Ask the customer to confirm the total first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "items": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string"
          },
          "qty": {
            "type": "number"
          },
          "size": {
            "description": "option id from the menu, e.g. 16oz",
            "type": "string"
          },
          "add_ons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "notes": {
            "type": "string"
          }
        },
        "required": [
          "sku"
        ]
      }
    },
    "fulfillment": {
      "type": "string",
      "enum": [
        "pickup",
        "delivery"
      ]
    },
    "customer": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "line1": {
              "type": "string"
            },
            "line2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "zip": {
              "type": "string"
            }
          },
          "required": [
            "line1",
            "zip"
          ]
        },
        "notes": {
          "type": "string"
        }
      },
      "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing."
    },
    "requested_time": {
      "description": "ISO datetime; omit for ASAP",
      "type": "string"
    }
  },
  "required": [
    "slug",
    "items",
    "fulfillment",
    "customer"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢request_quote(slug, description, service_sku, customer, urgency, ...)

Ask a service business (plumber, etc.) for a price. Describe the problem in plain English. Many businesses answer instantly with an estimate and bookable slots; others reply within their stated response time (poll get_request_status).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "description": {
      "type": "string",
      "description": "What's wrong, in the customer's words"
    },
    "service_sku": {
      "description": "If the profile's service list clearly matches",
      "type": "string"
    },
    "customer": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "line1": {
              "type": "string"
            },
            "line2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "zip": {
              "type": "string"
            }
          },
          "required": [
            "line1",
            "zip"
          ]
        },
        "notes": {
          "type": "string"
        }
      },
      "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing."
    },
    "urgency": {
      "type": "string",
      "enum": [
        "emergency",
        "today",
        "this_week",
        "flexible"
      ]
    },
    "preferred_times": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "photos": {
      "description": "URLs",
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "slug",
    "description",
    "customer"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢book_slot(slug, service_sku, slot_start, customer, notes)

Book a flat-rate service (e.g. drain cleaning) into a slot from get_availability. Returns a draft awaiting the customer's approval.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "service_sku": {
      "type": "string"
    },
    "slot_start": {
      "type": "string",
      "description": "ISO start from get_availability"
    },
    "customer": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "address": {
          "type": "object",
          "properties": {
            "line1": {
              "type": "string"
            },
            "line2": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "zip": {
              "type": "string"
            }
          },
          "required": [
            "line1",
            "zip"
          ]
        },
        "notes": {
          "type": "string"
        }
      },
      "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing."
    },
    "notes": {
      "type": "string"
    }
  },
  "required": [
    "slug",
    "service_sku",
    "slot_start",
    "customer"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪approve_request(ref, customer_token, slot_start)

Use only after the customer explicitly approves the total / quote / final price. Sends it to the business. When offered_slots is present, pass the customer's chosen slot_start. If the business takes online payment, the result is status awaiting_payment with a payment_url: give that link to the customer; they pay on that page themselves.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string"
    },
    "customer_token": {
      "type": "string"
    },
    "slot_start": {
      "type": "string"
    }
  },
  "required": [
    "ref",
    "customer_token"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_request_status(ref, customer_token)

Current status, ETA / arrival window, business response, and the next step. Poll this while waiting on a business.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string"
    },
    "customer_token": {
      "type": "string"
    }
  },
  "required": [
    "ref"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴cancel_request(ref, customer_token, reason)

Cancel an order, quote or booking on the customer's behalf.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string"
    },
    "customer_token": {
      "type": "string"
    },
    "reason": {
      "type": "string"
    }
  },
  "required": [
    "ref",
    "customer_token"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada14 herramientas