Skip to main content
Glama

add-slide-section-header

Add a section header slide to organize PowerPoint presentations into clear segments with titles and optional subtitles.

Instructions

This tool adds a section header (a.k.a segue) slide to the presentation you are working on. The tool doesn't return anything. It requires the presentation_name to work on.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
presentation_nameYesName of the presentation to add the slide to
headerYesSection header title
subtitleNoSection header subtitle

Implementation Reference

  • The core handler function that adds a section header slide to the presentation. It retrieves the presentation, uses slide layout 2 (SLIDE_LAYOUT_SECTION_HEADER), sets the header as title, and optional subtitle.
    def add_section_header_slide(self, presentation_name: str, header: str, subtitle: str):
        """
        Create a section header slide for the given presentation
    
        Args:
            presentation_name: The presentation to add the slide to
            header: The section header to use
            subtitle: The subtitle of the section header to use
        """
        try:
            prs = self.presentations[presentation_name]
        except KeyError as e:
            raise ValueError(f"Presentation '{presentation_name}' not found")
        slide_master = prs.slide_master
    
        # Add a new slide with layout
        slide_layout = prs.slide_layouts[self.SLIDE_LAYOUT_SECTION_HEADER]
        slide = prs.slides.add_slide(slide_layout)
    
        # Set the subtitle
        if subtitle:
            subtitle_shape = slide.placeholders[1]
            text_frame = subtitle_shape.text_frame
            text_frame.text = subtitle
    
        # Set the section header
        if header:
            header_shape = slide.shapes.title
            header_shape.text = header
    
        return slide
  • Tool registration in the list_tools handler, including name, description, and input schema.
    types.Tool(
        name="add-slide-section-header",
        description="This tool adds a section header (a.k.a segue) slide to the presentation you are working on. The tool doesn't "
                    "return anything. It requires the presentation_name to work on.",
        inputSchema={
            "type": "object",
            "properties": {
                "presentation_name": {
                    "type": "string",
                    "description": "Name of the presentation to add the slide to",
                },
                "header": {
                    "type": "string",
                    "description": "Section header title",
                },
                "subtitle": {
                    "type": "string",
                    "description": "Section header subtitle",
                }
    
            },
            "required": ["presentation_name", "header"],
        },
    ),
  • Dispatch handler in call_tool that validates arguments and delegates to PresentationManager.add_section_header_slide.
    elif name == "add-slide-section-header":
        presentation_name = arguments.get("presentation_name")
        header = arguments.get("header")
        subtitle = arguments.get("subtitle")
    
        if not all([presentation_name, header]):
            raise ValueError("Missing required arguments")
    
        if presentation_name not in presentation_manager.presentations:
            raise ValueError(f"Presentation not found: {presentation_name}")
    
        try:
            slide = presentation_manager.add_section_header_slide(presentation_name, header, subtitle)
        except Exception as e:
            raise ValueError(f"Unable to add slide '{header}' to presentation: {presentation_name}")
    
        return [
            types.TextContent(
                type="text",
                text=f"Added slide '{header}' to presentation: {presentation_name}"
            )
        ]

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/supercurses/powerpoint'

If you have feedback or need assistance with the MCP directory API, please join our Discord server