When you connect a remote MCP server with OAuth, you sign in on the server’s own page in your browser, and your AI client gets a token back, never your password. With The SEO MCP, you sign in with your DFY Hub account through OAuth 2.1 with PKCE. That token lets your assistant call the server’s SEO tools for your one account and spend that account’s credits. It doesn’t open the rest of your AI app, your files or your chat history to the server. And it ends when you change your DFY Hub password or the account is suspended, checked at most every five minutes.
Last updated: October 2026
The little-known difference: how access ends
Most people judge a connector by what it can do. The better first question is how you shut it off.
An API key pasted into a config file works until someone remembers to rotate it. It sits on your laptop in plain text and it doesn’t know who’s using it. If pasting a secret into a JSON file always felt a little wrong, that instinct was right. OAuth flips that. Access is tied to an account sign-in, so the account controls whether it keeps working. That’s the part buyers rarely ask about, and it’s the part that matters on the day a laptop goes missing or a contractor leaves.
So this post covers both halves: what a connected assistant can reach, and what makes that reach stop. If you just want to connect, the install guides cover every client in a few lines.
What happens when you click “connect”
This is how OAuth works in general for remote MCP servers. Nothing here is specific to one vendor.
- Your AI client (Claude, ChatGPT, Cursor and so on) finds out the server wants a sign-in and opens a browser window to the server’s login page.
- You sign in there. The client never sees what you type.
- Before sending you off, the client made a random secret and sent only a hashed fingerprint of it. That’s PKCE (Proof Key for Code Exchange).
- After you approve, the server hands back a short one-time code. The client trades that code for an access token, and it has to show the original secret to do it.
Step 3 is why PKCE exists. If anything intercepts the one-time code, it’s useless without the secret that stayed inside your client. OAuth 2.1 makes PKCE mandatory and drops the older shortcut flows that let apps collect passwords directly.
The MCP authorization spec builds on OAuth 2.1 and also asks clients to name which server a token is meant for, so a token issued for one server shouldn’t be honored by a different one.
What a connected assistant can reach
Here’s what the live site says about The SEO MCP specifically.
It can:
- Call the tools listed on the /tools page, currently 93 across 12 categories: SERPs, keyword data, backlinks, on-page audits, Google business data, app store data, merchant data, a local rank grid and AI-search visibility.
- Spend credits from your account’s balance. Each tool call deducts credits, which is the real cost of a live connection.
- Act only for one account. The site describes per-user bearer tokens “scoped to a single account.”
It can’t:
- See your DFY Hub password. You type that into the browser sign-in page, not into the assistant.
- Get a broad “read everything” permission. The what is MCP page puts it plainly: the AI only sees the data the server returns to a specific tool call.
- Reach accounts you haven’t connected. Every tool in the catalog is a lookup of search, link, review or listing data for keywords, domains or URLs you name. None of them is listed as reading a Search Console, analytics or ads account.
A fair question for a buyer, since a paid plan is a DFY Hub subscription with that tier’s platform features: does signing in here hand over your whole DFY Hub account? No. The token the connector gets is signed by the SEO MCP server with its own key, separate from the one DFY Hub logins use, so it only works on the SEO MCP server and can’t be used to reach the rest of your DFY Hub account.
What the server sees from your side
In the protocol’s normal flow, a remote MCP server receives tool calls: the tool name plus its arguments. Your client decides what goes into those arguments, so the server sees “search volume for coffee shop austin,” not the conversation around it.
Here’s the short version of The SEO MCP’s privacy policy; read the policy itself for the exact terms:
| What | In short |
|---|---|
| Account info | Your email address and basic profile from the OAuth sign-in |
| Your queries | The keywords, domains and URLs you submit, processed to return results |
| Data providers | Queries go to data providers on your behalf, without your identity |
| Query logs | None kept. A failed request sends an error report to an error-monitoring service, kept up to 90 days |
| Connections | TLS on every connection |
Results aren’t cached on the server’s side, either. Every call fetches live data, which is also why every call costs credits.
There’s a second party worth remembering. The results land in your AI conversation, and from there your AI provider’s own retention rules apply. That’s true of every MCP server, not just this one.
How access ends
This is the section to read first when you evaluate any remote MCP server.
Change your DFY Hub password. Connections signed in with that account stop working. The server re-checks at most every five minutes, so the cutoff isn’t instant, but it doesn’t depend on finding every device that was ever connected.
Account suspension. Same mechanism, same five-minute window. The terms reserve the right to suspend accounts that break them.
Removing the connector in your client. Do it, but don’t treat it as revocation. In general OAuth terms, deleting a connector removes the token from that one app. Whether the server also kills the token depends on the server. On The SEO MCP it doesn’t: the token stays valid until it expires, which is at most 24 hours later, and there’s no per-connection revoke button in the DFY Hub dashboard. If you need access to end now, change your DFY Hub password. That ends every MCP connection on the account within about five minutes.
Token expiry. Access tokens are designed to expire. The SEO MCP’s last 24 hours, and there are no refresh tokens, so your client sends you back through the browser sign-in about once a day. The one-time code from that sign-in lasts five minutes and works once.
Canceling a paid plan is a billing step, not a disconnect. The pricing page says you keep access until the end of the billing period.
The honest limitation: five minutes is short, but it isn’t zero. If a signed-in laptop is stolen, a client could keep calling tools for up to five minutes after you change the password. If the token reaches only the SEO tools, the worst case is spent credits, since every tool in the catalog is a lookup and none of them edits anything. On a Free account that’s at most the 1,000 credits you get for signing up and verifying your email. Annoying, not catastrophic.
My opinion: a password change as the master switch is the right design for a small team. You can’t forget a device you didn’t know about, because you never needed the list.
A two-minute check for any remote MCP server
Ask these four things before connecting any server, ours or a competitor’s (Ahrefs and Semrush ship MCP servers too):
- Where do I type my password? It should be the server’s own page, never a chat box or config file.
- What does the token cover? One account, one server, or more?
- What does it cost if someone else uses it? Credits, seats, or write access?
- What single action ends every connection at once, and how fast?
For The SEO MCP, the answers are above: the server’s own sign-in page, one account on one server, credits rather than write access, and a password change that ends every connection within about five minutes. For a broader buying checklist, see Best MCP Server for SEO, and for how calls and credits work end to end, see SEO MCP Server: How It Works and What It Costs. If you’re connecting Claude, the Claude MCP guide and Claude MCP SEO: Setup, Prompts and Credit Costs walk through it.
Frequently asked questions
Does my AI assistant see my DFY Hub password?
No. With OAuth you type your password into the sign-in page in your browser, not into Claude, ChatGPT or Cursor. The client receives a token after you approve, and PKCE means an intercepted one-time code can’t be swapped for that token without a secret that never leaves your client. Your password stays between you and the sign-in page.
What can The SEO MCP do once I connect it?
It can run the SEO tools listed on its /tools page for your account and deduct credits for each call. Those tools look up search, keyword, backlink, review, app and merchant data for terms, domains or URLs you name. The site says the AI only sees data returned from a specific tool call, and tokens are scoped to a single account.
How do I cut off every connection at once?
Change your DFY Hub password. Connections signed in with that account stop working, and the server checks at most every five minutes, so allow a short window. Account suspension ends connections the same way. Removing the connector inside one app is good housekeeping, but on its own it only clears that app’s copy of the token.
Does The SEO MCP keep my queries?
No log of your queries is kept. If a request fails, an error report goes to an error-monitoring service and is kept up to 90 days; the privacy policy says what it contains. Queries go to data providers without your identity attached. Results themselves aren’t cached; every call fetches live data. Account data stays while the account is active, and you can ask for deletion.