Juntamos: organizar grupos

Crear amigo invisible, votaciones y repartos de gastos para un grupo

使うべきか

品質と安全性

B
説明の品質
91%
スキーマの完全性
99%
命名の品質
80%
ポイズニングのリスク
40%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(7)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'crear_eleccion_fecha' description contains placeholder textcrear_eleccion_fecha 内
  • MEDIUMTool 'crear_gastos' description contains placeholder textcrear_gastos 内
  • MEDIUMTool 'anadir_gasto' description contains placeholder textanadir_gasto 内
  • INFOTool description contains placeholder or incomplete textcrear_eleccion_fecha 内
  • INFOTool description contains placeholder or incomplete textcrear_gastos 内
  • INFOTool description contains placeholder or incomplete textanadir_gasto 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~3,740トークン数(ツール定義)
~2.3 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 2.92%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "grupos": {
      "url": "https://juntamos.es/grupos/mcp"
    }
  }
}

リモートエンドポイント

https://juntamos.es/grupos/mcpstreamable-http

できること

ツール一覧

ツール(7)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢crear_amigo_invisible(participantes, exclusiones, presupuesto, fecha, titulo, ...)

Hace el sorteo del amigo invisible en el servidor y crea un enlace privado por participante, donde cada uno ve solo a quién le regala. Respeta exclusiones (parejas que no pueden tocarse). Úsala para: "organiza un amigo invisible con Ana, Luis, Marta y Pablo, presupuesto 20 €", "sorteo de amigo invisible para la oficina sin que Ana y Luis se toquen", "haz el amigo invisible de la familia para el 24 de diciembre". Devuelve: un enlace privado por participante (para repartir a cada uno el suyo), un enlace público para el grupo y el enlace de administración del organizador. El resultado completo no se devuelve nunca. Límites: de 3 a 100 participantes con nombres distintos; sin emails; se borra 90 días después de la fecha. Draws Secret Santa names on the server and creates one private link per participant, where each person only sees who they give to. Supports exclusions (couples who must not draw each other). Use it for: "organise a Secret Santa with Ann, Luke, Mary and Peter, budget 20 euros", "office Secret Santa where Ann and Luke cannot get each other". Returns: one private link per participant (send each person their own), a public page for the group and the organiser admin link. The full result is never returned. Limits: 3 to 100 participants with different names; no emails; deleted 90 days after the date.

入力スキーマ

