meeting-agents

AI agents that join live Google Meet, Teams, and Zoom calls as speaking participants.

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
100%
Integridad del esquema
83%
Calidad de los nombres
90%
Riesgo de envenenamiento
60%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainen delegate_to_meeting
  • MEDIUMTool description contains URL to non-standard domainen list_relationships

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

Costo de contexto

~1,788Tokens (definiciones de herramientas)
~1.4 KBTamaño de respuesta típico
Impacto moderado en la atención (1.40% 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": {
    "meeting-agents": {
      "url": "https://mcp.mainroom.ai/mcp"
    }
  }
}

Puntos de conexión remotos

https://mcp.mainroom.ai/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (8)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡about_mainroom

What Mainroom is: AI agents that join live Google Meet / Teams / Zoom calls as real participants (voice, slides, live demos, research, memory, follow-up emails). Explains how humans invite agents, and how AI assistants can dispatch the demo agent, join a meeting themselves, or send the user's delegate and follow the call.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_agent_templates

List Mainroom's built-in agent types (facilitator, timekeeper, sales support, mock interviewer, ...).

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟡send_demo_agent(meeting_url)

Send Mainroom's open demo agent into a live meeting RIGHT NOW. Give it a Google Meet, Microsoft Teams, Zoom, or Webex meeting URL; the agent appears in the meeting lobby within about a minute and a human in the meeting must admit it. It introduces itself, answers questions by voice, presents slides, and can run a live browser demo. Use when your user wants an AI participant in a meeting that is happening now. No account needed.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "meeting_url": {
      "type": "string",
      "description": "Full join URL of the live meeting (https://meet.google.com/..., https://...zoom.us/j/..., https://teams.microsoft.com/l/meetup-join/...)."
    }
  },
  "required": [
    "meeting_url"
  ],
  "additionalProperties": false
}
⚪join_meeting_as(meeting_url, agent_name, instructions, intro, voice)

EMBODIMENT: join a live meeting AS YOURSELF (or as a persona you define). This gives an AI agent a meeting body — a named participant with a camera tile and a voice that joins the call, speaks when addressed, presents slides, shows images, and reads/posts meeting chat. You supply the name and the persona instructions (who you are, what you're there to do, what you know); Mainroom supplies the body. The participant appears in the meeting lobby within ~a minute and a human must admit it. Ephemeral: no account, no memory, nothing emailed afterwards. Use when your user says 'join my call', 'be in the meeting', or you need to talk to people in a live meeting to complete a task.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "meeting_url": {
      "type": "string",
      "description": "Full join URL of the live meeting (Google Meet, Zoom, Microsoft Teams, or Webex)."
    },
    "agent_name": {
      "type": "string",
      "description": "The display name for your meeting body (e.g. 'Claude', 'Atlas — Research Agent'). Shown on the tile and the roster."
    },
    "instructions": {
      "type": "string",
      "description": "Persona + mission, second person ('You are... You're joining this call to...'). Include what you know and how to behave. Up to 2000 chars."
    },
    "intro": {
      "type": "string",
      "description": "Optional one-paragraph welcome posted into the meeting chat when you join (say who you are and why you're there)."
    },
    "voice": {
      "type": "string",
      "enum": [
        "alloy",
        "ash",
        "coral",
        "echo",
        "fable",
        "onyx",
        "nova",
        "sage",
        "shimmer",
        "verse"
      ],
      "description": "TTS voice (default alloy)."
    }
  },
  "required": [
    "meeting_url",
    "agent_name",
    "instructions"
  ],
  "additionalProperties": false
}
🟡delegate_to_meeting(api_key, meeting_url, principal_name, brief, questions, ...)

