lesgooo.fun

Free no-signup group planner: dates, RSVPs, place votes, shared checklist and split costs.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
99%
Integridad del esquema
98%
Calidad de los nombres
97%
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

~3,328Tokens (definiciones de herramientas)
~1.7 KBTamaño de respuesta típico
Impacto significativo en la atención (2.60% 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": {
    "lesgooo": {
      "url": "https://lesgooo.fun/mcp"
    }
  }
}

Puntos de conexión remotos

https://lesgooo.fun/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (15)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡create_plan(title, your_name)

Create a new lesgooo plan and get its shareable links. Optionally adds the user as the first participant (returns their participant_token). Only call after the user asked for it.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Short plan name, e.g. \"Weekend at the cabin\" (max 120 chars)."
    },
    "your_name": {
      "type": "string",
      "description": "Name of the person you act for; adds them as the first participant (max 80 chars)."
    }
  },
  "required": [
    "title"
  ],
  "additionalProperties": false
}
🟢get_plan(plan, since)

Read a plan: today's date, title, event details, participants and their available dates and RSVP, the best dates so far (with weekday), the places being voted on (with place_id) and the currency for shared costs. Pass since (the server_time of an earlier call) to also get a list of what changed: people, days, RSVPs, places, checklist, expenses and payments.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "since": {
      "type": "string",
      "description": "Optional ISO timestamp (server_time from an earlier get_plan)."
    }
  },
  "required": [
    "plan"
  ],
  "additionalProperties": false
}
⚪join_plan(plan, name)

Join a plan as the person you act for. If a participant with the same name already exists, you act as them (like picking your name in the app). Returns participant_id and participant_token. Confirm the name with the user first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "name": {
      "type": "string",
      "description": "The person's name as the group knows them (max 80 chars)."
    }
  },
  "required": [
    "plan",
    "name"
  ],
  "additionalProperties": false
}
🔴set_availability(plan, participant_id, participant_token, dates, mode)

Set which days the person is free (YYYY-MM-DD, today up to 2 years ahead). mode: "replace" (default) sets exactly these days, "add" / "remove" change them. Only with the user's confirmation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "dates": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "maxItems": 370
    },
    "mode": {
      "type": "string",
      "enum": [
        "replace",
        "add",
        "remove"
      ]
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "dates"
  ],
  "additionalProperties": false
}
🔴set_rsvp(plan, participant_id, participant_token, status, occurrence_date)

Answer whether the person is coming: "yes", "no", or "clear" to remove the answer. For a repeating event the answer is for one occurrence: the next one by default, or pass occurrence_date (see get_plan event.upcoming). Only with the user's confirmation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "status": {
      "type": "string",
      "enum": [
        "yes",
        "no",
        "clear"
      ]
    },
    "occurrence_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Repeating events only: the date of the occurrence to answer for."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "status"
  ],
  "additionalProperties": false
}
🟡add_place(plan, participant_id, participant_token, name, address, ...)

Suggest a place the group can vote on (Where tab). Give a name and optionally an address plus either a Google Maps link or any other web link (Mapy.cz, Airbnb, Booking, the venue's website). Duplicates are merged. Acts as the participant.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "name": {
      "type": "string",
      "description": "Place name (max 300 chars)."
    },
    "address": {
      "type": "string",
      "description": "Optional address (max 500 chars)."
    },
    "google_maps_url": {
      "type": "string",
      "description": "Optional Google Maps link (google.com/maps or maps.app.goo.gl). Links with coordinates (…/@50.08,14.42,…) also show a map preview."
    },
    "link": {
      "type": "string",
      "description": "Optional link to any other page about the place (http/https), instead of google_maps_url."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "name"
  ],
  "additionalProperties": false
}
🔴vote_place(plan, participant_id, participant_token, place_id, vote)

Up-vote ("up"), down-vote ("down") or remove your vote ("clear") on a place, by place_id from get_plan. Only with the user's confirmation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "place_id": {
      "type": "string",
      "description": "From get_plan places[].place_id or add_place (the exact place name also works)."
    },
    "vote": {
      "type": "string",
      "enum": [
        "up",
        "down",
        "clear"
      ]
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "place_id",
    "vote"
  ],
  "additionalProperties": false
}
🟢get_checklist(plan)

Read the plan's shared checklist: open and done items, with item_id.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    }
  },
  "required": [
    "plan"
  ],
  "additionalProperties": false
}
🟡add_checklist_item(plan, participant_id, participant_token, text)

