How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.
Tokenomist MCP is protected by OAuth 2.1 (with PKCE). The first time your client connects, you’ll be redirected to a Tokenomist sign-in page to authorize access — after that, your client refreshes tokens silently.
A Tokenomist API key. Find it at tokenomist.ai/profile#my-api-key under the My API Key section — copy it with the copy icon. If you don’t have one yet, generate it there — Free accounts can create one too. Rotating your API key revokes existing MCP sessions.
Find your API key at tokenomist.ai/profile#my-api-key
Add the Tokenomist MCP server to your client (see Getting started).
2
Authorization is discovered
On first connection, your client automatically discovers that authorization is required and opens a browser tab to the Tokenomist sign-in page.
3
Paste your API key
Paste your Tokenomist API key on that page and click Authorize.
Paste your API key on the Tokenomist authorization page
4
Token is issued
The browser redirects back to your MCP client, which now holds a short-lived access token. Refreshes happen silently in the background.
5
You're connected
Subsequent tool calls happen automatically — no further prompts.
The browser flow only happens once per client + machine. If you reinstall your client, switch machines, or revoke your token, you’ll be prompted to authorize again.
mcp:write — used by the self-listing tools to create, update, and submit token listing drafts
Most clients request both scopes by default. Modern MCP clients (Claude Desktop, Claude Code, ChatGPT, Cursor, etc.) handle OAuth discovery, registration, and token refresh automatically — no manual configuration required.
The browser tab didn't open after I added the server.
Some clients only trigger the OAuth flow on the first tool call rather than at install time. Try sending a quick prompt like “List tokens on Tokenomist” — the sign-in page should open then.
I get an 'Unauthorized' or 401 error mid-conversation.
Your access token may have expired without a successful refresh. In most clients you can re-run the connection step (Claude Desktop: restart the app; Claude Pro: re-enable the connector; Claude Code: run /mcp, select tokenomist-mcp, then Authenticate). You’ll be sent through the sign-in page again.
How do I revoke a client's access?
Rotate your Tokenomist API key from your account settings. All existing MCP sessions tied to the old key are invalidated immediately. You’ll be re-prompted on the next request from any connected client.
I switched laptops / reinstalled my client and it's asking me to sign in again.
Expected. Tokens are stored locally per client + machine. Paste your API key on the sign-in page and you’re back in.
Can I use the MCP from a CI environment or headless server?
Not yet — the current flow requires an interactive browser sign-in. Headless / service-account auth is on the roadmap.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Tokenomist","colors":{"primary":"#C51052","light":"#ed5a8f","dark":"#310213"},"logo":{"light":"https://mintcdn.com/daosurv/oo3LEmwHcPe7t-7A/images/Type=Horizontal,Style=Primary.svg?fit=max\u0026auto=format\u0026n=oo3LEmwHcPe7t-7A\u0026q=85\u0026s=67c60e671533dc905742e8f434f3d40b","dark":"https://mintcdn.com/daosurv/24fWU4RzjvVn0Cr5/images/logo-wordmark-white.png?fit=max\u0026auto=format\u0026n=24fWU4RzjvVn0Cr5\u0026q=85\u0026s=893b7b599c84c7b7d119a62c088ce2b1"},"favicon":"https://mintcdn.com/daosurv/bR86mM4OBQF44bWG/images/favicon.ico?fit=max\u0026auto=format\u0026n=bR86mM4OBQF44bWG\u0026q=85\u0026s=54afcdec4a94a21a9e58ca7aa7791c49","api":{},"background":{"color":{"light":"#FFFFFF","dark":"#110d0f"}},"navbar":{"links":[{"href":"mailto:support@tokenomist.ai.","label":"Support"}],"primary":{"type":"button","label":"Main Site","href":"https://tokenomist.ai"}},"footer":{"socials":{"x":"https://x.com/Tokenomist_ai"}},"fonts":{"heading":{"family":"Inter","weight":700}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Enterprise","icon":"building","href":"https://enterprise.tokenomist.ai/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"daosurv","hasAudioNarration":false,"actualSubdomain":"daosurv","customDomains":["docs.tokenomist.ai"],"gitSource":{"type":"github","owner":"daosurv","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae3294551fbfc0519aa80be","collectionId":"b8a3f3ac-664b-4252-abb3-c52848e1a37f","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae3294551fbfc0519aa80be"},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6ae3294551fbfc0519aa80be","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"User Guide","count":42},{"language":"default","tag":"Features","count":32},{"language":"default","tag":"API","count":32},{"language":"default","tag":"Deprecated versions","count":18},{"language":"default","tag":"Methodology","count":10},{"language":"default","tag":"Token Page","count":9},{"language":"default","tag":"AI Integration","count":8},{"language":"default","tag":"Unlock Events","count":7},{"language":"default","tag":"Fundraising","count":6},{"language":"default","tag":"Token List","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"mcp/authentication","slug":"/mcp/authentication","pageMetadata":{"title":"Authentication","description":"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.","icon":"lock","href":"/mcp/authentication"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Frame,Heading,OptimizedImage,Step,Steps,Tip}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Tokenomist MCP is protected by `,_jsx(_components.strong,{children:`OAuth 2.1`}),` (with PKCE). The first time your client connects, you’ll be redirected to a Tokenomist sign-in page to authorize access — after that, your client refreshes tokens silently.`]}),`\n`,_jsx(Heading,{level:`2`,id:`what-you’ll-need`,children:`What you’ll need`}),`\n`,_jsxs(_components.p,{children:[`A `,_jsx(_components.strong,{children:`Tokenomist API key`}),`. Find it at `,_jsx(_components.a,{href:`https://tokenomist.ai/profile#my-api-key`,children:`tokenomist.ai/profile#my-api-key`}),` under the `,_jsx(_components.strong,{children:`My API Key`}),` section — copy it with the copy icon. If you don’t have one yet, generate it there — Free accounts can create one too. Rotating your API key revokes existing MCP sessions.`]}),`\n`,_jsx(Frame,{caption:`Find your API key at tokenomist.ai/profile#my-api-key`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=2170f779e3952ec152a7d0ad433a7dd4`,alt:`Tokenomist My API Key page`,\"data-og-width\":`1869`,width:`1869`,\"data-og-height\":`973`,height:`973`,\"data-path\":`images/mcp/find-api-key.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=280\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=6038345775d7174ccc58a284616f6dc6 280w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=560\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=025aab5ae617921843ab177711678c17 560w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=840\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=4d33729ef78f332193859d63decd83c8 840w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=1100\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=075a9976c7ac0202380a89d04ec1812b 1100w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=1650\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=dae5f2b4d4327b8df5841c2294ae60bb 1650w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/find-api-key.png?w=2500\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=37c058d26db61131386bce640e0b132f 2500w`})}),`\n`,_jsx(Heading,{level:`2`,id:`how-the-sign-in-flow-works`,children:`How the sign-in flow works`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Add the server to your client`,children:_jsxs(_components.p,{children:[`Add the Tokenomist MCP server to your client (see `,_jsx(_components.a,{href:`/mcp/getting-started#configuration`,children:`Getting started`}),`).`]})}),_jsx(Step,{title:`Authorization is discovered`,children:_jsx(_components.p,{children:`On first connection, your client automatically discovers that authorization is required and opens a browser tab to the Tokenomist sign-in page.`})}),_jsxs(Step,{title:`Paste your API key`,children:[_jsxs(_components.p,{children:[`Paste your Tokenomist API key on that page and click `,_jsx(_components.strong,{children:`Authorize`}),`.`]}),_jsx(Frame,{caption:`Paste your API key on the Tokenomist authorization page`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=3d8a8456002b501adaad6c9ab6b46308`,alt:`Tokenomist authorization page`,\"data-og-width\":`1920`,width:`1920`,\"data-og-height\":`1200`,height:`1200`,\"data-path\":`images/mcp/authorize-api-key.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=280\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=3b60ee78bd8eb3bc055fe43f051e880a 280w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=560\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=e9f4a6e7426cbe92343e5ba54d7def32 560w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=840\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=f0b7c78645a6a24e77fa1b06ca0bbddb 840w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=1100\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=be5f16ce562f86c7ac4e17ac3b9ba518 1100w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=1650\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=23ae52dabe6ee7ba70831a097a6f3180 1650w, https://mintcdn.com/daosurv/3D9fNYQZtMjpKdy_/images/mcp/authorize-api-key.png?w=2500\u0026fit=max\u0026auto=format\u0026n=3D9fNYQZtMjpKdy_\u0026q=85\u0026s=31c3b86802bdf765e4713a3595f6c4ae 2500w`})})]}),_jsx(Step,{title:`Token is issued`,children:_jsx(_components.p,{children:`The browser redirects back to your MCP client, which now holds a short-lived access token. Refreshes happen silently in the background.`})}),_jsx(Step,{title:`You're connected`,children:_jsx(_components.p,{children:`Subsequent tool calls happen automatically — no further prompts.`})})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`The browser flow only happens once per client + machine. If you reinstall your client, switch machines, or revoke your token, you’ll be prompted to authorize again.`})}),`\n`,_jsx(Heading,{level:`2`,id:`scopes`,children:`Scopes`}),`\n`,_jsx(_components.p,{children:`Two OAuth scopes are exposed:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`mcp:read`}),` — read tokenomics data via MCP tools`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`mcp:write`}),` — used by the `,_jsx(_components.a,{href:`/mcp/self-listing`,children:`self-listing`}),` tools to create, update, and submit token listing drafts`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Most clients request both scopes by default. Modern MCP clients (Claude Desktop, Claude Code, ChatGPT, Cursor, etc.) handle OAuth discovery, registration, and token refresh automatically — no manual configuration required.`}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`The browser tab didn't open after I added the server.`,id:`the-browser-tab-didnt-open-after-i-added-the-server`,children:_jsxs(_components.p,{children:[`Some clients only trigger the OAuth flow on the first tool call rather than at install time. Try sending a quick prompt like `,_jsx(_components.em,{children:`“List tokens on Tokenomist”`}),` — the sign-in page should open then.`]})}),_jsx(Accordion,{title:`I get an 'Unauthorized' or 401 error mid-conversation.`,id:`i-get-an-unauthorized-or-401-error-mid-conversation`,children:_jsxs(_components.p,{children:[`Your access token may have expired without a successful refresh. In most clients you can re-run the connection step (Claude Desktop: restart the app; Claude Pro: re-enable the connector; Claude Code: run `,_jsx(_components.code,{children:`/mcp`}),`, select `,_jsx(_components.strong,{children:`tokenomist-mcp`}),`, then `,_jsx(_components.strong,{children:`Authenticate`}),`). You’ll be sent through the sign-in page again.`]})}),_jsx(Accordion,{title:`How do I revoke a client's access?`,id:`how-do-i-revoke-a-clients-access`,children:_jsxs(_components.p,{children:[`Rotate your Tokenomist API key from your `,_jsx(_components.a,{href:`https://tokenomist.ai`,children:`account settings`}),`. All existing MCP sessions tied to the old key are invalidated immediately. You’ll be re-prompted on the next request from any connected client.`]})}),_jsx(Accordion,{title:`I switched laptops / reinstalled my client and it's asking me to sign in again.`,id:`i-switched-laptops-reinstalled-my-client-and-its-asking-me-to-sign-in-again`,children:_jsx(_components.p,{children:`Expected. Tokens are stored locally per client + machine. Paste your API key on the sign-in page and you’re back in.`})}),_jsx(Accordion,{title:`Can I use the MCP from a CI environment or headless server?`,id:`can-i-use-the-mcp-from-a-ci-environment-or-headless-server`,children:_jsx(_components.p,{children:`Not yet — the current flow requires an interactive browser sign-in. Headless / service-account auth is on the roadmap.`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Authentication","description":"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.","icon":"lock","href":"/mcp/authentication"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What you’ll need","slug":"what-you’ll-need","depth":2,"children":[]},{"title":"How the sign-in flow works","slug":"how-the-sign-in-flow-works","depth":2,"children":[]},{"title":"Scopes","slug":"scopes","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"daosurv","siteName":"Tokenomist","title":"Authentication - Tokenomist","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T06:55:26.559Z","originalFileLocation":"mcp/authentication.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Tokenomist\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Authentication - Tokenomist\">\u003cmeta data-mint-head property=\"og:description\" content=\"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Tokenomist\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.tokenomist.ai/mcp/authentication\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://daosurv.mintlify.app/_mintlify/api/og/v2?division=MCP+Server\u0026amp;title=Authentication\u0026amp;description=How+Tokenomist+MCP+authorizes+your+client+with+OAuth+2.1%2C+the+scopes+it+exposes%2C+and+how+to+resolve+common+sign-in+issues.\u0026amp;theme=ef3af35074c94fd2f790621b\u0026amp;signature=5710e04d7d6f77d7827f87b41c9a7792e0d6275d08ac7e9a705cfbe6f7704188\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Authentication - Tokenomist\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://daosurv.mintlify.app/_mintlify/api/og/v2?division=MCP+Server\u0026amp;title=Authentication\u0026amp;description=How+Tokenomist+MCP+authorizes+your+client+with+OAuth+2.1%2C+the+scopes+it+exposes%2C+and+how+to+resolve+common+sign-in+issues.\u0026amp;theme=ef3af35074c94fd2f790621b\u0026amp;signature=5710e04d7d6f77d7827f87b41c9a7792e0d6275d08ac7e9a705cfbe6f7704188\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/daosurv/K0VhgH08mDzh_U3A/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Tokenomist\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#C51052\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.tokenomist.ai/mcp/authentication\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/mcp/authentication.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.tokenomist.ai/#organization\",\"name\":\"Tokenomist\",\"url\":\"https://docs.tokenomist.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/daosurv/oo3LEmwHcPe7t-7A/images/Type=Horizontal,Style=Primary.svg?fit=max\u0026auto=format\u0026n=oo3LEmwHcPe7t-7A\u0026q=85\u0026s=67c60e671533dc905742e8f434f3d40b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.tokenomist.ai#website\",\"name\":\"Tokenomist\",\"url\":\"https://docs.tokenomist.ai\",\"publisher\":{\"@id\":\"https://docs.tokenomist.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.tokenomist.ai/mcp/authentication#webpage\",\"url\":\"https://docs.tokenomist.ai/mcp/authentication\",\"name\":\"Authentication\",\"description\":\"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\",\"dateModified\":\"2026-10-08T06:55:26.559Z\",\"isPartOf\":{\"@id\":\"https://docs.tokenomist.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.tokenomist.ai/mcp/authentication#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.tokenomist.ai/mcp/authentication#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"MCP Server\",\"item\":\"https://docs.tokenomist.ai/mcp/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Authentication\",\"item\":\"https://docs.tokenomist.ai/mcp/authentication\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.tokenomist.ai/mcp/authentication#article\",\"headline\":\"Authentication\",\"name\":\"Authentication\",\"description\":\"How Tokenomist MCP authorizes your client with OAuth 2.1, the scopes it exposes, and how to resolve common sign-in issues.\",\"url\":\"https://docs.tokenomist.ai/mcp/authentication\",\"mainEntityOfPage\":{\"@id\":\"https://docs.tokenomist.ai/mcp/authentication#webpage\"},\"dateModified\":\"2026-10-08T06:55:26.559Z\",\"publisher\":{\"@id\":\"https://docs.tokenomist.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.tokenomist.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Tokenomist\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Tokenomist","nav":{"global":{"anchors":[{"anchor":"Enterprise","icon":"building","href":"https://enterprise.tokenomist.ai/"}]},"tabs":[{"tab":"User Guide","pages":[{"title":"User Guide","href":"/overview"}]},{"tab":"Methodology","pages":[{"title":"Methodology","href":"/methodology/cliff-and-linear-emission"}]},{"tab":"API","pages":[{"title":"API","href":"/api-documents/introduction"}]},{"tab":"AI Integration","groups":[{"group":"CLI","pages":[{"title":"Getting Started","icon":"rocket","href":"/cli/getting-started"},{"title":"CLI","mode":"wide","icon":"terminal","href":"/cli/overview"},{"title":"Command Reference","icon":"book","href":"/cli/command-reference"}]},{"group":"MCP Server","pages":[{"title":"Overview","icon":"plug","href":"/mcp/overview"},{"title":"Getting started","description":"Point any MCP-compatible client at the Tokenomist hosted endpoint and connect in minutes.","icon":"rocket","href":"/mcp/getting-started"},{"title":"Authentication","icon":"lock","href":"/mcp/authentication"},{"title":"Tools \u0026 prompts","description":"The 16 read-only tokenomics tools the Tokenomist server exposes, suggested workflows, and example prompts to kickstart your build.","icon":"toolbox","href":"/mcp/tools"},{"title":"Self-listing","icon":"rocket-launch","href":"/mcp/self-listing"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Authentication - Tokenomist","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DXXFP6nH.js","DynamicMarkdown-B54_zNBF.js","zoom-image-lightbox-BG6oD64b.js","lightbox-handle-r17bVUz3.js"]}