Use SEOmatic in Kiro
Updated
Before you start
Kiro (IDE or CLI), signed in, and a free SEOmatic account. Create an API key in Settings, AI Agents, API Keys.
Connect Kiro#
- Create an API key. In SEOmatic, open Settings, AI Agents and create an API key. Copy it; it starts with smk_live_.
- Open Kiro's MCP config. In the Kiro IDE, open the Command Palette and run Kiro: Open user MCP config (JSON). For the CLI, open ~/.kiro/settings/mcp.json in any editor.
- Paste the SEOmatic block. Add the seomatic entry under mcpServers with the URL https://app.seomatic.ai/api/mcp and your key in the Authorization header. Keep autoApprove set to ["*"], or list only the tools you want to run without a prompt; without it Kiro asks before every SEOmatic call. Keep any servers already there, and save.
- Check the connection. In the Kiro IDE, open the Kiro panel's MCP servers tab and check that seomatic shows as connected and lists its tools. In the CLI, run kiro-cli mcp status --name seomatic.
- Ask about your site. Ask: “How did my site do on Google over the last 28 days?” The answer should name the date range and your real numbers.
Kiro setup
// ~/.kiro/settings/mcp.json
// (or .kiro/settings/mcp.json for one workspace)
{
"mcpServers": {
"seomatic": {
"url": "https://app.seomatic.ai/api/mcp",
"headers": {
"Authorization": "Bearer smk_live_..."
},
"autoApprove": ["*"]
}
}
}
// OAuth instead (Kiro IDE): drop the headers
{
"mcpServers": {
"seomatic": {
"url": "https://app.seomatic.ai/api/mcp",
"autoApprove": ["*"]
}
}
}
// CLI check
kiro-cli mcp status --name seomaticNote
A workspace file (.kiro/settings/mcp.json) wins over the user file when both exist, and a custom agent's own mcpServers field wins over both, so check those if Kiro seems to ignore a change. Keep API keys in the user file, not in a shared repo. Without autoApprove, Kiro asks you to approve each SEOmatic tool call; ["*"] approves them all, or name the tools you trust. If the Kiro CLI shows an issuer mismatch error, you are on the OAuth route: add the API key header instead.
API Key, OAuth or Skills?
| Route | Best for | How |
|---|---|---|
| mcp.json with an API key | Most people: works in the Kiro IDE and the Kiro CLI | Paste the block above into ~/.kiro/settings/mcp.json with your key in the Authorization header. The Kiro CLI reads the same file; kiro-cli mcp add only takes a --command, so there is no one-line command for a remote server. |
| mcp.json with OAuth | The Kiro IDE, if you would rather sign in than copy a key | Use only the url and autoApprove, without headers. Kiro opens the sign-in in your browser. The Kiro CLI may fail here with an issuer mismatch. |
| Skills only | Running SEO checks through the SEOmatic CLI | npx skills add Minh42/seomatic-mcp -a kiro-cli, with SEOMATIC_API_KEY set. |
Pick mcp.json with an API key. It works the same in the IDE and the CLI, and it avoids a known Kiro CLI sign-in issue. You can switch to OAuth later by removing the headers.
Try Asking#
- “Write a spec to fix the SEO on our three service pages, based on our Search Console data.”
- “List the pages Google has not indexed and find the cause in this repo.”
- “Which pages get impressions on Google but few clicks? Rewrite their titles.”
- “Audit the site before I deploy and fix anything that would hurt rankings.”
- “My organic clicks fell this month. Which pages lost them, and why?”
- “Which questions do AI assistants answer without citing us?”
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. Kiro itself is billed by its maker, not by SEOmatic: nothing on our side counts tokens.
Nothing Changes on Your Site Without Your Approval#
Kiro works in your repo and in SEOmatic, and both keep you in charge. In your repo, Kiro writes specs and code that you review before anything ships. In your CMS, it can only stage a fix in SEOmatic. The API key you give Kiro can be deleted in SEOmatic at any time. 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.
- Kiro 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 Kiro, 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 Kiro 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: Kiro. 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.


