🔧 fix: Fix rampant pings and rate limiting

- Skips idle connection checks in `getMCPManager` to avoid unnecessary pings.
- Introduces a skipOAuthTimeout flag during initial connection to prevent timeouts during server discovery.
- Uses a lightweight connection state check instead of ping to avoid rate limits.
- Prevents refetch spam and rate limit errors when checking connection status.
- Fixes an issue where the server connection was not being disconnected.
This commit is contained in:
Dustin Healy 2025-07-21 12:53:28 -07:00 committed by Danny Avila
parent 4b4741b1aa
commit 3ca736bc53
No known key found for this signature in database
GPG key ID: BF31EEB2C5CA0956
9 changed files with 90 additions and 39 deletions

View file

@ -182,7 +182,7 @@ const updateUserPluginsController = async (req, res) => {
`[updateUserPluginsController] Disconnecting MCP connection for user ${user.id} and server ${serverName} after plugin auth update for ${pluginKey}.`,
);
// Don't kill the server connection on revoke anymore, user can just reinitialize the server if thats what they want
// await mcpManager.disconnectUserConnection(user.id, serverName);
await mcpManager.disconnectUserConnection(user.id, serverName);
}
} catch (disconnectError) {
logger.error(