{
  "type": "object",
  "properties": {
    "participantes": {
      "minItems": 3,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 40
      },
      "description": "Nombres o apodos, distintos entre sí / names or nicknames, all different. Ej.: [\"Ana\", \"Luis\", \"Marta\"]"
    },
    "exclusiones": {
      "description": "Parejas que no pueden tocarse (en los dos sentidos) / pairs who must not draw each other. Ej.: [[\"Ana\", \"Luis\"]]",
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "array",
        "items": [
          {
            "type": "string"
          },
          {
            "type": "string"
          }
        ],
        "additionalItems": false,
        "minItems": 2,
        "maxItems": 2
      }
    },
    "presupuesto": {
      "description": "Presupuesto orientativo / budget. Ej.: \"20 €\"",
      "type": "string",
      "maxLength": 40
    },
    "fecha": {
      "description": "Fecha del intercambio AAAA-MM-DD / exchange date YYYY-MM-DD",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "titulo": {
      "description": "Título / title. Ej.: \"Amigo invisible de la oficina\"",
      "type": "string",
      "maxLength": 120
    },
    "idioma": {
      "default": "es",
      "description": "Idioma de las páginas del evento / language of the event pages: \"es\" or \"en\". Default \"es\".",
      "type": "string",
      "enum": [
        "es",
        "en"
      ]
    }
  },
  "required": [
    "participantes"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪crear_encuesta(pregunta, opciones, multiple, cierre, idioma)

Crea una encuesta o votación con opciones de texto para compartir con un grupo; voto único o múltiple, resultados en tiempo real y cierre opcional. Úsala para: "haz una votación para elegir restaurante: italiano, japonés o asador", "crea una encuesta de qué día hacemos la reunión", "votación con varias respuestas para elegir actividades del viaje". Devuelve: el enlace para votar (compartirlo en el grupo) y el enlace de administración (para cerrarla y ver resultados). Límites: de 2 a 30 opciones distintas; hasta 100 votantes; el cierre debe ser futuro. Creates a poll with text options to share with a group; single or multiple choice, live results and optional closing time. Use it for: "make a poll to choose a restaurant: Italian, Japanese or steakhouse", "create a multiple-choice vote for trip activities". Returns: the voting link (share it with the group) and the admin link (to close it and see results). Limits: 2 to 30 different options; up to 100 voters; closing time must be in the future.

入力スキーマ

{
  "type": "object",
  "properties": {
    "pregunta": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "description": "Pregunta / question. Ej.: \"¿Dónde cenamos?\""
    },
    "opciones": {
      "minItems": 2,
      "maxItems": 30,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 120
      },
      "description": "Opciones / options. Ej.: [\"Italiano\", \"Japonés\"]"
    },
    "multiple": {
      "default": false,
      "description": "true si se pueden elegir varias / true to allow several choices",
      "type": "boolean"
    },
    "cierre": {
      "description": "Cierre automático ISO 8601 con zona / closing time ISO 8601 with offset. Ej.: \"2026-11-20T20:00:00+01:00\"",
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
    },
    "idioma": {
      "default": "es",
      "description": "Idioma de las páginas del evento / language of the event pages: \"es\" or \"en\". Default \"es\".",
      "type": "string",
      "enum": [
        "es",
        "en"
      ]
    }
  },
  "required": [
    "pregunta",
    "opciones"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪crear_eleccion_fecha(titulo, fechas, idioma)

Crea una página para que un grupo elija fecha: cada persona marca en cada día propuesto si puede, si hace falta o no, y se destaca la mejor fecha. Úsala para: "ayúdame a elegir fecha para la cena de Navidad entre el 12, 13, 19 y 20 de diciembre", "qué fin de semana de noviembre podemos quedar todos", "busca fecha para la reunión de antiguos alumnos". Devuelve: el enlace para que cada uno marque su disponibilidad y el enlace de administración. Límites: de 2 a 31 días, en formato AAAA-MM-DD y no pasados; hasta 100 personas. Creates a page for a group to pick a date: everyone marks yes, if needed or no on each suggested day and the best date is highlighted. Use it for: "help me pick a date for the Christmas dinner: Dec 12, 13, 19 or 20", "which November weekend can we all meet". Returns: the link for everyone to mark availability and the admin link. Limits: 2 to 31 days, YYYY-MM-DD, not in the past; up to 100 people.

入力スキーマ

{
  "type": "object",
  "properties": {
    "titulo": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "Título / title. Ej.: \"Cena de Navidad\""
    },
    "fechas": {
      "minItems": 2,
      "maxItems": 31,
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "description": "Días propuestos AAAA-MM-DD / suggested days YYYY-MM-DD"
    },
    "idioma": {
      "default": "es",
      "description": "Idioma de las páginas del evento / language of the event pages: \"es\" or \"en\". Default \"es\".",
      "type": "string",
      "enum": [
        "es",
        "en"
      ]
    }
  },
  "required": [
    "titulo",
    "fechas"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡crear_lista_quien_trae(titulo, elementos, fecha, idioma)

Crea una lista de cosas que hacen falta (bebidas, postre, carbón…) para que cada persona del grupo se apunte a lo que va a traer, sin repetir. Úsala para: "haz una lista de quién trae qué para la barbacoa del sábado", "organiza qué lleva cada uno a la cena de Nochevieja", "lista para el viaje: tienda, hornillo, nevera". Devuelve: el enlace para que cada uno se apunte y el enlace de administración. Límites: de 1 a 100 cosas; cualquiera del grupo puede añadir más. Creates a list of things needed (drinks, dessert, charcoal…) so everyone in the group signs up for what they will bring, without duplicates. Use it for: "make a who-brings-what list for Saturday's barbecue", "organise what everyone brings to the New Year's dinner". Returns: the sign-up link and the admin link. Limits: 1 to 100 items; anyone in the group can add more.

入力スキーマ

{
  "type": "object",
  "properties": {
    "titulo": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "Título / title. Ej.: \"Barbacoa del sábado\""
    },
    "elementos": {
      "minItems": 1,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 120
      },
      "description": "Lo que hace falta / items needed. Ej.: [\"Bebidas\", \"Postre\", \"Pan\"]"
    },
    "fecha": {
      "description": "Fecha del evento AAAA-MM-DD / event date YYYY-MM-DD",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "idioma": {
      "default": "es",
      "description": "Idioma de las páginas del evento / language of the event pages: \"es\" or \"en\". Default \"es\".",
      "type": "string",
      "enum": [
        "es",
        "en"
      ]
    }
  },
  "required": [
    "titulo",
    "elementos"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡crear_gastos(titulo, participantes, idioma)

Crea un grupo de gastos compartidos (viaje, piso, cena) donde se apunta quién pagó qué y se calcula quién debe a quién con el mínimo de pagos. Úsala para: "crea un grupo de gastos para el viaje a Asturias con Ana, Luis y Marta", "quiero repartir los gastos de la casa rural entre 6", "apunta gastos compartidos del piso". Devuelve: el enlace del grupo (todos pueden apuntar gastos) y el enlace de administración, que sirve para anadir_gasto y ver_resultados. Límites: de 2 a 100 personas con nombres distintos; importes en euros. Creates a shared expenses group (trip, flat, dinner) to record who paid what and work out who owes whom with the fewest payments. Use it for: "create an expense group for the trip with Ann, Luke and Mary", "split the holiday cottage costs between 6 people". Returns: the group link (everyone can add expenses) and the admin link, used by anadir_gasto and ver_resultados. Limits: 2 to 100 people with different names; amounts in euros.

入力スキーマ

{
  "type": "object",
  "properties": {
    "titulo": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120,
      "description": "Título / title. Ej.: \"Viaje a Asturias\""
    },
    "participantes": {
      "minItems": 2,
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 40
      },
      "description": "Nombres, distintos entre sí / names, all different"
    },
    "idioma": {
      "default": "es",
      "description": "Idioma de las páginas del evento / language of the event pages: \"es\" or \"en\". Default \"es\".",
      "type": "string",
      "enum": [
        "es",
        "en"
      ]
    }
  },
  "required": [
    "titulo",
    "participantes"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪anadir_gasto(id_admin, quien_pago, importe, entre_quienes, concepto)

Añade un gasto a un grupo de gastos compartidos creado con crear_gastos (quién pagó, cuánto y entre quiénes se reparte) y devuelve quién debe a quién. Úsala para: "Ana pagó 60 € de la cena entre todos", "añade que Luis pagó 24,50 de gasolina entre Luis y Marta". Devuelve: los pagos para quedar en paz y el total, con el enlace del grupo. Límites: necesita el enlace o token de administración (id_admin); los nombres deben estar en el grupo; si entre_quienes va vacío, se reparte entre todos. Adds an expense to a shared expenses group created with crear_gastos (who paid, how much and who shares it) and returns who owes whom. Use it for: "Ann paid 60 euros for dinner for everyone", "add that Luke paid 24.50 for fuel shared by Luke and Mary". Returns: the payments to settle up and the total, with the group link. Limits: needs the admin link or token (id_admin); names must be in the group; empty entre_quienes means everyone.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id_admin": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200,
      "description": "Enlace o token de administración devuelto por crear_gastos / admin link or token returned by crear_gastos"
    },
    "quien_pago": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40,
      "description": "Quién pagó / who paid. Ej.: \"Ana\""
    },
    "importe": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0
        },
        {
          "type": "string",
          "maxLength": 20
        }
      ],
      "description": "Importe en euros / amount in euros. Ej.: 24.5 o \"24,50\""
    },
    "entre_quienes": {
      "description": "Entre quiénes se reparte; vacío = todos / who shares it; empty = everyone",
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 40
      }
    },
    "concepto": {
      "description": "Concepto / what for. Ej.: \"Cena\"",
      "type": "string",
      "maxLength": 80
    }
  },
  "required": [
    "id_admin",
    "quien_pago",
    "importe"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢ver_resultados(id_admin)

Muestra el estado de un evento de Juntamos: votos de la encuesta, mejor fecha, quién trae qué, quién debe a quién o cuántos han abierto su sobre del amigo invisible. Úsala para: "¿cómo va la votación del restaurante?", "¿quién debe a quién en el viaje?", "¿cuántos han abierto ya su amigo invisible?". Devuelve: un resumen de los resultados y el enlace a la página del evento. Límites: necesita el enlace o token de administración (id_admin); nunca revela quién le regala a quién en el amigo invisible. Shows the status of a Juntamos event: poll votes, best date, who brings what, who owes whom or how many opened their Secret Santa envelope. Use it for: "how is the restaurant poll going?", "who owes whom from the trip?". Returns: a summary of the results and the event link. Limits: needs the admin link or token (id_admin); never reveals who got whom in Secret Santa.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id_admin": {
      "type": "string",
      "minLength": 10,
      "maxLength": 200,
      "description": "Enlace o token de administración / admin link or token"
    }
  },
  "required": [
    "id_admin"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 7 件