# Ask Cursor what ChatGPT, Gemini, Perplexity and Claude say about your brand (Contentstack Canoe MCP)

**URL:** <https://forum.cursor.com/t/ask-cursor-what-chatgpt-gemini-perplexity-and-claude-say-about-your-brand-contentstack-canoe-mcp/176841>\
**Category:** Built for Cursor\
**Tags:** mcp\
**Created:** [October 31, 2026, 2:13am UTC](https://forum.cursor.com/t/ask-cursor-what-chatgpt-gemini-perplexity-and-claude-say-about-your-brand-contentstack-canoe-mcp/176841 "2026-10-31T02:13:29Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aniketh\_Shenoy\_Kota](https://avatars.discourse-cdn.com/v4/letter/a/b5ac83/32.png) [@Aniketh\_Shenoy\_Kota](https://forum.cursor.com/u/Aniketh_Shenoy_Kota)\
**Post date:** [October 31, 2026, 2:13am UTC](https://forum.cursor.com/t/ask-cursor-what-chatgpt-gemini-perplexity-and-claude-say-about-your-brand-contentstack-canoe-mcp/176841/1 "2026-10-31T02:13:29Z")

</div>

Full disclosure first: I’m Aniketh Shenoy Kota, the product manager for Contentstack Canoe at Contentstack. It’s a paid product, and the MCP server is on the Growth plan. There’s a free plan, but it doesn’t include MCP. Sharing because a lot of our own testing happened in Cursor, and I’d like feedback from people who live in it.

**What it does.** Contentstack Canoe asks ChatGPT, Gemini, Perplexity and Claude the questions your buyers ask, then scores how often your brand gets named, who wins instead and which sources the engines cite. The MCP server gives Cursor’s agent nine tools to read that data and, if you approve, start a new run.

### Setup (about two minutes)

1. Create a Read & write API key in Contentstack Canoe under Settings \> API keys. (MCP requests are POSTs, so read-only keys get refused for now.)
2. Put it in your environment, then launch Cursor from that environment. Cursor reads `${env:...}` from where it was started.

```bash
export CONTENTSTACK_CANOE_API_KEY="sk_your_key_here"

```

1. Add this to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (one repo):

```json
{
  "mcpServers": {
    "contentstack-canoe": {
      "url": "https://canoe.contentstack.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${env:CONTENTSTACK_CANOE_API_KEY}"
      }
    }
  }
}

```

The key never lands in a file you commit. Cursor settings \> MCP should show `contentstack-canoe` with nine tools.

### The tools

- `list_projects`, `list_geo_tests`: find the brand and its monitors
- `get_geo_latest_report`: the whole latest report in one call (score, visibility, rank, sentiment, competitors, citations, site audit, recommendations, what changed since last run)
- `get_geo_test_history`: run by run, per engine
- `get_geo_latest_prompt_details`, `get_geo_prompt_details`: the engines’ full answers, for exact quotes
- `get_geo_latest_citations`, `get_geo_citations`: which sources the engines cite
- `trigger_geo_test_run`: starts a run. It’s the only tool that writes or spends prompts. Leave approval on for this one.

All the others are annotated read only, and reading never spends prompts.

### A real prompt

> List my Contentstack Canoe brands and their monitors. For the commuter e-bike monitor, tell me where we stand, who’s beating us and the first thing to fix. Check that the numbers come from a finished run.

### The kind of answer you get

Illustrative values for Tarnwell Cycles, the fictional brand in our docs:

> I called `list_projects`, `list_geo_tests` and `get_geo_latest_report`. The latest run finished successfully, so these numbers are current.
> 
> - Overall score 67, up 6 since the last run. You climbed one place to 3rd of 10 on the leaderboard.
> - You’re named in 62% of answers. Sentiment is positive (74).
> - By buyer stage you’re weakest early: awareness 47, consideration 57, decision 81. People who already know you pick you. People still browsing hear about Aldren.
> - Site audit: AI Readiness Score 80.
> - Top recommendation: “Close the gap with Aldren.” Want me to pull the exact answers where Aldren was named and you weren’t, so we can see what the engines say about them?

From there the follow-ups get specific: “Show me those answers”, “Which third-party sites do the engines cite at the consideration stage?”, “Turn the questions we lose into content briefs.”

### With your CMS in the same chat

If you also add the Contentstack MCP (`npx -y @contentstack/mcp`) to the same `mcp.json`, the agent can read a recommendation, find the matching entry and draft the change. A person approves every update. Contentstack Canoe itself never writes to your site.

### What I’d like feedback on

- Is one big `get_geo_latest_report` call easier for Cursor’s agent than several small ones? We went with one summary call plus separate drill-downs.
- Anyone else hit the “read-only key vs POST” problem with MCP auth? How did you handle it?
- OAuth sign-in is next for us. Would you still use a header key in Cursor once that’s there?

Docs with every client config: [MCP server | Contentstack Canoe](https://canoe.contentstack.com/docs/mcp/)

Next for us: OAuth sign-in, read-only keys for MCP, and Microsoft Copilot and Google AI Mode alongside the four engines.