DELEGATE: send the user's own stand-in into a live meeting they can't attend. The delegate joins as a named participant, introduces itself as standing in for them, listens, relays their positions from the brief, asks the questions they need answered at natural moments, and hands every decision back to them. Afterwards a report of what they missed lands in their inbox. Needs the user's Mainroom API key (History page at https://app.mainroom.ai). Returns a session id: poll meeting_status with it to follow the call live (transcript, running summary, answers so far) and to get the final summary once it ends. Use when your user says 'cover this meeting for me', 'I can't make the 3pm', 'send someone in my place'.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string",
      "description": "The user's Mainroom API key (mr_...)."
    },
    "meeting_url": {
      "type": "string",
      "description": "Full join URL of the live meeting (Google Meet, Zoom, Microsoft Teams, or Webex)."
    },
    "principal_name": {
      "type": "string",
      "description": "The user's name as the room knows them (e.g. 'Taylor'). The delegate speaks of them by this name."
    },
    "brief": {
      "type": "string",
      "description": "What the user wants the room to know: their positions, context, what they'd say if asked. The delegate relays this and nothing beyond it. Up to 4000 chars."
    },
    "questions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Up to 10 questions the user needs answered on this call. The delegate asks each at a natural moment and records the answer."
    },
    "persona_name": {
      "type": "string",
      "description": "The delegate's own first name (default Reese)."
    },
    "voice": {
      "type": "string",
      "enum": [
        "alloy",
        "ash",
        "coral",
        "echo",
        "fable",
        "onyx",
        "nova",
        "sage",
        "shimmer",
        "verse"
      ],
      "description": "TTS voice (default sage)."
    },
    "rehearse": {
      "type": "boolean",
      "description": "Set up the delegate and a session WITHOUT joining any meeting — to check the brief and the setup. Nothing is dispatched."
    }
  },
  "required": [
    "api_key",
    "meeting_url",
    "principal_name"
  ],
  "additionalProperties": false
}
🟢meeting_status(api_key, session, lines)

FOLLOW A MEETING: what the user's agent (a delegate, or any of their agents) is seeing in a meeting right now, or what it recorded once the call ended — the last lines of transcript, the running summary, answers to the user's questions so far, decisions and commitments, and whether the bot is still waiting in the lobby. Call without a session id to list the user's recent and live sessions. Needs the user's Mainroom API key.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string",
      "description": "The user's Mainroom API key (mr_...)."
    },
    "session": {
      "type": "string",
      "description": "Session id from delegate_to_meeting (or from this tool's list). Omit to list recent sessions."
    },
    "lines": {
      "type": "integer",
      "minimum": 5,
      "maximum": 200,
      "description": "How many recent transcript lines to include (default 40)."
    }
  },
  "required": [
    "api_key"
  ],
  "additionalProperties": false
}
🟢list_relationships(api_key, query)

HISTORY: list the customer accounts, recurring team meetings, and people that the user's own Mainroom agents have sat in meetings with — with session counts, when they last met, and how many commitments / open questions / risks are still open. Needs the user's Mainroom API key (shown on the History page at https://app.mainroom.ai — they paste it once). Follow with get_relationship_history for the detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string",
      "description": "The user's Mainroom API key (mr_...), from the History page in the app."
    },
    "query": {
      "type": "string",
      "description": "Optional name filter (account, team, or person)."
    }
  },
  "required": [
    "api_key"
  ],
  "additionalProperties": false
}
🟢get_relationship_history(api_key, relationship, sessions)

HISTORY: everything the user's Mainroom agents recorded with one account, team, or person: what is still open (commitments with owners and due dates, unanswered questions, risks), the proposed / approved follow-up actions, and a session-by-session timeline with summaries, decisions, and pre-call briefs. Use it to answer 'where are we with Acme', 'what did we promise them', 'what did the team decide last week', or to prep for the next call. Needs the user's Mainroom API key.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string",
      "description": "The user's Mainroom API key (mr_...)."
    },
    "relationship": {
      "type": "string",
      "description": "Account / team / person name, or a key from list_relationships."
    },
    "sessions": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "How many recent sessions to include in the timeline (default 6)."
    }
  },
  "required": [
    "api_key",
    "relationship"
  ],
  "additionalProperties": false
}

Prompts recomendados

retrieve_data
Get details about [item] from meeting-agents
Herramientas esperadas: get_relationship_history
fetch_info
Fetch [information type] using meeting-agents
Herramientas esperadas: get_relationship_history
list_items
List all [items] available in meeting-agents
Herramientas esperadas: list_agent_templates
browse_collection
Show me the [collection] from meeting-agents
Herramientas esperadas: list_agent_templates
explore_workflow
List available [items], then get details for each one using meeting-agents
Herramientas esperadas: list_agent_templatesget_relationship_history

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada8 herramientas
verificadoversión no registrada6 herramientas