Use SEOmatic in DeepSeek
Updated
Before you start
DeepSeek Harness (npx @deepseek-ai/dsh web, with Node.js installed and pnpm on your PATH, since the plugin command runs through pnpm) and a free SEOmatic account with an API key from Settings, AI Agents, API Keys. DeepSeek Harness is a developer preview and warns of breaking changes between releases. The DeepSeek chat app documents no connectors.
Connect DeepSeek#
- Start DeepSeek Harness. Run npx @deepseek-ai/dsh web. It opens the dsh browser UI.
- Add the plugin. Run npx @deepseek-ai/dsh plugin --profile web add "github:Minh42/seomatic-mcp#path:/plugins/dsh-seomatic". The plugin command runs through pnpm, so install pnpm first if the command cannot find it.
- Create an API key. In SEOmatic, open Settings, then AI Agents, then API Keys, and create a key. It starts with smk_live_.
- Set the key and restart. Export SEOMATIC_API_KEY with your key (or put it in $DSH_HOME/.env), then stop and start dsh web.
- Ask your first question. Ask: “How is my site doing on Google this month?” Connect Search Console in SEOmatic first, so the answer uses your clicks and rankings.
DeepSeek setup
# Start DeepSeek Harness (needs Node.js) npx @deepseek-ai/dsh web # Add the SEOmatic plugin to the web profile npx @deepseek-ai/dsh plugin --profile web add \ "github:Minh42/seomatic-mcp#path:/plugins/dsh-seomatic" # Give it your key, then restart dsh web export SEOMATIC_API_KEY=smk_live_... npx @deepseek-ai/dsh web
Note
No SEOmatic tools after restarting? The key is missing: dsh starts without it and logs a warning. Set SEOMATIC_API_KEY in the same shell that starts dsh, or in $DSH_HOME/.env, and restart. DeepSeek Harness is a developer preview: if a command on this page stops working after an update, check the dsh README for the current form and tell us.
DeepSeek Harness Plugin, or DeepSeek Inside Another Agent?
| Route | Best for | How |
|---|---|---|
| dsh-seomatic plugin | Running DeepSeek in DeepSeek Harness, in the browser UI or headless | npx @deepseek-ai/dsh plugin --profile web add "github:Minh42/seomatic-mcp#path:/plugins/dsh-seomatic", then export SEOMATIC_API_KEY=smk_live_... and restart. |
| DeepSeek models in another agent | People who run DeepSeek models in Claude Code, Cline or another MCP client | Use that agent's own MCP setup: see Claude Code SEO or Cline. The model does not change the steps. |
| DeepSeek chat app | Not possible | chat.deepseek.com and the DeepSeek mobile apps document no MCP or connector setting, so this page does not cover them. |
Pick the dsh plugin if you use DeepSeek Harness. It wires the SEOmatic server, the key and an SEO skill in one install. If DeepSeek runs inside another agent you already use, follow that agent's page instead.
Try Asking#
- “Why did my organic traffic drop this month, and is it seasonal?”
- “Which queries have two of my pages competing against each other?”
- “Which of my pages has Google not indexed, and why?”
- “Audit my site and list the five fixes that matter most.”
- “Suggest five blog topics I can rank for, based on queries I already show up for.”
- “Stage new titles for the pages with high impressions and low CTR.”
What It Costs#
Connecting is free. Reading your own data never uses credits: Search Console performance and insights, index status, rankings, site audits, AI citations, traffic and your tasks. Only live market lookups (keyword metrics, search results, backlinks), AI visibility scans and the fixes you approve use AI credits; every tool is labelled free or billed. On the Free plan, market lookups count against 5 free questions a month. The workspace Owner sees every credit spent, by feature, in Settings > Usage. DeepSeek itself is billed by its maker, not by SEOmatic: nothing on our side counts tokens.
Nothing Changes on Your Site Without Your Approval#
DeepSeek can stage work in SEOmatic, never publish it. A staged change is a proposal: it says what will change and why, and nothing touches your site until you approve it. The assistant records your decision, and it is told never to approve anything on its own judgment. Approved fixes start within seconds, the page's previous state is stored, and any applied change can be rolled back. Changes that could take a page out of Google, like a noindex, need an extra explicit confirmation. Your API key stays in your environment or $DSH_HOME/.env, never in the chat, and you can revoke it in SEOmatic at any time.
- DeepSeek says SEOmatic is connected but answers without my data.
- Start a new chat and check that SEOmatic is enabled for that conversation in the tools menu. This is the step most people miss.
- The SEOmatic page says "This connection request expired".
- Start the connection again from DeepSeek, or paste the setup prompt again.
- The Authorize page shows the wrong email or no workspace.
- Click Switch account on that page and sign in with the SEOmatic account that owns the site.
- Why does DeepSeek say it cannot change my site?
- Fixes need a live paid plan or trial. On the Free plan, or when billing is paused or failed, your assistant can read and answer only.
- How do I disconnect?
- Open Settings > AI Agents, scroll to API Keys and delete the row named OAuth: DeepSeek. See disconnect an assistant.
Was This Article Helpful?
Still need help?Email contact@seomatic.ai with your site address and a screenshot. A person replies, usually within one business day.


