---
title: Su asistente de IA en DoneOnce — conecte Claude en un minuto
snippet: DoneOnce tiene un servidor MCP, la forma estándar en que un asistente de IA como Claude o ChatGPT se conecta a una app. Conéctelo y pídale agregar un cliente.
keywords: ia, asistente, agente, claude, claude code, chatgpt, mcp, conector, conectar, token, automatización, configurar con ia, ai, assistant, agent, connector, connect
---

# Su asistente de IA en DoneOnce

DoneOnce tiene un **servidor MCP**: la forma estándar en que un asistente de IA (Claude, ChatGPT y
otros) se conecta a una app. Una vez conectado, puede pedirle a su asistente cosas como *"agrega a
los García en 12 Oak St, cada dos semanas los martes"*, *"¿quién está atrasado con los pagos?"* o
*"mándale a Ana el presupuesto de la limpieza de la piscina"*, y el trabajo se hace **dentro de su
DoneOnce, como usted**.

Puede hacer exactamente lo que usted puede hacer en la app, y nada más: el asistente de un técnico
ve el día y los clientes, el de la oficina ve el dinero. Todo lo que mueve dinero o envía mensajes
se lo describe primero y solo lo hace después de su sí.

## Conectar Claude (claude.ai o la app de escritorio)

1. En Claude, abra **Personalizar → Conectores** (*Customize → Connectors*), pulse **+** y elija
   **Añadir conector personalizado** (*Add custom connector*).
2. Póngale de nombre **DoneOnce** y pegue esta URL: `https://mcp.doneonce.app/mcp`
3. Pulse **Añadir** y luego **Conectar**. Se abre una ventana de DoneOnce: entre con su email y
   contraseña de DoneOnce y pulse **Aprobar**.

Eso es todo: ningún token que copiar. El plan gratuito de Claude permite un conector personalizado;
los planes de pago, más.

## Conectar Claude Code

En una terminal:

```
claude mcp add --transport http --scope user doneonce https://mcp.doneonce.app/mcp
```

Luego escriba `/mcp` dentro de Claude Code, elija **doneonce** y entre de la misma forma.

## Otros asistentes

Cualquier asistente que admita conectores MCP remotos con inicio de sesión (OAuth) funciona con la
misma URL. Un programa que solo puede enviar una cabecera fija puede usar un token: en DoneOnce,
**Ajustes → Agentes → Cómo conectar → Con un token**, genere uno y envíelo como
`Authorization: Bearer <token>`.

## Usted sigue al mando

- Cada conexión dura **90 días**; después, su asistente le pide aprobar otra vez.
- **Ajustes → Agentes** muestra cada conexión y cuándo se usó por última vez. **Revocar** la termina
  al instante. Volver a conectar el mismo asistente reemplaza su conexión anterior.
- Si su rol cambia, el acceso de su asistente cambia con él en la siguiente petición.

## Para el asistente que lee esto

- Usted actúa como la persona que lo conectó, con sus permisos; el servidor los vuelve a comprobar
  en cada llamada. Una negativa es la frase del propio servidor: transmítala, no la esquive.
- El dinero va en **centavos enteros**. Una herramienta marcada *get a yes first* mueve dinero o
  envía algo a un cliente: diga lo que va a hacer y espere el sí de la persona.
- Para configurar un negocio nuevo, en este orden: el perfil del negocio → **zonas** (los códigos
  postales que atiende y qué día de la semana va cada una) → **categorías y lista de precios** →
  **clientes**, cada uno con su **dirección** → sus **servicios recurrentes** → el **equipo**. Use
  `find_client` antes de agregar un cliente, para que nadie quede dos veces.
- Una hoja de cálculo completa de clientes entra con la importación de abajo, nunca con un
  `add_client` a la vez. Un equipo o una lista de precios de varias líneas sí entra de uno en uno
  (`add_crew_member`, `add_price_list_item`): muestre la lista completa y pida un solo sí.
- Para comprobar lo que quedó: `list_clients` da cuántos clientes hay y los servicios de cada uno
  (uno sin servicio tiene la lista vacía). Un trabajo de una sola vez con principio y fin —cambiar
  una bomba, una limpieza profunda— es `add_job`; se ven con `list_jobs`.
- **El último paso es la semana.** Los servicios recurrentes importados o nuevos empiezan sin ruta.
  `week_plan` muestra los días fijos de cada persona y la cola, con una sugerencia para cada servicio
  según su zona (el día de la zona y, si la zona lo tiene, su persona). Muéstrele a la persona la
  cola con las sugerencias, pida un solo sí y luego `place_service` para cada uno (su serviceId, la
  persona del equipo y todos los días en que va). Lea `week_plan` otra vez e informe la semana. A
  cada persona que lleva ruta, dele sus días de trabajo y los minutos de su jornada
  (`update_crew_member`): la agenda mide cada día contra eso.
- Lo que se hace en la app, no aquí: programar un trabajo en un día, reordenar las paradas de un día
  y conectar Stripe (`connect_onboarding_link` da el enlace; la persona lo abre). Dígaselo a la
  persona al terminar, con el siguiente paso concreto.

## Traer una lista completa de clientes (para el asistente)

La persona le da su hoja de cálculo — una exportación de Jobber, Housecall Pro, QuickBooks, Excel o
Google Sheets. Dos herramientas, siempre en este orden:

1. **`import_book`** con el archivo **como texto, tal cual se lo dieron**, con la fila de
   encabezados primero. Nunca reescriba, limpie ni resuma filas: el servidor lee el archivo con las
   mismas reglas que usa Importar CSV en la app, y todavía no se escribe nada. Nombre las columnas
   solo si la suposición de la respuesta está mal (`mapping`: `name`, `street`, `zip` obligatorios;
   `phone`, `email`, `category`, `day`, `frequency`, `notes` opcionales; `null` deja uno fuera).
   Si el archivo trae la dirección completa en una sola columna ("12 Oak St, Stuart, FL 34994"),
   déjela así: sin columna de código postal, el servidor lo lee del final de la dirección
   (`zipFromAddress: true` en la respuesta) y rechaza con su motivo la fila que no lo trae.
2. **Muéstrele a la persona la respuesta** en palabras sencillas: cuántos serán clientes, cuántos
   tendrán un servicio semanal o cada dos semanas y qué día (lo decide la zona que cubre el código
   postal, luego la columna de día del archivo), qué filas se rechazan y por qué, cuáles quedan sin
   servicio y por qué, y las categorías nuevas. Si una columna se leyó mal, corrija `mapping` y
   vuelva a previsualizar.
3. **`commit_import`** con el `importId`, solo después de su sí. Llámelo otra vez mientras
   `remaining` sea mayor que 0 — sigue donde se quedó y nunca escribe una fila dos veces. Después
   informe los totales: creados, servicios, duplicados, fallidos (cada fallo trae su motivo).

Lo que entra: cada cliente con su dirección como la principal (códigos de portón y notas en la
dirección), su categoría y su servicio recurrente, **sin asignar** — después `week_plan` y
`place_service` ponen cada uno en una ruta, como arriba (o la oficina lo hace desde la cola de la
semana en la app). Los servicios mensuales y de una sola vez quedan para que la
persona los agregue en el diálogo del servicio; la vista previa nombra esas filas. Configure las
zonas antes de importar si el negocio las tiene, para que los días salgan bien.
