From messy worksheets to instant PDFs - a story of frustration, iteration, and a surprisingly powerful MCP server.
When you run a live education company, your users don’t complain politely - they feel problems immediately.
For us at Strive, that moment came during a regular parent-teacher feedback call.
“The classes are great… but homework is inconsistent. Sometimes it comes as screenshots, sometimes as Google Docs, sometimes as photos.”
That single comment exposed a pain we had quietly accepted for too long:
creating clean, printable, structured worksheets was a massive operational bottleneck.
Our teachers were:
- Writing questions in chat
- Copy-pasting into Google Docs
- Formatting equations manually, or trying to get ChatGPT to do it, but being unsuccessful
- Exporting to PDF
- Then uploading and sending files one by one
It worked - but it was painfully inefficient.
And with hundreds of classes a week, the friction compounded fast.
So we asked a simple question:
What if ChatGPT could generate a ready-to-send PDF directly?
That question turned into the PDF Generator inside ChatGPT.
This is the story of how we built it - what broke, what worked, and what surprised us.
The Real Problem: Not AI - Operations
The technical capability already existed:
- LaTeX could create beautiful worksheets.
- PDF generation was trivial on a server.
- ChatGPT was already generating great questions.
The true problem was workflow friction.
Teachers don’t want to:
- Learn LaTeX
- Manage folders
- Export files manually
- Or debug formatting issues at 9pm before a class
They wanted:
- One prompt
- One click
- One downloadable PDF
So the product goal became brutally simple:
Type a prompt → Get a formatted worksheet as a PDF.
No tools. No exporting. No formatting.
Just teaching.
The First Naive Build (That Failed Spectacularly)
Our first internal prototype was… optimistic.
We tried:
- Generating LaTeX via ChatGPT
- Copy-pasting into a LaTeX compiler
- Downloading the resulting PDF
- Sending it to parents manually
It worked technically.
But operationally it was too fragile:
- One missing bracket broke the file
- Teachers didn’t understand why PDFs failed
- Debugging LaTeX became a full-time job
We had simply moved the pain — not eliminated it.
That’s when our engineer said:
“If teachers are using ChatGPT anyway… why don’t we put the PDF engine inside ChatGPT?”
That idea changed everything.
The Breakthrough: The MCP Server + Custom ChatGPT App
Instead of building a separate website, we used:
- A custom MCP server
- A ChatGPT App via Developer Mode
- A LaTeX-to-PDF rendering pipeline
- Auto-return of the generated file
Now the flow became:
-
Teacher types:
“Create a 10-question grade 6 algebra worksheet with answers.”
ChatGPT sends structured LaTeX to our MCP server
Server compiles the PDF
PDF is returned instantly inside chat
No copy-pasting.
No broken exports.
No formatting chaos.
Just prompt → PDF.
What Went Wrong (So Much Went Wrong)
Like any real build, this wasn’t smooth:
1. LaTeX Failures at Scale
Early versions failed silently when:
- Questions were too long
- Special characters weren’t escaped
We had to build:
- Auto-sanitization
- Fallback templates
2. Server Cold Starts
Our first version slept when unused.
Teachers thought the tool was broken when the first request took 20 seconds.
We fixed it with:
- Added a loading animation so teacher knew that it was thinking and still working
3. Over-Engineering Early
Our first iteration supported:
- Multiple layouts
- Multiple paper sizes
- Custom branding
- Answer sheets, rubrics, solutions
Teachers used… exactly one layout.
We stripped it back to:
- Clean worksheet
- Optional answer key
- Instant download
Lesson learned: Usability beats feature count every time.
What Finally Worked
Once stabilized, three things made the product stick internally:
-
Teachers stopped asking for worksheets
They just generated them on demand.
Homework turnaround dropped from 20 minutes to 30 seconds
-
Consistency improved overnight
Every worksheet now looked clean, printable, and professional.
And the real validation moment?
A parent asked, “Did you hire a new curriculum designer?”
We didn’t. We just changed the workflow.
What the PDF Generator Does Today
Inside ChatGPT, our teachers can now:
- Generate:
- Math worksheets
- Coding exercises
- Practice tests
- Resumes
- Tables, graphs and diagrams
- Automatically:
- Professionally formats everything in LaTeX
- Compile into a clean PDF
- Download instantly
- Without:
- Leaving ChatGPT
- Touching Google Docs
- Learning any technical syntax
A sample prompt:
“Create a Grade 7 fractions worksheet with 10 questions and an answer key.”
Output:
✅ Structured
✅ Printable
✅ Ready to send in under 5 seconds
What’s Next
We’re now expanding the generator to support:
- Auto-differentiated worksheets (same topic, different difficulty)
- Student-specific homework packs
- Bulk generation for entire classes
- And direct LMS uploads
But the original goal remains unchanged:
Let teachers focus on teaching - not document creation.
Final Thought
This tool didn’t start as a product idea.
It started as a complaint from a tired teacher and a frustrated parent.
And that’s how most good tools are born.
Not from ambition -
but from pain you feel often enough to finally fix properly.
Top comments (5)
You’re absolutely right, the operational bottleneck you highlighted is very real. We struggle with the same issue in our after-school programs. It’s impressive how removing a single step like manual exports can create such a large ripple effect in efficiency. This feels like a perfect example of internal tooling naturally evolving into a scalable product.
As a math teacher, this hits so close to home. I spend way too much time formatting worksheets instead of planning lessons. The idea of going from “prompt → printable PDF” in seconds honestly feels life-changing.
One of the best use cases of chat gpt apps! Thanks for sharing!
So cool! Does that mean every teacher has a pro account and is always in dev mode? Can't wait for Apps to open to public submissions!
Yeah! I think chat gpt apps are the coolest feature. Can't wait for wide rollout. I hope the new sam altman focus on core ai models doesn't delay it