Improve Oauth error management #234
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
At the moment, most of remote MCP servers fail at tools discovery (but they might also fail at tool execution in the future).
This PR creates
MayBeOAuthErrorfunction that examines if an error is related to OAuth, then decorates the error with necessary metadata (likeserverURL). This function can be used in any place where a failure related to OAuth can happen. It only handles ToolsetError at tool discovery for now, we can add other types of error if needed. The most important thing is always give context to an Oauth error (whichserverURLfor example).This also moves more things to
oauthpackage and simplify logic inruntime.go.