@heyseo/mcp-server 0.1.3 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +165 -34
  2. package/dist/index.js +492 -274
  3. package/dist/index.js.map +1 -1
  4. package/dist/prompts/index.d.ts.map +1 -1
  5. package/dist/prompts/index.js +93 -0
  6. package/dist/prompts/index.js.map +1 -1
  7. package/dist/resources/index.d.ts +1 -1
  8. package/dist/resources/index.d.ts.map +1 -1
  9. package/dist/resources/index.js +135 -4
  10. package/dist/resources/index.js.map +1 -1
  11. package/dist/tools/comparison.d.ts +1 -1
  12. package/dist/tools/index.d.ts +75 -456
  13. package/dist/tools/index.d.ts.map +1 -1
  14. package/dist/tools/index.js +65 -1
  15. package/dist/tools/index.js.map +1 -1
  16. package/dist/tools/indexing.d.ts +94 -0
  17. package/dist/tools/indexing.d.ts.map +1 -0
  18. package/dist/tools/indexing.js +99 -0
  19. package/dist/tools/indexing.js.map +1 -0
  20. package/dist/tools/insights.d.ts +38 -0
  21. package/dist/tools/insights.d.ts.map +1 -0
  22. package/dist/tools/insights.js +58 -0
  23. package/dist/tools/insights.js.map +1 -0
  24. package/dist/tools/memory.d.ts +329 -0
  25. package/dist/tools/memory.d.ts.map +1 -0
  26. package/dist/tools/memory.js +242 -0
  27. package/dist/tools/memory.js.map +1 -0
  28. package/dist/tools/onpage.d.ts +37 -0
  29. package/dist/tools/onpage.d.ts.map +1 -0
  30. package/dist/tools/onpage.js +46 -0
  31. package/dist/tools/onpage.js.map +1 -0
  32. package/dist/tools/reports.d.ts +74 -0
  33. package/dist/tools/reports.d.ts.map +1 -0
  34. package/dist/tools/reports.js +92 -0
  35. package/dist/tools/reports.js.map +1 -0
  36. package/dist/tools/serp.d.ts +55 -0
  37. package/dist/tools/serp.d.ts.map +1 -0
  38. package/dist/tools/serp.js +47 -0
  39. package/dist/tools/serp.js.map +1 -0
  40. package/dist/tools/site.d.ts +42 -0
  41. package/dist/tools/site.d.ts.map +1 -0
  42. package/dist/tools/site.js +167 -0
  43. package/dist/tools/site.js.map +1 -0
  44. package/dist/tools/sitemaps.d.ts +30 -0
  45. package/dist/tools/sitemaps.d.ts.map +1 -0
  46. package/dist/tools/sitemaps.js +44 -0
  47. package/dist/tools/sitemaps.js.map +1 -0
  48. package/dist/tools/tasks.d.ts +14 -14
  49. package/dist/tools/workflows.d.ts +53 -0
  50. package/dist/tools/workflows.d.ts.map +1 -0
  51. package/dist/tools/workflows.js +162 -0
  52. package/dist/tools/workflows.js.map +1 -0
  53. package/dist/types.d.ts +138 -0
  54. package/dist/types.d.ts.map +1 -1
  55. package/dist/utils/api-client.d.ts +55 -1
  56. package/dist/utils/api-client.d.ts.map +1 -1
  57. package/dist/utils/api-client.js +126 -1
  58. package/dist/utils/api-client.js.map +1 -1
  59. package/dist/utils/response-formatter.d.ts +68 -0
  60. package/dist/utils/response-formatter.d.ts.map +1 -0
  61. package/dist/utils/response-formatter.js +128 -0
  62. package/dist/utils/response-formatter.js.map +1 -0
  63. package/package.json +2 -1
package/README.md CHANGED
@@ -1,6 +1,12 @@
1
- # HeySeo MCP Server
1
+ <div align="center">
2
+ <img src="https://heyseo.app/img/logo.svg" alt="HeySeo Logo" width="200" />
2
3
 
3
- Connect your LLM to your SEO data. Query Google Search Console, Google Analytics 4, and PageSpeed Insights directly from Claude, ChatGPT, Cursor, or any MCP-compatible client.
4
+ # HeySeo MCP Server
5
+
6
+ Connect your LLM to your SEO data. Query Google Search Console, Google Analytics 4, PageSpeed Insights, SERP data, indexing health, AI insights, and more — directly from Claude, ChatGPT, Cursor, or any MCP-compatible client.
7
+
8
+ **35 tools** | **10 resources** | **12 prompts**
9
+ </div>
4
10
 
5
11
  ## Quick Start
6
12
 
@@ -144,6 +150,16 @@ Restart Claude Desktop, Cursor, or your MCP client to load the new server.
144
150
 
145
151
  ## Available Tools
146
152
 
