ChatGPT api_tool and list_resources Errors: How to Fix Them
If ChatGPT calls api_tool.list_resources and returns nothing, the problem is usually tool discovery—not your prompt. ChatGPT is trying to inspect an app or MCP connector, but the current conversation cannot see a usable tool beneath it. Reconnect the app, verify that it is enabled for the current chat or workspace, and test one read-only action by naming the app explicitly.
The error looks technical because api_tool is part of ChatGPT’s internal connector machinery. The practical question is simpler: did ChatGPT discover the action you expected the connected app to expose?
What api_tool.list_resources means
ChatGPT does not load every available app action into every conversation. When it needs an app, it can first inspect the connected resource tree and discover the relevant tools. list_resources is that discovery step.
A healthy sequence looks roughly like this:
- ChatGPT identifies the app needed for your request.
- It lists the app’s available resources or tools.
- It loads the schema for the matching action.
- It asks for approval if the action changes external data.
- It runs the action.
If step two returns an empty result, ChatGPT never reaches the actual Gmail search, CRM update, calendar action, or other operation. Users have reported custom connectors appearing enabled while list_resources returns no tools, leaving ChatGPT unable to call anything beneath the connector. This OpenAI Developer Community report shows the exact failure pattern.
Fix 1: confirm the app is connected to this ChatGPT account
Open Settings → Apps and find the app ChatGPT was supposed to use.
- If it says Connect, complete authorization again.
- If it says connected, open its settings and confirm the expected account or workspace.
- If you use separate personal and work ChatGPT accounts, make sure you connected the app to the account active in this conversation.
- If an administrator controls apps for your workspace, confirm that the app is allowed for your user.
ChatGPT account switching does not merge app connections. An app connected to your personal ChatGPT account is not automatically available in your Business or Enterprise workspace.
Fix 2: enable and name the app in a new conversation
Start a fresh chat, enable the app, and make the first test painfully explicit:
Use the connected Gmail app to list the subject lines of my three newest unread emails. Do not change anything.
For a CRM connector:
Use the connected HubSpot app to find the company named Example Corp. Read only; do not update the record.
This removes two sources of ambiguity: which app ChatGPT should inspect and whether the request needs a write permission. If the read-only test works, the connector is present and the later failure is likely tied to a particular action or approval.
Fix 3: disconnect and authorize the app again
OAuth permissions can become stale after an app update, workspace policy change, password reset, or revoked grant.
- Disconnect the app in ChatGPT.
- Remove the old authorization from the external service if it remains listed there.
- Connect it again from ChatGPT.
- Select the intended external account carefully.
- Test one read-only request before trying a send, edit, delete, or create action.
If reconnecting restores searches but not writes, the connector probably exposes read tools but not the write action you requested. Being “connected” does not mean every possible action exists.
Fix 4: check the custom MCP server itself
If this is a custom connector, inspect the server rather than repeatedly changing the prompt.
- Confirm the MCP endpoint is online and reachable from ChatGPT.
- Confirm it advertises at least one tool through its tool-listing response.
- Check that tool names and input schemas are valid.
- Verify that authentication succeeds before tool discovery.
- Look for server logs from the failed
list_resourcesrequest. - If you recently renamed or removed tools, reconnect the connector so ChatGPT refreshes its catalog.
An empty discovery result cannot be fixed by asking ChatGPT to “try harder.” The server has to expose a valid callable tool to the current user.
Fix 5: separate discovery, permission, and execution failures
These errors require different fixes:
| What you see | Likely failure | What to do |
|---|---|---|
list_resources returns nothing | ChatGPT discovered no tools | Re-enable, reconnect, or repair the connector catalog |
| Tool appears but says unauthorized | Account or OAuth permission | Reauthorize the correct external account |
| Read works but write does not | Missing write tool or scope | Check the connector’s supported actions and admin policy |
| ChatGPT waits for confirmation | Approval requirement | Approve the action in the active conversation |
| Tool works in chat but not on a schedule | Scheduled runtime or approval issue | See ChatGPT scheduled task connector unavailable |
When the native connector still cannot see the account you need
A common version of this failure is not a broken server at all: ChatGPT sees one Gmail or Outlook identity, but the requested message lives in another. Native end-user app connections do not combine every mailbox you use.
Carly can connect each Gmail and Outlook account separately, then expose the correct account-aware actions to ChatGPT through one connection. Start with a read-only search against the full email address, verify the source account, and only then enable sends or other changes. See how to connect multiple Gmail accounts to ChatGPT Work.
Frequently asked questions
Is api_tool malware or an unknown app?
No. In this context, api_tool is part of the machinery ChatGPT uses to discover and call connected-app tools. The concerning part is not the name; it is whether the connector returned a valid tool and whether you authorized the requested action.
Why does ChatGPT keep calling list_resources repeatedly?
It may be retrying discovery because it cannot find a matching action. Name the app explicitly, try a read-only request, and reconnect it. For a custom MCP server, check whether its tool listing is empty or invalid.
Why can ChatGPT search an app but not update it?
Search and update are separate tools with separate permissions. Many connectors are read-only, while others require an administrator to enable write actions or require confirmation before every change.
Related: ChatGPT connectors · ChatGPT Work connectors · ChatGPT Scheduled Tasks not working · Multiple Gmail accounts in ChatGPT Work · Carly integrations
Ready to automate your busywork?
Carly schedules, researches, and briefs you—so you can focus on what matters.
See what people say
"Before Carly, I relied on a Calendly link, but the whole process felt impersonal and not very professional. Carly changed that by handling all the back-and-forth, so I'm no longer stuck in endless email threads trying to line up schedules.
Now Carly reaches out to candidates, shares my real-time availability, lets them pick a slot, then sends a Zoom link and drops it straight into my calendar. She sends reminders to both of us before each call, which has significantly reduced no-shows and last-minute confusion.
On top of scheduling, Carly acts like a full executive assistant, sending me my schedule the night before so I can prepare for each call. It reminds me of the old x.ai assistant, but Carly is noticeably smarter, faster, and better suited to my healthcare recruitment business."


