Create a Custom ChatGPT App with OpenAI's Apps SDK
Job to be done: Create a custom ChatGPT app using the OpenAI Apps SDK
🇳🇬 Ways to use this in Nigeria
Ideas to get you started, adapt to your situation.
- Student
A computer science student can build a custom ChatGPT app to analyze research papers, extracting key findings or summarizing complex topics for their final year project or a hackathon.
- Entrepreneur
A tech entrepreneur can develop a custom ChatGPT app to offer a specialized AI-powered service, like a personalized business plan generator or a market research assistant, to early users.
- 9-5 employee
A software developer can build a custom ChatGPT app to automate internal report generation or provide quick access to company knowledge bases for their team, speeding up workflows.
What you’ll get
A working custom app that runs inside ChatGPT, started from OpenAI’s official example project. You will run the example on your computer, expose it to the internet, and connect ChatGPT to it, which teaches you the whole loop for building your own. It is intermediate: you use a terminal, run two small servers, and do a bit of config, but every command is given.
Tools you need
- OpenAI Apps SDK (free): OpenAI’s toolkit and example code for building apps that plug into ChatGPT. (“SDK” means a software development kit, a bundle of code to build on.)
- git (free): downloads the example project.
- pnpm (free): installs the project’s code packages (an alternative to npm).
- ngrok (freemium): gives your local server a temporary public web address so ChatGPT can reach it (a “tunnel”).
Steps
-
Download the examples:
git clone https://github.com/openai/openai-apps-sdk-examples.gitYou should see a new
openai-apps-sdk-examplesfolder. -
Install the packages:
cd openai-apps-sdk-examples pnpm installYou should see the libraries download.
-
Start the frontend server (the part users see):
pnpm run devYou should see it print a local address like
http://localhost:XXXX. -
Start the backend server (the part that does the work) in a new terminal window:
cd pizzaz_server_node pnpm startIt should run at something like
http://localhost:8000. -
Expose the backend with ngrok: sign up for ngrok, install it, set your authtoken (a key from your ngrok account), then in another terminal:
ngrok http 8000You get a public URL like
https://your-subdomain.ngrok-free.app. Copy it; ChatGPT needs it. -
Turn on Developer Mode in ChatGPT: open ChatGPT settings, go to “Apps Connectors”, open “Advanced settings”, and enable “Developer mode”.
-
Create the app in ChatGPT: in “Apps Connectors”, click “Create”. Give it a Name. For “MCP Server URL”, paste your ngrok URL with
/mcpon the end (for examplehttps://your-subdomain.ngrok-free.app/mcp). (“MCP”, Model Context Protocol, is the standard ChatGPT uses to talk to your app.) Choose “No authentication”, tick “I trust this application”, and click Create. -
Use it in a chat: start a new chat, click the ”+”, pick your app from the “More” menu, and prompt it (for example “Using My Custom App, give me…”). You should see it respond using your app.
Original source
Based on a guide by davidturnbull showing how to build a custom ChatGPT app with the OpenAI Apps SDK, from setup to connecting it inside ChatGPT.
Notes & variations
- Free-tier alternatives: instead of ngrok,
localtunnelorserveocan also expose a local server, with their own free-tier limits. - Common pitfall: leaving the
/mcpoff the end of the MCP Server URL. If it points at the bare ngrok address, the connection fails. - Tip for better results: study the
pizzaz_server_nodefolder in the examples to see how tools are defined. That structure is the template for building your own app’s abilities.