deckfill writes and edits Google Slides decks from inside a Claude chat.
This page is the whole setup. Ten minutes, most of it waiting for Google.
You need a Claude account, a Google account, and the link you were sent.
The first time you connect, deckfill walks you through steps 3 to 5 on a page of its own, with the Google link already made and ready to click. This page is the same thing written down. Read it first, or come back to it once that page has gone.
In Claude, open Settings → Connectors → Add custom connector.
Name deckfill Remote MCP URL https://deckfill.giblin.studio/deckfill/mcp
Save it. Click Connect. A sign-in page opens.
Click Sign in with Google. Use the address that was added for you, the one you were asked for.
Any other account is turned away. If it says you have no access, tell whoever runs this server which address you actually used, and they can add that one.
This is the connector's own login. It does not hand deckfill your files yet. That is the next step, and it is separate on purpose.
Once you are in, deckfill shows you a welcome page with the next three steps on it. Do as much of it as you like, click Finish connecting deckfill, and you go back to Claude with the connector added. You see that page once. Everything on it is below.
The welcome page has a Connect Google button. That is this step, and it is the one deckfill cannot work without.
If you skipped it, start a chat and say:
connect my Google account
You get a link. Click it. Sign in as yourself. Say yes to the permissions.
It asks for Slides, Docs and Drive, because that is what it reads and edits.
The link works once and expires after half an hour. Ask for another whenever you want.
Skip this step and deckfill hands you the link the first time it needs one anyway.
FrameThrower is a library of film stills. A search engine for how a scene has actually been shot. deckfill searches it alongside ordinary photography.
It is stored against your account and never printed back. Not to you, not to anyone.
Searches cost credits off your own token, which is why you bring one rather than borrowing somebody else's.
Without it you still get photography. You do not get the film library.
Pexels is one of the photography libraries deckfill searches. There is a shared key on the server, so this one is genuinely optional. It only changes whose quota your searches come off.
Stored the same way. Against your account, never printed back.
Yours is used first. Without one you fall back to the shared key and nothing changes.
Paste a deck's URL into the chat, or say its name if it is in your Drive.
here's the deck https://docs.google.com/presentation/d/…
what's on slide 12?
rewrite the walk-in on 41
find me a picture for 41, a kettle on a hob, morning light
That deck stays open, in that chat and the next one, so you say it once.
If you would rather be walked through it, say start here. It tells you the whole thing in the chat, including how far you have got with the three setup steps above.
It works in slide numbers and plain words. You never name a tool, a box, or an id. "The title on 12", "script page 2", "the left column" all resolve.
Every change is read back. When it says a line went in, it has re-read the slide to check. If something did not fit it says by how much and writes nothing, rather than cutting your words off.
Pictures are checked first. It scores every candidate against the actual text on that slide, so pale copy never sits on a bright photograph. It will not put the same frame in a deck twice.
Ask for pictures in ordinary words. "girls dress" stays "girls dress". Do not translate it into camera language. That is what makes these searches useless.
It will not delete slides without showing you the list first and waiting for you to say yes. It takes a backup before it does.
Docs and Drive are built in. Ask it to find a doc by name, read one, add to one. You do not need a second connector for any of it.
Your open deck, your FrameThrower token, your Pexels key and the permission you gave deckfill for your Google account are stored on the server under a pseudonym, not your address.
Nobody else using deckfill can see any of it, and you cannot see theirs. That one is a hard wall: every file deckfill touches is resolved from your own sign-in, and there is a test that starts a real server and proves two accounts cannot reach each other.
Neither key is ever printed back. Not to you, not into a chat, not into a log.
To change one, paste the new one. To get rid of one, say so and it is forgotten.
The caveat. Whoever runs the server is root on the machine it runs on. Nothing you write is stored there and nothing you write appears in any log — not a headline, not a script, not a deck title, not a search — so there is nothing of your work to find. But your Google permission slip is on that disk, because deckfill cannot open your files without it, and root can read anything on a disk. deckfill has no tool that shows one person another's anything, and the owner is not building one. There is no technical wall stopping them; the trust is in the person, not in the software.
What this server knows about you says all of it properly — everything stored, everything logged, and how to delete yourself. Read it before you put anything confidential through this.
If you are under an NDA, or the work is a client's and you are not allowed to put it on someone else's machine: run deckfill on your own Mac instead. Same tool, no server, nothing leaves your laptop. Ask for SETUP.md. That is the only zero-trust option and it is a real one.
Say "remove me" in a chat. It tells you what is about to go and waits for you to say yes, then deletes your folder, your keys and your Google permission from the server. Your decks are in your own Drive and are not touched.
| It says | Do this |
|---|---|
| "That account has not been given access" | Tell whoever runs this server which Google address you signed in with. |
| "deckfill needs to reach Google … hasn't been given permission" | Click the link in the message. That is step 3. |
| "no FrameThrower token for this account" | Step 4. Or carry on without it and use photography. |
| "That is a different account" on the consent screen | You were signed in to Google as someone else. Sign out and open the link again. |
| The welcome page says the link has expired | It waits fifteen minutes. Go back to Settings → Connectors and click Connect again. |
| Nothing happens, or the connector looks disconnected | Reconnect it in Settings → Connectors and sign in again. |
For anything else, tell whoever runs this server what you asked for and paste back what it said.