> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zuddl.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Speaker

> **Tool name:** `v1_create_speaker` · **Behaviour:** ✏️ Write

Create a new speaker for a specific event in your Zuddl organization.

**Same as Public API:** [Create a new speaker](/api-reference/speakers/create-a-new-speaker) (`POST /v1/events/{eventId}/speakers`)



## OpenAPI

````yaml https://api.prod.zuddl.com/api/v3/api-docs/mcp-tools post /tools/v1_create_speaker
openapi: 3.1.0
info:
  title: Zuddl MCP Tools Reference
  description: >-
    The Zuddl MCP server lets AI assistants such as Claude and ChatGPT work with
    your Zuddl organization through the [Model Context
    Protocol](https://modelcontextprotocol.io). This reference lists every tool
    the server offers. It is generated from the live server, so it always
    matches what your assistant sees.


    # Connecting


    Add `https://setup.zuddl.com/api/mcp` as a remote MCP server in your
    assistant. It signs you in to Zuddl with OAuth and then calls tools on your
    behalf, with your permissions. AI features must be enabled for your
    organization.


    # Calling a tool


    Assistants call a tool with a JSON-RPC `tools/call` request whose `name` is
    the tool name and whose `arguments` match the request body documented on the
    tool's page. The `/tools/<name>` paths in this reference identify tools;
    they are not HTTP endpoints.


    # Behaviour labels


    | Label | Meaning |

    | --- | --- |

    | 🔒 Read-only | Reads data and changes nothing. |

    | ✏️ Write | Creates or updates data, but does not delete it. |

    | ⚠️ Destructive | Deletes or removes data. Most assistants ask you to
    approve these calls. |

    | 🔁 Idempotent | Calling it again with the same arguments has no further
    effect. |


    A tool that mirrors a Public API endpoint links to that endpoint's page.
    MCP-only tools have no Public API equivalent.
  version: 1.0.0
servers:
  - url: https://setup.zuddl.com/api/mcp
    description: Zuddl MCP server
security:
  - oauth: []
tags:
  - name: Events
  - name: Attendees
  - name: Sessions
  - name: Speakers
  - name: Sponsors
  - name: Locations
  - name: Teams
  - name: Brand Kits
  - name: Registration flows & tickets
  - name: Analytics
paths:
  /tools/v1_create_speaker:
    post:
      tags:
        - Speakers
      summary: Create Speaker
      description: >-
        **Tool name:** `v1_create_speaker` · **Behaviour:** ✏️ Write


        Create a new speaker for a specific event in your Zuddl organization.


        **Same as Public API:** [Create a new
        speaker](/api-reference/speakers/create-a-new-speaker) (`POST
        /v1/events/{eventId}/speakers`)
      operationId: v1_create_speaker
      requestBody:
        description: The tool's `arguments`, as sent in a JSON-RPC `tools/call` request.
        content:
          application/json:
            schema:
              type: object
              properties:
                eventId:
                  type: string
                  description: Unique identifier of the event
                speakerCreateRequest:
                  type: object
                  description: >-
                    Speaker details to create (name, email, company, bio, social
                    links, etc.)
                  properties:
                    bio:
                      type: string
                      description: >-
                        Bio of the speaker. May contain rich-text HTML markup
                        (e.g. bold, italic, lists, links). Plain text is also
                        accepted and stored as-is. Disallowed content
                        (script/iframe tags, javascript: URLs, inline event
                        handlers) is rejected.
                    company:
                      type: string
                      description: Company of the speaker
                    designation:
                      type: string
                      description: Designation of the speaker
                    email:
                      type: string
                      description: Email of the speaker
                    externalRefId:
                      type: string
                      description: >-
                        A reference ID that you can use to map this speaker to
                        your external systems or databases
                    facebookProfile:
                      type: string
                      description: Facebook profile URL of the speaker
                    firstName:
                      type: string
                      description: First name of the speaker
                    lastName:
                      type: string
                      description: Last name of the speaker
                    linkedInProfile:
                      type: string
                      description: LinkedIn profile URL of the speaker
                    twitterProfile:
                      type: string
                      description: Twitter profile URL of the speaker
                    websiteUrl:
                      type: string
                      description: Personal website URL of the speaker
                  required:
                    - email
                    - firstName
                    - lastName
              required:
                - eventId
                - speakerCreateRequest
        required: true
      responses:
        '200':
          description: A JSON-RPC `tools/call` result. The tool's output is in `content`.
components:
  securitySchemes:
    oauth:
      type: http
      description: >-
        OAuth 2.1 access token. MCP clients obtain it themselves (dynamic client
        registration + PKCE) when you connect them to the server URL above.
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.