-
Notifications
You must be signed in to change notification settings - Fork 2.7k
feat(mcp): Persist OAuth credentials to keyring #4007
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
||
| let value = serde_json::to_value(&credentials)?; | ||
| let key = secret_key(name); | ||
| config.set_secret(&key, value)?; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how long are the credentials typically valid? maybe I am missing it but shouldn't there be a ttl for the data we store via keyring?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah they'll have an expiry, but that should be handled by the oauth mechanism anyway -- it might need to be refreshed after getting loaded but that should be fine
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested it out with an expired credential and indeed there was a bug! Added a call to refresh on load.
…ol-visibility * origin/main: (26 commits) feat: adds cursor-agent as a cli provider (#4101) chore: remove vector search tool selection strategy (#3933) docs: add streamable_http install links (#4130) feat: iterating on summarize oneshot prompt (#4113) feat(mcp): Persist OAuth credentials to keyring (#4007) Sanitize Tags Unicode Block at prompt level (#4047) Fixing typos (#4114) chore(release): release version 1.4.0 (#4069) E2E tests working again (#4103) chore: Delete ARCHITECTURE.md (#4108) Add Youtube short to Kiwi MCP tutorial (#4107) docs: fix experimental warning (#4102) fix not being able to add spaces to activity message area (#4055) remove and cleanup unused code (#4074) docs: Add missing references to smart_approve mode. (#4094) quick typo fix pulse blog (#4095) fix: update dictation settings handling and improve user feedback (#4093) chore: add info tooltip to share session button (#4038) Reroute routes (#4088) fix(cli): fix compiling issue on windows system by adding a missing param (#4019) ...
…-messaging * 'main' of github.com:block/goose: (26 commits) fix: consistent font sizing in ToolCallWithResponse (#4167) Temporarily disable TODO Tool (#4158) docs: add integrated MCP server config to jetbrains tutorial (#4120) docs: remove figma MCP from suggested servers (#4123) Blog: The AI Skeptic’s Guide to Context Windows (#4152) Docs: Auto-compact context (#4116) chore(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /documentation (#4149) Recipe config to limit tool availability (#4020) docs: fix warning message (#4148) feat: adds cursor-agent as a cli provider (#4101) chore: remove vector search tool selection strategy (#3933) docs: add streamable_http install links (#4130) feat: iterating on summarize oneshot prompt (#4113) feat(mcp): Persist OAuth credentials to keyring (#4007) Sanitize Tags Unicode Block at prompt level (#4047) Fixing typos (#4114) chore(release): release version 1.4.0 (#4069) E2E tests working again (#4103) chore: Delete ARCHITECTURE.md (#4108) Add Youtube short to Kiwi MCP tutorial (#4107) ...
* main: (67 commits) blog: Transforming AI Assistance with Goose Mentor Mode (#4151) upgraded all npm packages and fixed related issues (#4072) Docs: @-mentions in goosehints (#4171) fix: consistent font sizing in ToolCallWithResponse (#4167) Temporarily disable TODO Tool (#4158) docs: add integrated MCP server config to jetbrains tutorial (#4120) docs: remove figma MCP from suggested servers (#4123) Blog: The AI Skeptic’s Guide to Context Windows (#4152) Docs: Auto-compact context (#4116) chore(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /documentation (#4149) Recipe config to limit tool availability (#4020) docs: fix warning message (#4148) feat: adds cursor-agent as a cli provider (#4101) chore: remove vector search tool selection strategy (#3933) docs: add streamable_http install links (#4130) feat: iterating on summarize oneshot prompt (#4113) feat(mcp): Persist OAuth credentials to keyring (#4007) Sanitize Tags Unicode Block at prompt level (#4047) Fixing typos (#4114) chore(release): release version 1.4.0 (#4069) ...
* main: (67 commits) blog: Transforming AI Assistance with Goose Mentor Mode (#4151) upgraded all npm packages and fixed related issues (#4072) Docs: @-mentions in goosehints (#4171) fix: consistent font sizing in ToolCallWithResponse (#4167) Temporarily disable TODO Tool (#4158) docs: add integrated MCP server config to jetbrains tutorial (#4120) docs: remove figma MCP from suggested servers (#4123) Blog: The AI Skeptic’s Guide to Context Windows (#4152) Docs: Auto-compact context (#4116) chore(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /documentation (#4149) Recipe config to limit tool availability (#4020) docs: fix warning message (#4148) feat: adds cursor-agent as a cli provider (#4101) chore: remove vector search tool selection strategy (#3933) docs: add streamable_http install links (#4130) feat: iterating on summarize oneshot prompt (#4113) feat(mcp): Persist OAuth credentials to keyring (#4007) Sanitize Tags Unicode Block at prompt level (#4047) Fixing typos (#4114) chore(release): release version 1.4.0 (#4069) ...
Signed-off-by: Jack Wright <jack.wright@nike.com>
When doing the oauth dance with rmcp, save the credentials to the keyring so you don't repeat this every time.
fixes #3545