Skip to main content
Glama
README.md
# slideport

Google Slides presentations and slides as MCP tools, talking to the
Google Slides API v1. slideport is a clean-room rebuild of the core
subset of the Google Slides MCP surface, under a new name: presentation
and slide operations plus basic text editing, fresh code, no copied
branding.

## Tools (core subset, 9)

`get_presentation`, `create_presentation`, `get_slide`, `create_slide`,
`duplicate_slide`, `delete_slide`, `create_textbox`, `insert_text`,
`replace_all_text`.

Image, table and chart insertion, speaker notes, layout and master
editing, thumbnail export, general presentations.batchUpdate
passthrough and comments are not in this subset.

## Setup

Set a Google OAuth access token:

```bash
export GOOGLE_ACCESS_TOKEN=ya29....
```

Optionally override the API base with `SLIDES_API_URL`
(default `https://slides.googleapis.com/v1`). Without the token, every
tool call fails with an error naming the missing variable.

## CLI

```bash
npx @reneturcios/slideport get_presentation '{"presentation_id":"abc"}'
npx @reneturcios/slideport mcp        # stdio MCP server
```

Each tool name is a subcommand taking one JSON object argument.

## MCP client config

```json
{
  "mcpServers": {
    "slideport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/slideport", "mcp"],
      "env": { "GOOGLE_ACCESS_TOKEN": "ya29...." }
    }
  }
}
```

## Docker

```bash
docker run -i -e GOOGLE_ACCESS_TOKEN ghcr.io/cloudcorprecords/slideport
```

## Development

```bash
npm install
npm run build
npm test
```

## License

MIT