Add an item to the plan's shared checklist (e.g. "Bring the grill"). Acts as the participant.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "text": {
      "type": "string",
      "description": "Item text (max 500 chars)."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "text"
  ],
  "additionalProperties": false
}
🔴check_item(plan, participant_id, participant_token, item_id, done)

Mark a checklist item done (done: true) or open again (done: false), by item_id from get_checklist.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "item_id": {
      "type": "string",
      "description": "From get_checklist or add_checklist_item (the exact item text also works)."
    },
    "done": {
      "type": "boolean"
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "item_id",
    "done"
  ],
  "additionalProperties": false
}
🔴update_event(plan, participant_id, participant_token, title, start_date, ...)

Change the shared event everyone sees on the RSVP page: title, date/time, place or description. Only after the group agreed. Times are local (no time zone); omit start_time for an all-day event. Send only the fields to change; an empty string clears a field.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "title": {
      "type": "string",
      "description": "Plan / event name (max 120 chars)."
    },
    "start_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "start_time": {
      "type": "string",
      "pattern": "^\\d{2}:\\d{2}$",
      "description": "HH:MM, local time."
    },
    "end_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "end_time": {
      "type": "string",
      "pattern": "^\\d{2}:\\d{2}$"
    },
    "location": {
      "type": "string",
      "description": "Place as plain text (max 500 chars)."
    },
    "description": {
      "type": "string",
      "description": "Details for the group (max 4000 chars)."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token"
  ],
  "additionalProperties": false
}
🟢get_expenses(plan)

Read the plan's shared costs (Splitwise tab): expenses, each person's balance, and the suggested payments to settle up. Amounts are in the plan's currency.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    }
  },
  "required": [
    "plan"
  ],
  "additionalProperties": false
}
🟡add_expense(plan, participant_id, participant_token, description, amount, ...)

Record a shared expense, split equally. paid_by defaults to the person you act for; split_among defaults to everyone in the plan. Always confirm the amount and who shares it with the user first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "description": {
      "type": "string",
      "description": "What it was for, e.g. \"Groceries\" (max 120 chars)."
    },
    "amount": {
      "type": "number",
      "description": "Total, max 2 decimals (e.g. 42.5). Send a plain number."
    },
    "currency": {
      "type": "string",
      "description": "ISO code, e.g. CZK or EUR. Sets the plan's currency if it has no expenses yet; otherwise must match it (see get_plan currency)."
    },
    "paid_by_participant_id": {
      "type": "string",
      "description": "Who paid (participant_id from get_plan, or their exact name). Defaults to you."
    },
    "split_among": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Who shares the cost (participant_id values or exact names). Defaults to everyone."
    },
    "allow_duplicate": {
      "type": "boolean",
      "description": "Only if the user confirms a second, identical expense within 10 minutes (otherwise it is treated as a retry)."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "description",
    "amount"
  ],
  "additionalProperties": false
}
🟢record_payment(plan, participant_id, participant_token, to_participant_id, amount, ...)

Record that the person you act for paid someone back (settling up). amount defaults to what they owe that person according to get_expenses. Only after the money was actually sent.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "to_participant_id": {
      "type": "string",
      "description": "Who received the money (participant_id, or their exact name)."
    },
    "amount": {
      "type": "number",
      "description": "Optional; defaults to the suggested settle-up amount."
    },
    "allow_duplicate": {
      "type": "boolean",
      "description": "Only if the user confirms a second, identical payment within 10 minutes (otherwise it is treated as a retry)."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "to_participant_id"
  ],
  "additionalProperties": false
}
🔴remove_entry(plan, participant_id, participant_token, kind, id)

Delete an expense, payment, checklist item or place that the person you act for added (e.g. to fix a wrong amount: remove, then add again). Entries added by others can't be removed here. Always confirm with the user first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "Plan link (e.g. https://lesgooo.fun/ab12/when) or its 4-character id."
    },
    "participant_id": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "participant_token": {
      "type": "string",
      "description": "From create_plan or join_plan."
    },
    "kind": {
      "type": "string",
      "enum": [
        "expense",
        "payment",
        "checklist_item",
        "place"
      ]
    },
    "id": {
      "type": "string",
      "description": "expense_id / payment_id (get_expenses), item_id (get_checklist) or place_id (get_plan). For items and places the exact text/name also works."
    }
  },
  "required": [
    "plan",
    "participant_id",
    "participant_token",
    "kind",
    "id"
  ],
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada15 herramientas
verificadoversión no registrada15 herramientas