153
+ ### Site Management
154
+
155
+ **Select a site before running SEO operations.** The MCP server requires explicit site selection to ensure data isolation and prevent accidental cross-site operations.
156
+
157
+ | Tool | Description |
158
+ |------|-------------|
159
+ | `heyseo_list_sites` | List all available sites and their connection status (GSC/GA4) |
160
+ | `heyseo_select_site` | Select a specific site for all subsequent operations |
161
+ | `heyseo_get_current_site` | Get information about the currently selected site |
162
+
147
163
  ### Google Search Console
148
164
 
149
165
  | Tool | Description |
@@ -188,6 +204,56 @@ Restart Claude Desktop, Cursor, or your MCP client to load the new server.
188
204
  | `heyseo_bulk_create_tasks` | Create multiple tasks at once (up to 10) |
189
205
  | `heyseo_bulk_update_tasks` | Update multiple tasks at once (up to 10) |
190
206
 
207
+ ### Reports
208
+
209
+ | Tool | Description |
210
+ |------|-------------|
211
+ | `heyseo_list_reports` | List AI-generated SEO reports (weekly/monthly) |
212
+ | `heyseo_get_report` | Get full report details including metrics and AI analysis |
213
+
214
+ ### Indexing Health
215
+
216
+ | Tool | Description |
217
+ |------|-------------|
218
+ | `heyseo_indexing_status` | Get indexing health summary (indexed/not-indexed counts, health score) |
219
+ | `heyseo_indexing_pages` | List pages with their indexing verdict and coverage state |
220
+ | `heyseo_submit_for_indexing` | Submit a page to Google's Indexing API for faster indexing |
221
+
222
+ ### SEO Memory
223
+
224
+ | Tool | Description |
225
+ |------|-------------|
226
+ | `heyseo_get_memory` | Get full SEO memory context (strategy, goals, learnings, health trend) |
227
+ | `heyseo_update_strategy` | Update SEO strategy summary, create goals, or update goal progress |
228
+ | `heyseo_record_action` | Record an SEO action taken on the site with hypothesis and metrics to track |
229
+ | `heyseo_add_learning` | Add a key fact or success pattern to the site's learning memory |
230
+
231
+ ### AI Insights
232
+
233
+ | Tool | Description |
234
+ |------|-------------|
235
+ | `heyseo_get_insights` | Get AI-generated insights (anomalies, opportunities, alerts, trends, milestones) |
236
+
237
+ ### On-Page Audit
238
+
239
+ | Tool | Description |
240
+ |------|-------------|
241
+ | `heyseo_onpage_audit` | Run a full on-page SEO audit on any URL (score, meta tags, headings, links, images, issues) |
242
+
243
+ ### SERP Analysis
244
+
245
+ | Tool | Description |
246
+ |------|-------------|
247
+ | `heyseo_serp_search` | Search Google SERP for a keyword with organic results, featured snippets, and PAA |
248
+
249
+ ### Sitemaps
250
+
251
+ | Tool | Description |
252
+ |------|-------------|
253
+ | `heyseo_list_sitemaps` | List sitemaps registered in Google Search Console with status and errors |
254
+
255
+ ---
256
+
191
257
  ## Resources
192
258
 
193
259
  Access your SEO data as readable resources:
@@ -196,9 +262,16 @@ Access your SEO data as readable resources:
196
262
  |-----|-------------|
197
263
  | `heyseo://sites` | List all connected sites |
198
264
  | `heyseo://sites/{id}` | Site details |
199
- | `heyseo://sites/{id}/overview` | Current metrics overview |
265
+ | `heyseo://sites/{id}/overview` | Current metrics overview (last 28 days) |
200
266
  | `heyseo://sites/{id}/keywords` | Top 50 keywords |
201
267
  | `heyseo://sites/{id}/pages` | Top 50 pages |
268
+ | `heyseo://sites/{id}/reports` | Recent AI-generated SEO reports |
269
+ | `heyseo://sites/{id}/indexing` | Indexing health summary |
270
+ | `heyseo://sites/{id}/insights` | AI-generated insights |
271
+ | `heyseo://sites/{id}/memory` | SEO memory context (strategy, goals, learnings) |
272
+ | `heyseo://sites/{id}/sitemaps` | GSC sitemaps |
273
+
274
+ ---
202
275
 
203
276
  ## Prompts
204
277
 
@@ -214,39 +287,114 @@ Pre-built prompts for common SEO tasks:
214
287
  | `traffic_analysis` | Traffic patterns and sources |
215
288
  | `quick_wins` | Low-effort, high-impact opportunities |
216
289
  | `ranking_changes` | Recent ranking changes analysis |
217
- | `task_review` | Review and prioritize SEO tasks for a site |
290
+ | `task_review` | Review and prioritize SEO tasks |
291
+ | `indexing_audit` | Indexing health audit with fix recommendations |
292
+ | `strategy_review` | Review and update SEO strategy based on memory |
293
+ | `insights_briefing` | Summarize recent insights and suggest actions |
218
294
 
219
295
  ---
