
Grantd
Reach for this when you need Claude to call Gmail, Slack, GitHub, or Notion APIs on a user's behalf without exposing tokens to the LLM. The MCP server exposes tools to list providers, check connections, and proxy API calls through a self-hosted broker that handles the full OAuth dance and vaults tokens with AES-256-GCM encryption. Tokens never touch the agent or get serialized in responses. The broker injects access tokens at the network boundary and returns only the provider's API response. Ships with verified Google and GitHub support, experimental Slack and Notion configs. You run the TypeScript broker yourself (Hono, Postgres, no Redis), and agents connect via npx. Adding providers is declarative config, not code.
- GitHub stars
- 1
- tools
- 4
- auth
- Secret needed
- transport
- STDIO
- env vars
- 3
- last updated
- Jun 9, 2026
Tools
4 toolsPublic tool metadata for what this MCP can expose to an agent.
list_providersExposes the broker to an AI agent as tools: list_providers, check_connection, create_connect_link, and call_provider.
Exposes the broker to an AI agent as tools: list_providers, check_connection, create_connect_link, and call_provider.
No parameter schema in public metadata yet.
check_connection
No parameter schema in public metadata yet.
create_connect_link
No parameter schema in public metadata yet.
call_providerIf the agent calls call_provider for a user who isn't connected, it returns an authorization_required result with a connect link instead of failing.
If the agent calls call_provider for a user who isn't connected, it returns an authorization_required result with a connect link instead of failing.
No parameter schema in public metadata yet.
Sponsors
Configuration
GRANTD_API_KEY*secretA Grantd secret key (sk_...). Treat it like a password.
GRANTD_BASE_URLBase URL of your Grantd broker (default http://localhost:8787).
GRANTD_END_USERDefault end-user id so tools don't need it passed each call.
Readme
Grantd
OAuth-for-agents: a dead-simple, MCP-native OAuth token broker that lets AI agents securely act on a user's behalf across third-party APIs (Gmail, Slack, GitHub, Notion…). Tokens are vaulted server-side and never touch the LLM.
Stack: TypeScript · Hono · Postgres · generic OAuth2 driven by a declarative provider registry · envelope encryption (AES-256-GCM, key-versioned) · Postgres advisory locks for refresh concurrency (no Redis). Security model and how to report issues: SECURITY.md.
Security at a glance
Grantd vaults users' OAuth tokens, so security is the product, not a feature. The fundamentals:
Details
- Repository
- github.com/rafavecchi/grantd
- Category
- AI & LLM Tools
- Package
grantd-mcp- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active