Write SEO blog post drafts with Cursor
Writing blog post drafts with Cursor means asking the editor's agent, from the project you have open, to have StoreSEO write a post into a draft article in your Shopify blog and to tell you when it is ready.
Last updated: October 2026
Set up Cursor for StoreSEO
Skip this if Cursor is already connected. The full guide, with the alternatives, is on the Cursor page.
- 1
Add StoreSEO to mcp.json
Put this in ~/.cursor/mcp.json to use StoreSEO in every project, or in .cursor/mcp.json inside one theme project. In the StoreSEO app's setup guide the same JSON goes into Settings, Tools and MCP, New MCP server.
JSON{ "mcpServers": { "storeseo": { "url": "https://mcp.storeseo.com/mcp" } } } - 2
Sign in to your store
Open Cursor's MCP settings (the Customize page in current versions), find storeseo and sign in when Cursor asks. A browser window opens: pick your Shopify store and approve access.
PromptUse StoreSEO to show me my store's SEO score breakdown.
- 3
Switch off four StoreSEO tools
StoreSEO has 44 tools and Cursor stops at about 40 active ones across all servers. In the storeseo entry in Cursor's MCP settings, turn off at least four you do not need. The four rank and competitor lookups are a good first choice if you are not on Pro.
Promptstoreseo_list_rank_locations storeseo_list_rank_languages storeseo_add_competitors storeseo_delete_competitor
How does this work in Cursor?
You open the Cursor agent chat in your theme or content repository and ask for the post: a 1,000 word article on how often to wash denim, for the Guides blog. The agent calls storeseo_start and storeseo_list_blogs, and Cursor shows each MCP call in the chat so you can expand the arguments. If your repository holds a content calendar or a style guide, the agent can read it first and write the brief from it.
Cursor asks for approval before an MCP tool runs unless you have changed the run mode, and StoreSEO adds its own instruction: state the credit cost, then wait for your yes. So before storeseo_generate_blog_post you get a plain message from the agent about the cost, and then Cursor's approval card, which shows the blog id and the brief. Approve the generate call each time. The agent then polls storeseo_get_blog_post_job until the job is completed, failed or cancelled, and reports the steps as it goes.
The draft lands in the Shopify blog as a draft article. Ask the agent to read it with storeseo_get_resource_seo and write the article id and any SEO issues into a notes file in the repository, so the review list lives next to your other work. Publishing is done by you in Shopify admin.
-
You: Write a draft on how often to wash denim for the Guides blog, about 1,000 words.
- storeseo_start read-only
- storeseo_list_blogs read-only
-
Cursor: Guides is synced with StoreSEO. A post of this length will spend AI credit. Do you want me to start it?
-
You: Yes, start it.
- storeseo_generate_blog_post needs approval
- storeseo_get_blog_post_job read-only
-
Cursor: Writing is in progress, 2 of 5 steps done. I will keep checking and tell you when the draft is in Shopify.
What to ask Cursor
Use StoreSEO to list my blogs, then look at docs/content-calendar.md and suggest which post to write next.
Write a 1,000 word draft on how often to wash denim for the Guides blog. State the AI credit cost and wait for my approval before you start.
Check the blog post job and, when it completes, save the draft's SEO issues to docs/blog-notes.md.
- List my blogs and write a 1,200 word draft on how to care for linen shirts in the News blog. Tell me the cost first.
- Write a draft post targeting best gifts for coffee lovers, with a featured image.
- How far along is the blog post you started?
- Check the SEO score of the draft you just wrote.
- Draft three post ideas for my store and write the strongest one.
What StoreSEO does: blog post drafts
StoreSEO writes a full blog post with AI and saves it as a draft article in the Shopify blog you choose, optionally with a featured image. Nothing is published: you review and publish from Shopify admin.
Requires: Spends AI Content Optimizer credit; the cost grows with word count and a featured image. Blogs must be synced in the StoreSEO app.
- 1
Pick the blog
The agent lists your synced blogs, the sections posts go into, with their ids. An empty list means the blogs need syncing in the StoreSEO app first.
- 2
Agree the brief and cost
Topic, keyword, length and whether to add a featured image. The cost grows with length and the image, so the agent tells you and waits for your yes.
- 3
Generate in the background
Writing takes a few minutes. The agent polls the job and reports progress, and does not present the post as finished while it runs.
- 4
Check the draft
When the job completes, the agent can read the draft article's SEO record. You review and publish the post from Shopify admin.
Blog post drafts reference
| Output | A draft article in the chosen Shopify blog, never published live |
|---|---|
| Featured image | Optional; uploaded with the draft and adds to the cost |
| Run time | A few minutes in the background |
| Insufficient credit | The call fails before anything is queued or spent |
| Blogs | Only blogs synced with StoreSEO are listed; syncing is done in the app |
| Failed runs | The job reports the error and credits are settled automatically |
Rules Cursor follows
- The agent states the expected credit use and waits for your yes before it starts a post.
- Posts are saved as drafts only; publishing is done by you in Shopify admin.
- While the job runs, the agent reports progress and never presents the draft as finished.
In Cursor
StoreSEO has 44 tools and Cursor allows about 40 active tools across all your servers, so you have to switch some off. This job needs storeseo_start, storeseo_list_blogs, storeseo_generate_blog_post, storeseo_get_blog_post_job and storeseo_get_resource_seo. If you trimmed the list to fit under the cap, check that the two blog tools are still on, otherwise the agent will say it cannot find them. Keep the generate tool on ask, because a tool set to run without asking leaves the chat confirmation as the only check. Reads such as listing blogs and polling the job are fine to leave on automatic if you want fewer prompts during a long generation.
What runs without asking. Reads such as SEO scores, store listings, settings and Google reports run straight away. Generating a preview spends AI credit but writes nothing, and StoreSEO tells the agent to say what a generation will cost before it runs one. Applying content, optimizing images, changing settings, publishing llms.txt or agents.md, writing a product description and deleting anything wait for your yes in the conversation. That yes is an instruction the agent follows, not a lock on the server, so your client's own tool-approval setting is the hard stop.
Questions
Why can Cursor not find the blog post tools?
Cursor allows about 40 active tools across all servers and StoreSEO has 44, so some are switched off. Open Cursor's MCP settings and make sure storeseo_list_blogs, storeseo_generate_blog_post and storeseo_get_blog_post_job are enabled.
Can Cursor save the blog post into my repository as well?
StoreSEO saves the draft in your Shopify blog, not in your files. Cursor can read the draft's SEO record and write notes or the article id into your repository, but the post itself is edited and published in Shopify admin.
Will the agent publish a blog post on my store?
No. StoreSEO saves generated posts as drafts in the Shopify blog you choose. You review and publish them from Shopify admin.
How long does a blog post take?
A few minutes. The writing runs in the background and the agent checks the job until it is completed, failed or cancelled.
What does a blog post cost?
It spends AI Content Optimizer credit, and the amount grows with the word count and with a featured image. If you do not have enough credit the call fails before anything is spent.
Why does the agent say I have no blogs?
Only blogs synced with StoreSEO are listed. Sync your blogs in the StoreSEO app, then ask again.
Keep going
Blog post drafts with other agents
More Cursor guides