220
296
 
221
297
  ## Usage Examples
222
298
 
223
- **Get top keywords:**
224
- > "What are my top 10 keywords this month?"
299
+ ### Site Selection (Start here!)
225
300
 
226
- **Run an SEO audit:**
227
- > "Run an SEO audit on my site"
301
+ Before performing any SEO operations, you must select a site:
302
+
303
+ **List available sites:**
304
+ > "Show me all my connected sites"
305
+
306
+ **Select a site:**
307
+ > "Select the site with ID: abc123def456"
308
+
309
+ **Check current site:**
310
+ > "What site am I currently working with?"
311
+
312
+ ### Performance Analysis
313
+
314
+ > "What are my top 10 keywords this month?"
228
315
 
229
- **Compare performance:**
230
316
  > "How did we do this week vs last week?"
231
317
 
232
- **Analyze page speed:**
233
318
  > "Check the page speed for our homepage"
234
319
 
235
- **Find opportunities:**
320
+ > "How has my ranking for 'best seo tools' changed over the last 30 days?"
321
+
322
+ ### Audits & Opportunities
323
+
324
+ > "Run an SEO audit on my site"
325
+
236
326
  > "Find quick win SEO opportunities"
237
327
 
238
- **Track keyword ranking history:**
239
- > "How has my ranking for 'best seo tools' changed over the last 30 days?"
328
+ > "Run an on-page audit on https://example.com/blog/post"
329
+
330
+ > "Search Google for 'best project management tools' and show me the SERP"
331
+
332
+ ### Indexing Health
333
+
334
+ > "What's my indexing health status?"
335
+
336
+ > "Show me pages that aren't indexed"
337
+
338
+ > "Submit my /new-landing-page for indexing"
339
+
340
+ ### Reports & Insights
341
+
342
+ > "Show me my latest SEO reports"
343
+
344
+ > "What AI insights do you have for my site?"
345
+
346
+ > "Give me an insights briefing"
347
+
348
+ ### Strategy & Memory
349
+
350
+ > "What's our current SEO strategy?"
351
+
352
+ > "Update the strategy summary to focus on technical SEO improvements"
353
+
354
+ > "Create a goal to increase organic clicks by 20% by Q3"
355
+
356
+ > "Record that we optimized all meta descriptions today"
357
+
358
+ > "Add a learning: long-form guides rank better for informational queries"
359
+
360
+ ### Task Management
240
361
 
241
- **Review and prioritize tasks:**
242
362
  > "Review my SEO tasks and help me prioritize them"
243
363
 
244
- **Create tasks from audit findings:**
245
364
  > "Create tasks for the top 5 issues you found in the audit"
246
365
 
247
- **Bulk update task status:**
248
366
  > "Mark all the technical tasks as done"
249
367
 
368
+ ### Sitemaps
369
+
370
+ > "List my sitemaps from Google Search Console"
371
+
372
+ ---
373
+
374
+ ## API Key Scopes
375
+
376
+ When creating an API key, you can restrict access to specific features:
377
+
378
+ | Scope | Description |
379
+ |-------|-------------|
380
+ | `sites:read` | Read site information |
381
+ | `gsc:read` | Read Google Search Console data |
382
+ | `ga4:read` | Read Google Analytics 4 data |
383
+ | `pagespeed:read` | Run PageSpeed analyses |
384
+ | `tasks:read` | Read tasks |
385
+ | `tasks:write` | Create, update, delete tasks |
386
+ | `reports:read` | Read AI-generated reports |
387
+ | `indexing:read` | Read indexing status and pages |
388
+ | `indexing:write` | Submit pages for indexing |
389
+ | `memory:read` | Read SEO memory context |
390
+ | `memory:write` | Update strategy, goals, actions, learnings |
391
+ | `insights:read` | Read AI-generated insights |
392
+ | `onpage:read` | Run on-page audits |
393
+ | `serp:read` | Search Google SERP |
394
+ | `sitemaps:read` | Read GSC sitemaps |
395
+
396
+ Use `all` scope for full access.
397
+
250
398
  ---
251
399
 
252
400
  ## Environment Variables
@@ -263,23 +411,6 @@ Pre-built prompts for common SEO tasks:
263
411
 
264
412
  ---
265
413
 
266
- ## Development
267
-
268
- ```bash
269
- # Clone the repo
270
- git clone https://github.com/heyseo/mcp-server
271
- cd mcp-server
272
-
273
- # Install dependencies
274
- npm install
275
-
276
- # Build
277
- npm run build
278
-
279
- # Test locally
280
- HEYSEO_API_KEY=your_key node dist/index.js
281
- ```
282
-
283
414
  ## License
284
415
 
285
416
  MIT
@@ -287,4 +418,4 @@ MIT
287
418
  ## Support
288
419
 
289
420
  - Website: [heyseo.app](https://heyseo.app)
290
- - Email: support@heyseo.app
421
+ - Email: hello@heyseo.app