Blog

3 must know things if you plan to create a ChatGPT Plugin

At www.pluginlab.ai, we’ve collaborated with numerous plugin creators in the past weeks.

From simple web browsing to complex automation scenarios, we’ve seen a diverse array of plugins.

Here are three things you must know before getting started:



The description_for_model is crucial

When I started for the first time, my `description_for_model` was simple.

It was good enough. But as we started helping people with more complex scenarios and interactions with chatGPT, this was not good enough.

The description_for_model field limit is 8000 chars, and that’s for a good reason.

So if your plugin is not behaving as you would like, try adding a super precise description_for_model.

You can use the following framework:
- What your plugin does
- What is the expected flow
- What are some mandatory pre-flight requests/questions to ask the user in order to get the plugin working perfectly
- Anything else that might be helpful


Add a description to your open API paths

Again, if your plugin is straightforward, you probably don’t need to focus on such details.

However, if you start seeing ChatGPT is not using your endpoints as expected, adding a “description” field to every single endpoint can change everything.

This field can be 300 chars long. Let’s say you have a “get by id” endpoint such as get /api/coffees/:id. You could add a description such as:

👉 “This endpoint allows the user to get a coffee by its id. The id must be first retrieved by the get /api/coffees endpoint”

With such a description, you could help ChatGPT understand the expected flow.

Any change to your manifest will unlist your plugin

We used to work with a top plugin creator.

His plugin was in the top 6, with more than 30K daily users.

One day he decided to activate the OAuth flow, and so he had to change his manifest file to do so.

His plugin was instantly unlisted from the OpenAPI official store and flagged again as “unverified” for the current users.

OpenAI explains that’s the intended behavior.

We hope this to change in the future, but as of now, it seems there is no room for back and forth when a plugin is published on the store.


I hope this article will help some of you :)


PS: If you want to build your plugin with authentication and analytics in a snap, let’s have a look at www.pluginlab.ai 💪

Join us for free
Start building amazing plugins
Register for free

Check our recent articles