@reaudit/mcp-server 1.0.0
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.
- package/LICENSE +33 -0
- package/README.md +399 -0
- package/dist/auth/oauth-client.d.ts +43 -0
- package/dist/auth/oauth-client.d.ts.map +1 -0
- package/dist/auth/oauth-client.js +340 -0
- package/dist/auth/oauth-client.js.map +1 -0
- package/dist/auth/token-store.d.ts +41 -0
- package/dist/auth/token-store.d.ts.map +1 -0
- package/dist/auth/token-store.js +176 -0
- package/dist/auth/token-store.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +480 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/api-client.d.ts +970 -0
- package/dist/lib/api-client.d.ts.map +1 -0
- package/dist/lib/api-client.js +441 -0
- package/dist/lib/api-client.js.map +1 -0
- package/dist/lib/confirmation.d.ts +92 -0
- package/dist/lib/confirmation.d.ts.map +1 -0
- package/dist/lib/confirmation.js +224 -0
- package/dist/lib/confirmation.js.map +1 -0
- package/dist/lib/error-handler.d.ts +57 -0
- package/dist/lib/error-handler.d.ts.map +1 -0
- package/dist/lib/error-handler.js +235 -0
- package/dist/lib/error-handler.js.map +1 -0
- package/dist/lib/offline-mode.d.ts +107 -0
- package/dist/lib/offline-mode.d.ts.map +1 -0
- package/dist/lib/offline-mode.js +356 -0
- package/dist/lib/offline-mode.js.map +1 -0
- package/dist/lib/progress-tracker.d.ts +87 -0
- package/dist/lib/progress-tracker.d.ts.map +1 -0
- package/dist/lib/progress-tracker.js +238 -0
- package/dist/lib/progress-tracker.js.map +1 -0
- package/dist/prompts/index.d.ts +24 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +305 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/resources/index.d.ts +44 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +125 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/tools/account.d.ts +25 -0
- package/dist/tools/account.d.ts.map +1 -0
- package/dist/tools/account.js +69 -0
- package/dist/tools/account.js.map +1 -0
- package/dist/tools/action-grids.d.ts +414 -0
- package/dist/tools/action-grids.d.ts.map +1 -0
- package/dist/tools/action-grids.js +271 -0
- package/dist/tools/action-grids.js.map +1 -0
- package/dist/tools/analytics-query.d.ts +126 -0
- package/dist/tools/analytics-query.d.ts.map +1 -0
- package/dist/tools/analytics-query.js +106 -0
- package/dist/tools/analytics-query.js.map +1 -0
- package/dist/tools/analytics.d.ts +57 -0
- package/dist/tools/analytics.d.ts.map +1 -0
- package/dist/tools/analytics.js +122 -0
- package/dist/tools/analytics.js.map +1 -0
- package/dist/tools/audits.d.ts +123 -0
- package/dist/tools/audits.d.ts.map +1 -0
- package/dist/tools/audits.js +226 -0
- package/dist/tools/audits.js.map +1 -0
- package/dist/tools/calendar.d.ts +57 -0
- package/dist/tools/calendar.d.ts.map +1 -0
- package/dist/tools/calendar.js +109 -0
- package/dist/tools/calendar.js.map +1 -0
- package/dist/tools/content-generation.d.ts +211 -0
- package/dist/tools/content-generation.d.ts.map +1 -0
- package/dist/tools/content-generation.js +363 -0
- package/dist/tools/content-generation.js.map +1 -0
- package/dist/tools/content.d.ts +92 -0
- package/dist/tools/content.d.ts.map +1 -0
- package/dist/tools/content.js +130 -0
- package/dist/tools/content.js.map +1 -0
- package/dist/tools/indexing.d.ts +132 -0
- package/dist/tools/indexing.d.ts.map +1 -0
- package/dist/tools/indexing.js +190 -0
- package/dist/tools/indexing.js.map +1 -0
- package/dist/tools/optimization.d.ts +70 -0
- package/dist/tools/optimization.d.ts.map +1 -0
- package/dist/tools/optimization.js +106 -0
- package/dist/tools/optimization.js.map +1 -0
- package/dist/tools/projects.d.ts +67 -0
- package/dist/tools/projects.d.ts.map +1 -0
- package/dist/tools/projects.js +113 -0
- package/dist/tools/projects.js.map +1 -0
- package/dist/tools/prompts.d.ts +306 -0
- package/dist/tools/prompts.d.ts.map +1 -0
- package/dist/tools/prompts.js +378 -0
- package/dist/tools/prompts.js.map +1 -0
- package/dist/tools/publishing.d.ts +135 -0
- package/dist/tools/publishing.d.ts.map +1 -0
- package/dist/tools/publishing.js +209 -0
- package/dist/tools/publishing.js.map +1 -0
- package/dist/tools/reports.d.ts +252 -0
- package/dist/tools/reports.d.ts.map +1 -0
- package/dist/tools/reports.js +183 -0
- package/dist/tools/reports.js.map +1 -0
- package/dist/tools/social.d.ts +224 -0
- package/dist/tools/social.d.ts.map +1 -0
- package/dist/tools/social.js +291 -0
- package/dist/tools/social.js.map +1 -0
- package/dist/tools/sources.d.ts +221 -0
- package/dist/tools/sources.d.ts.map +1 -0
- package/dist/tools/sources.js +308 -0
- package/dist/tools/sources.js.map +1 -0
- package/dist/tools/strategy.d.ts +345 -0
- package/dist/tools/strategy.d.ts.map +1 -0
- package/dist/tools/strategy.js +392 -0
- package/dist/tools/strategy.js.map +1 -0
- package/dist/tools/usage.d.ts +101 -0
- package/dist/tools/usage.d.ts.map +1 -0
- package/dist/tools/usage.js +184 -0
- package/dist/tools/usage.js.map +1 -0
- package/dist/tools/visibility.d.ts +95 -0
- package/dist/tools/visibility.d.ts.map +1 -0
- package/dist/tools/visibility.js +163 -0
- package/dist/tools/visibility.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-tracker.js","sourceRoot":"","sources":["../../src/lib/progress-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Prompts
|
|
3
|
+
*
|
|
4
|
+
* Pre-built prompt templates for common workflows.
|
|
5
|
+
* These help users get started with common tasks.
|
|
6
|
+
*/
|
|
7
|
+
import { ReauditAPIClient } from '../lib/api-client.js';
|
|
8
|
+
/**
|
|
9
|
+
* Prompt definitions for MCP
|
|
10
|
+
*/
|
|
11
|
+
export declare const mcpPrompts: {
|
|
12
|
+
name: string;
|
|
13
|
+
description: string;
|
|
14
|
+
arguments: {
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
required: boolean;
|
|
18
|
+
}[];
|
|
19
|
+
}[];
|
|
20
|
+
/**
|
|
21
|
+
* Generate prompt content based on template name
|
|
22
|
+
*/
|
|
23
|
+
export declare function generatePromptContent(client: ReauditAPIClient, promptName: string, args: Record<string, string>): Promise<string>;
|
|
24
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;GA6DtB,CAAC;AAEF;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,OAAO,CAAC,MAAM,CAAC,CAoBjB"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* MCP Prompts
|
|
4
|
+
*
|
|
5
|
+
* Pre-built prompt templates for common workflows.
|
|
6
|
+
* These help users get started with common tasks.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.mcpPrompts = void 0;
|
|
10
|
+
exports.generatePromptContent = generatePromptContent;
|
|
11
|
+
/**
|
|
12
|
+
* Prompt definitions for MCP
|
|
13
|
+
*/
|
|
14
|
+
exports.mcpPrompts = [
|
|
15
|
+
{
|
|
16
|
+
name: 'weekly_visibility_report',
|
|
17
|
+
description: 'Generate a weekly AI visibility report for a project, including mentions, sentiment, and competitor comparison.',
|
|
18
|
+
arguments: [
|
|
19
|
+
{
|
|
20
|
+
name: 'projectId',
|
|
21
|
+
description: 'The ID of the project to report on',
|
|
22
|
+
required: true,
|
|
23
|
+
},
|
|
24
|
+
],
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'seo_action_plan',
|
|
28
|
+
description: 'Create an actionable SEO improvement plan based on the latest audit results.',
|
|
29
|
+
arguments: [
|
|
30
|
+
{
|
|
31
|
+
name: 'auditId',
|
|
32
|
+
description: 'The ID of the audit to base the plan on',
|
|
33
|
+
required: true,
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'content_strategy',
|
|
39
|
+
description: 'Generate a content strategy based on knowledge base analysis and SEO recommendations.',
|
|
40
|
+
arguments: [
|
|
41
|
+
{
|
|
42
|
+
name: 'projectId',
|
|
43
|
+
description: 'The ID of the project',
|
|
44
|
+
required: true,
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'topic',
|
|
48
|
+
description: 'Optional topic focus for the strategy',
|
|
49
|
+
required: false,
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'competitor_analysis',
|
|
55
|
+
description: 'Analyze competitor visibility and provide strategic recommendations.',
|
|
56
|
+
arguments: [
|
|
57
|
+
{
|
|
58
|
+
name: 'projectId',
|
|
59
|
+
description: 'The ID of the project',
|
|
60
|
+
required: true,
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: 'bot_activity_summary',
|
|
66
|
+
description: 'Summarize AI bot crawling activity on your WordPress site with insights.',
|
|
67
|
+
arguments: [
|
|
68
|
+
{
|
|
69
|
+
name: 'projectId',
|
|
70
|
+
description: 'The ID of the project',
|
|
71
|
+
required: true,
|
|
72
|
+
},
|
|
73
|
+
],
|
|
74
|
+
},
|
|
75
|
+
];
|
|
76
|
+
/**
|
|
77
|
+
* Generate prompt content based on template name
|
|
78
|
+
*/
|
|
79
|
+
async function generatePromptContent(client, promptName, args) {
|
|
80
|
+
switch (promptName) {
|
|
81
|
+
case 'weekly_visibility_report':
|
|
82
|
+
return generateWeeklyReport(client, args.projectId);
|
|
83
|
+
case 'seo_action_plan':
|
|
84
|
+
return generateSeoActionPlan(client, args.auditId);
|
|
85
|
+
case 'content_strategy':
|
|
86
|
+
return generateContentStrategy(client, args.projectId, args.topic);
|
|
87
|
+
case 'competitor_analysis':
|
|
88
|
+
return generateCompetitorAnalysis(client, args.projectId);
|
|
89
|
+
case 'bot_activity_summary':
|
|
90
|
+
return generateBotActivitySummary(client, args.projectId);
|
|
91
|
+
default:
|
|
92
|
+
throw new Error(`Unknown prompt: ${promptName}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Generate weekly visibility report prompt
|
|
97
|
+
*/
|
|
98
|
+
async function generateWeeklyReport(client, projectId) {
|
|
99
|
+
const [visibility, mentions, competitors] = await Promise.all([
|
|
100
|
+
client.getVisibilityScore(projectId),
|
|
101
|
+
client.getBrandMentions(projectId, { days: 7, limit: 10 }),
|
|
102
|
+
client.getCompetitorComparison(projectId),
|
|
103
|
+
]);
|
|
104
|
+
let prompt = `# Weekly AI Visibility Report for ${visibility.brandName}\n\n`;
|
|
105
|
+
prompt += `## Executive Summary\n`;
|
|
106
|
+
prompt += `Please analyze the following data and provide:\n`;
|
|
107
|
+
prompt += `1. Key highlights from this week\n`;
|
|
108
|
+
prompt += `2. Areas of concern\n`;
|
|
109
|
+
prompt += `3. Recommended actions for next week\n\n`;
|
|
110
|
+
prompt += `## Current Metrics\n`;
|
|
111
|
+
prompt += `- Visibility Score: ${visibility.visibilityScore}/100\n`;
|
|
112
|
+
prompt += `- Total Mentions (7 days): ${mentions.count}\n`;
|
|
113
|
+
prompt += `- Citation Rate: ${visibility.metrics.citationRate}%\n`;
|
|
114
|
+
prompt += `- Average Sentiment: ${visibility.metrics.avgSentiment}/100\n\n`;
|
|
115
|
+
prompt += `## Platform Breakdown\n`;
|
|
116
|
+
for (const platform of visibility.platformBreakdown) {
|
|
117
|
+
prompt += `- ${platform.platform}: ${platform.mentions} mentions (sentiment: ${platform.avgSentiment})\n`;
|
|
118
|
+
}
|
|
119
|
+
prompt += '\n';
|
|
120
|
+
prompt += `## Sentiment Distribution\n`;
|
|
121
|
+
prompt += `- Positive: ${visibility.sentimentDistribution.positive}\n`;
|
|
122
|
+
prompt += `- Neutral: ${visibility.sentimentDistribution.neutral}\n`;
|
|
123
|
+
prompt += `- Negative: ${visibility.sentimentDistribution.negative}\n\n`;
|
|
124
|
+
if (competitors.competitors.length > 0) {
|
|
125
|
+
prompt += `## Competitive Position\n`;
|
|
126
|
+
prompt += `Your rank: #${competitors.yourMetrics.rank} of ${competitors.yourMetrics.totalCompetitors + 1}\n\n`;
|
|
127
|
+
prompt += `Top competitors:\n`;
|
|
128
|
+
for (const comp of competitors.competitors.slice(0, 3)) {
|
|
129
|
+
prompt += `- ${comp.name}: ${comp.mentions} mentions\n`;
|
|
130
|
+
}
|
|
131
|
+
prompt += '\n';
|
|
132
|
+
}
|
|
133
|
+
prompt += `## Recent Mentions\n`;
|
|
134
|
+
for (const mention of mentions.mentions.slice(0, 5)) {
|
|
135
|
+
prompt += `### ${mention.platform} (${mention.sentimentLabel})\n`;
|
|
136
|
+
prompt += `${mention.excerpt}\n\n`;
|
|
137
|
+
}
|
|
138
|
+
return prompt;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Generate SEO action plan prompt
|
|
142
|
+
*/
|
|
143
|
+
async function generateSeoActionPlan(client, auditId) {
|
|
144
|
+
const [audit, recommendations] = await Promise.all([
|
|
145
|
+
client.getAuditDetails(auditId),
|
|
146
|
+
client.getAuditRecommendations(auditId),
|
|
147
|
+
]);
|
|
148
|
+
let prompt = `# SEO Action Plan for ${audit.domain}\n\n`;
|
|
149
|
+
prompt += `## Current State\n`;
|
|
150
|
+
prompt += `- URL: ${audit.url}\n`;
|
|
151
|
+
prompt += `- Current Score: ${audit.scores.current}/100\n`;
|
|
152
|
+
prompt += `- Potential Score: ${audit.scores.potential}/100\n`;
|
|
153
|
+
prompt += `- Gap to Close: ${audit.scores.potential - audit.scores.current} points\n\n`;
|
|
154
|
+
prompt += `## Task\n`;
|
|
155
|
+
prompt += `Please create a prioritized action plan with:\n`;
|
|
156
|
+
prompt += `1. Quick wins (can be done this week)\n`;
|
|
157
|
+
prompt += `2. Medium-term improvements (2-4 weeks)\n`;
|
|
158
|
+
prompt += `3. Long-term strategic changes\n`;
|
|
159
|
+
prompt += `4. Estimated impact for each action\n\n`;
|
|
160
|
+
prompt += `## Issues Summary\n`;
|
|
161
|
+
prompt += `- Critical: ${recommendations.summary.critical}\n`;
|
|
162
|
+
prompt += `- High: ${recommendations.summary.high}\n`;
|
|
163
|
+
prompt += `- Medium: ${recommendations.summary.medium}\n`;
|
|
164
|
+
prompt += `- Low: ${recommendations.summary.low}\n\n`;
|
|
165
|
+
if (recommendations.byImpact.critical.length > 0) {
|
|
166
|
+
prompt += `## Critical Issues (Fix Immediately)\n`;
|
|
167
|
+
for (const rec of recommendations.byImpact.critical) {
|
|
168
|
+
prompt += `### ${rec.title}\n`;
|
|
169
|
+
prompt += `${rec.description}\n`;
|
|
170
|
+
prompt += `- Category: ${rec.category}\n`;
|
|
171
|
+
prompt += `- Effort: ${rec.effort}\n`;
|
|
172
|
+
if (rec.implementation) {
|
|
173
|
+
prompt += `- How to fix: ${rec.implementation}\n`;
|
|
174
|
+
}
|
|
175
|
+
prompt += '\n';
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (recommendations.byImpact.high.length > 0) {
|
|
179
|
+
prompt += `## High Priority Issues\n`;
|
|
180
|
+
for (const rec of recommendations.byImpact.high.slice(0, 5)) {
|
|
181
|
+
prompt += `### ${rec.title}\n`;
|
|
182
|
+
prompt += `${rec.description}\n`;
|
|
183
|
+
prompt += `- Effort: ${rec.effort}\n\n`;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
if (audit.technicalIssues.length > 0) {
|
|
187
|
+
prompt += `## Technical Issues\n`;
|
|
188
|
+
for (const issue of audit.technicalIssues.slice(0, 5)) {
|
|
189
|
+
prompt += `- **${issue.issue}**: ${issue.solution}\n`;
|
|
190
|
+
}
|
|
191
|
+
prompt += '\n';
|
|
192
|
+
}
|
|
193
|
+
return prompt;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Generate content strategy prompt
|
|
197
|
+
*/
|
|
198
|
+
async function generateContentStrategy(client, projectId, topic) {
|
|
199
|
+
const [suggestions, kbResult] = await Promise.all([
|
|
200
|
+
client.getContentSuggestions(projectId, { limit: 10 }),
|
|
201
|
+
topic
|
|
202
|
+
? client.searchKnowledgeBase(projectId, topic, 5)
|
|
203
|
+
: Promise.resolve(null),
|
|
204
|
+
]);
|
|
205
|
+
let prompt = `# Content Strategy Development\n\n`;
|
|
206
|
+
prompt += `## Task\n`;
|
|
207
|
+
prompt += `Please develop a content strategy that includes:\n`;
|
|
208
|
+
prompt += `1. Content pillars and themes\n`;
|
|
209
|
+
prompt += `2. Specific content pieces to create\n`;
|
|
210
|
+
prompt += `3. Keywords to target\n`;
|
|
211
|
+
prompt += `4. Content formats (blog, video, infographic, etc.)\n`;
|
|
212
|
+
prompt += `5. Publishing schedule recommendations\n\n`;
|
|
213
|
+
if (topic) {
|
|
214
|
+
prompt += `## Focus Topic: ${topic}\n\n`;
|
|
215
|
+
}
|
|
216
|
+
if (kbResult && kbResult.results.length > 0) {
|
|
217
|
+
prompt += `## Existing Content on Topic\n`;
|
|
218
|
+
for (const result of kbResult.results) {
|
|
219
|
+
prompt += `### ${result.title || 'Content Chunk'}\n`;
|
|
220
|
+
prompt += `${result.content.substring(0, 300)}...\n\n`;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
if (suggestions.suggestions.length > 0) {
|
|
224
|
+
prompt += `## AI-Generated Content Suggestions\n`;
|
|
225
|
+
for (const sug of suggestions.suggestions) {
|
|
226
|
+
prompt += `### ${sug.title}\n`;
|
|
227
|
+
prompt += `${sug.description}\n`;
|
|
228
|
+
if (sug.targetKeywords.length > 0) {
|
|
229
|
+
prompt += `Keywords: ${sug.targetKeywords.join(', ')}\n`;
|
|
230
|
+
}
|
|
231
|
+
prompt += '\n';
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
return prompt;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Generate competitor analysis prompt
|
|
238
|
+
*/
|
|
239
|
+
async function generateCompetitorAnalysis(client, projectId) {
|
|
240
|
+
const [visibility, competitors, citations] = await Promise.all([
|
|
241
|
+
client.getVisibilityScore(projectId),
|
|
242
|
+
client.getCompetitorComparison(projectId),
|
|
243
|
+
client.getCitationAnalytics(projectId, 30),
|
|
244
|
+
]);
|
|
245
|
+
let prompt = `# Competitive Analysis for ${visibility.brandName}\n\n`;
|
|
246
|
+
prompt += `## Task\n`;
|
|
247
|
+
prompt += `Please analyze the competitive landscape and provide:\n`;
|
|
248
|
+
prompt += `1. Competitive strengths and weaknesses\n`;
|
|
249
|
+
prompt += `2. Opportunities to gain market share\n`;
|
|
250
|
+
prompt += `3. Threats from competitors\n`;
|
|
251
|
+
prompt += `4. Strategic recommendations\n\n`;
|
|
252
|
+
prompt += `## Your Current Position\n`;
|
|
253
|
+
prompt += `- Visibility Score: ${visibility.visibilityScore}/100\n`;
|
|
254
|
+
prompt += `- Total Mentions: ${visibility.metrics.totalMentions}\n`;
|
|
255
|
+
prompt += `- Citation Rate: ${visibility.metrics.citationRate}%\n`;
|
|
256
|
+
prompt += `- Sentiment: ${visibility.metrics.avgSentiment}/100\n`;
|
|
257
|
+
prompt += `- Competitive Rank: #${competitors.yourMetrics.rank}\n\n`;
|
|
258
|
+
prompt += `## Competitor Metrics\n`;
|
|
259
|
+
for (const comp of competitors.competitors) {
|
|
260
|
+
prompt += `### ${comp.name}\n`;
|
|
261
|
+
prompt += `- Mentions: ${comp.mentions}\n`;
|
|
262
|
+
prompt += `- Sentiment: ${comp.avgSentiment}/100\n`;
|
|
263
|
+
prompt += `- Citations: ${comp.citations}\n\n`;
|
|
264
|
+
}
|
|
265
|
+
prompt += `## Citation Sources\n`;
|
|
266
|
+
prompt += `Top domains citing your brand:\n`;
|
|
267
|
+
for (const domain of citations.topCitedDomains.slice(0, 5)) {
|
|
268
|
+
prompt += `- ${domain.domain}: ${domain.count} citations\n`;
|
|
269
|
+
}
|
|
270
|
+
prompt += '\n';
|
|
271
|
+
prompt += `## Platform Performance\n`;
|
|
272
|
+
for (const platform of visibility.platformBreakdown) {
|
|
273
|
+
prompt += `- ${platform.platform}: ${platform.mentions} mentions\n`;
|
|
274
|
+
}
|
|
275
|
+
return prompt;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Generate bot activity summary prompt
|
|
279
|
+
*/
|
|
280
|
+
async function generateBotActivitySummary(client, projectId) {
|
|
281
|
+
const wpAnalytics = await client.getWordPressAnalytics(projectId, 30);
|
|
282
|
+
let prompt = `# AI Bot Activity Summary\n\n`;
|
|
283
|
+
prompt += `## Task\n`;
|
|
284
|
+
prompt += `Please analyze the AI bot crawling activity and provide:\n`;
|
|
285
|
+
prompt += `1. Key insights about which AI systems are indexing the site\n`;
|
|
286
|
+
prompt += `2. Content that is attracting the most AI attention\n`;
|
|
287
|
+
prompt += `3. Recommendations to improve AI discoverability\n`;
|
|
288
|
+
prompt += `4. Any concerns or anomalies\n\n`;
|
|
289
|
+
prompt += `## Summary (Last 30 Days)\n`;
|
|
290
|
+
prompt += `- Total Bot Visits: ${wpAnalytics.summary.totalBotVisits}\n`;
|
|
291
|
+
prompt += `- Unique Bot Types: ${wpAnalytics.summary.uniqueBotTypes}\n\n`;
|
|
292
|
+
prompt += `## Bot Breakdown\n`;
|
|
293
|
+
for (const bot of wpAnalytics.botBreakdown) {
|
|
294
|
+
prompt += `### ${bot.botType}\n`;
|
|
295
|
+
prompt += `- Visits: ${bot.visits}\n`;
|
|
296
|
+
prompt += `- Unique Pages: ${bot.uniquePages}\n\n`;
|
|
297
|
+
}
|
|
298
|
+
prompt += `## Most Crawled Pages\n`;
|
|
299
|
+
for (const page of wpAnalytics.topCrawledPages.slice(0, 10)) {
|
|
300
|
+
prompt += `- ${page.url}\n`;
|
|
301
|
+
prompt += ` Visits: ${page.visits} | Bots: ${page.bots.join(', ')}\n`;
|
|
302
|
+
}
|
|
303
|
+
return prompt;
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Resources
|
|
3
|
+
*
|
|
4
|
+
* Read-only data resources accessible via reaudit:// URIs.
|
|
5
|
+
*/
|
|
6
|
+
import { ReauditAPIClient } from '../lib/api-client.js';
|
|
7
|
+
/**
|
|
8
|
+
* Resource definitions for MCP
|
|
9
|
+
*/
|
|
10
|
+
export declare const mcpResources: {
|
|
11
|
+
uri: string;
|
|
12
|
+
name: string;
|
|
13
|
+
description: string;
|
|
14
|
+
mimeType: string;
|
|
15
|
+
}[];
|
|
16
|
+
/**
|
|
17
|
+
* Resource templates for dynamic resources
|
|
18
|
+
*/
|
|
19
|
+
export declare const resourceTemplates: {
|
|
20
|
+
uriTemplate: string;
|
|
21
|
+
name: string;
|
|
22
|
+
description: string;
|
|
23
|
+
mimeType: string;
|
|
24
|
+
}[];
|
|
25
|
+
/**
|
|
26
|
+
* Read a resource by URI
|
|
27
|
+
*/
|
|
28
|
+
export declare function readResource(client: ReauditAPIClient, uri: string): Promise<{
|
|
29
|
+
contents: Array<{
|
|
30
|
+
uri: string;
|
|
31
|
+
mimeType: string;
|
|
32
|
+
text: string;
|
|
33
|
+
}>;
|
|
34
|
+
}>;
|
|
35
|
+
/**
|
|
36
|
+
* List available resources
|
|
37
|
+
*/
|
|
38
|
+
export declare function listResources(): Array<{
|
|
39
|
+
uri: string;
|
|
40
|
+
name: string;
|
|
41
|
+
description: string;
|
|
42
|
+
mimeType: string;
|
|
43
|
+
}>;
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;GAaxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;GAmB7B,CAAC;AAEF;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAsE/E;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,KAAK,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAED"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* MCP Resources
|
|
4
|
+
*
|
|
5
|
+
* Read-only data resources accessible via reaudit:// URIs.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.resourceTemplates = exports.mcpResources = void 0;
|
|
9
|
+
exports.readResource = readResource;
|
|
10
|
+
exports.listResources = listResources;
|
|
11
|
+
/**
|
|
12
|
+
* Resource definitions for MCP
|
|
13
|
+
*/
|
|
14
|
+
exports.mcpResources = [
|
|
15
|
+
{
|
|
16
|
+
uri: 'reaudit://projects',
|
|
17
|
+
name: 'Projects List',
|
|
18
|
+
description: 'List of all your Reaudit projects',
|
|
19
|
+
mimeType: 'application/json',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
uri: 'reaudit://account',
|
|
23
|
+
name: 'Account Information',
|
|
24
|
+
description: 'Your account details and usage summary',
|
|
25
|
+
mimeType: 'application/json',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
/**
|
|
29
|
+
* Resource templates for dynamic resources
|
|
30
|
+
*/
|
|
31
|
+
exports.resourceTemplates = [
|
|
32
|
+
{
|
|
33
|
+
uriTemplate: 'reaudit://projects/{projectId}/visibility',
|
|
34
|
+
name: 'Project Visibility',
|
|
35
|
+
description: 'AI visibility score and metrics for a project',
|
|
36
|
+
mimeType: 'application/json',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
uriTemplate: 'reaudit://projects/{projectId}/mentions',
|
|
40
|
+
name: 'Brand Mentions',
|
|
41
|
+
description: 'Recent brand mentions across AI platforms',
|
|
42
|
+
mimeType: 'application/json',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
uriTemplate: 'reaudit://audits/{auditId}',
|
|
46
|
+
name: 'Audit Details',
|
|
47
|
+
description: 'Detailed SEO audit results',
|
|
48
|
+
mimeType: 'application/json',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
/**
|
|
52
|
+
* Read a resource by URI
|
|
53
|
+
*/
|
|
54
|
+
async function readResource(client, uri) {
|
|
55
|
+
// Parse the URI
|
|
56
|
+
const url = new URL(uri);
|
|
57
|
+
const path = url.pathname;
|
|
58
|
+
// Route to appropriate handler
|
|
59
|
+
if (uri === 'reaudit://projects') {
|
|
60
|
+
const data = await client.listProjects();
|
|
61
|
+
return {
|
|
62
|
+
contents: [{
|
|
63
|
+
uri,
|
|
64
|
+
mimeType: 'application/json',
|
|
65
|
+
text: JSON.stringify(data, null, 2),
|
|
66
|
+
}],
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
if (uri === 'reaudit://account') {
|
|
70
|
+
const data = await client.getAccount();
|
|
71
|
+
return {
|
|
72
|
+
contents: [{
|
|
73
|
+
uri,
|
|
74
|
+
mimeType: 'application/json',
|
|
75
|
+
text: JSON.stringify(data, null, 2),
|
|
76
|
+
}],
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
// Handle project-specific resources
|
|
80
|
+
const projectVisibilityMatch = path.match(/^\/\/projects\/([^/]+)\/visibility$/);
|
|
81
|
+
if (projectVisibilityMatch) {
|
|
82
|
+
const projectId = projectVisibilityMatch[1];
|
|
83
|
+
const data = await client.getVisibilityScore(projectId);
|
|
84
|
+
return {
|
|
85
|
+
contents: [{
|
|
86
|
+
uri,
|
|
87
|
+
mimeType: 'application/json',
|
|
88
|
+
text: JSON.stringify(data, null, 2),
|
|
89
|
+
}],
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
const projectMentionsMatch = path.match(/^\/\/projects\/([^/]+)\/mentions$/);
|
|
93
|
+
if (projectMentionsMatch) {
|
|
94
|
+
const projectId = projectMentionsMatch[1];
|
|
95
|
+
const data = await client.getBrandMentions(projectId);
|
|
96
|
+
return {
|
|
97
|
+
contents: [{
|
|
98
|
+
uri,
|
|
99
|
+
mimeType: 'application/json',
|
|
100
|
+
text: JSON.stringify(data, null, 2),
|
|
101
|
+
}],
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
// Handle audit resources
|
|
105
|
+
const auditMatch = path.match(/^\/\/audits\/([^/]+)$/);
|
|
106
|
+
if (auditMatch) {
|
|
107
|
+
const auditId = auditMatch[1];
|
|
108
|
+
const data = await client.getAuditDetails(auditId);
|
|
109
|
+
return {
|
|
110
|
+
contents: [{
|
|
111
|
+
uri,
|
|
112
|
+
mimeType: 'application/json',
|
|
113
|
+
text: JSON.stringify(data, null, 2),
|
|
114
|
+
}],
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
throw new Error(`Resource not found: ${uri}`);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* List available resources
|
|
121
|
+
*/
|
|
122
|
+
function listResources() {
|
|
123
|
+
return exports.mcpResources;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Account Tools
|
|
3
|
+
*
|
|
4
|
+
* MCP tools for account information and usage tracking.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
import { ReauditAPIClient } from '../lib/api-client.js';
|
|
8
|
+
export declare const getUsageSummarySchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
9
|
+
/**
|
|
10
|
+
* Get usage summary tool handler
|
|
11
|
+
*/
|
|
12
|
+
export declare function getUsageSummary(client: ReauditAPIClient, _args: z.infer<typeof getUsageSummarySchema>): Promise<string>;
|
|
13
|
+
/**
|
|
14
|
+
* Tool definitions for MCP
|
|
15
|
+
*/
|
|
16
|
+
export declare const accountTools: {
|
|
17
|
+
name: string;
|
|
18
|
+
description: string;
|
|
19
|
+
inputSchema: {
|
|
20
|
+
type: "object";
|
|
21
|
+
properties: {};
|
|
22
|
+
required: string[];
|
|
23
|
+
};
|
|
24
|
+
}[];
|
|
25
|
+
//# sourceMappingURL=account.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/tools/account.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,eAAO,MAAM,qBAAqB,gDAAe,CAAC;AAElD;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,GAC3C,OAAO,CAAC,MAAM,CAAC,CAyCjB;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;kBAOH,MAAM,EAAE;;GAG7B,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Account Tools
|
|
4
|
+
*
|
|
5
|
+
* MCP tools for account information and usage tracking.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.accountTools = exports.getUsageSummarySchema = void 0;
|
|
9
|
+
exports.getUsageSummary = getUsageSummary;
|
|
10
|
+
const zod_1 = require("zod");
|
|
11
|
+
// Tool schemas
|
|
12
|
+
exports.getUsageSummarySchema = zod_1.z.object({});
|
|
13
|
+
/**
|
|
14
|
+
* Get usage summary tool handler
|
|
15
|
+
*/
|
|
16
|
+
async function getUsageSummary(client, _args) {
|
|
17
|
+
const account = await client.getAccount();
|
|
18
|
+
let response = `## Account: ${account.user.email}\n\n`;
|
|
19
|
+
response += `**Subscription:** ${account.subscription.tier} (${account.subscription.status})\n\n`;
|
|
20
|
+
response += `### Usage Summary\n\n`;
|
|
21
|
+
// Prompts
|
|
22
|
+
const prompts = account.usage.prompts;
|
|
23
|
+
if (prompts.unlimited) {
|
|
24
|
+
response += `- **Prompts:** ${prompts.used} used (unlimited)\n`;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
response += `- **Prompts:** ${prompts.used}/${prompts.limit} used today\n`;
|
|
28
|
+
}
|
|
29
|
+
// Content
|
|
30
|
+
const content = account.usage.content;
|
|
31
|
+
if (content.unlimited) {
|
|
32
|
+
response += `- **Content:** ${content.used} created (unlimited)\n`;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
response += `- **Content:** ${content.used}/${content.limit} this week\n`;
|
|
36
|
+
}
|
|
37
|
+
// Images
|
|
38
|
+
const images = account.usage.images;
|
|
39
|
+
if (images.unlimited) {
|
|
40
|
+
response += `- **Images:** ${images.used} generated (unlimited)\n`;
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
response += `- **Images:** ${images.used}/${images.limit} this week\n`;
|
|
44
|
+
}
|
|
45
|
+
// Audits
|
|
46
|
+
const audits = account.usage.audits;
|
|
47
|
+
if (audits.unlimited) {
|
|
48
|
+
response += `- **Audits:** ${audits.used} run (unlimited)\n`;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
response += `- **Audits:** ${audits.used}/${audits.limit} this month\n`;
|
|
52
|
+
}
|
|
53
|
+
return response;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Tool definitions for MCP
|
|
57
|
+
*/
|
|
58
|
+
exports.accountTools = [
|
|
59
|
+
{
|
|
60
|
+
name: 'get_usage_summary',
|
|
61
|
+
description: 'Get your current usage summary including prompts, content, images, and audits used vs limits.',
|
|
62
|
+
inputSchema: {
|
|
63
|
+
type: 'object',
|
|
64
|
+
properties: {},
|
|
65
|
+
required: [],
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
//# sourceMappingURL=account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/tools/account.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAWH,0CA4CC;AArDD,6BAAwB;AAGxB,eAAe;AACF,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAElD;;GAEG;AACI,KAAK,UAAU,eAAe,CACnC,MAAwB,EACxB,KAA4C;IAE5C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAE1C,IAAI,QAAQ,GAAG,eAAe,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;IACvD,QAAQ,IAAI,qBAAqB,OAAO,CAAC,YAAY,CAAC,IAAI,KAAK,OAAO,CAAC,YAAY,CAAC,MAAM,OAAO,CAAC;IAElG,QAAQ,IAAI,uBAAuB,CAAC;IAEpC,UAAU;IACV,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IACtC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,QAAQ,IAAI,kBAAkB,OAAO,CAAC,IAAI,qBAAqB,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,QAAQ,IAAI,kBAAkB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,eAAe,CAAC;IAC7E,CAAC;IAED,UAAU;IACV,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IACtC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,QAAQ,IAAI,kBAAkB,OAAO,CAAC,IAAI,wBAAwB,CAAC;IACrE,CAAC;SAAM,CAAC;QACN,QAAQ,IAAI,kBAAkB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,cAAc,CAAC;IAC5E,CAAC;IAED,SAAS;IACT,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;IACpC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,QAAQ,IAAI,iBAAiB,MAAM,CAAC,IAAI,0BAA0B,CAAC;IACrE,CAAC;SAAM,CAAC;QACN,QAAQ,IAAI,iBAAiB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,cAAc,CAAC;IACzE,CAAC;IAED,SAAS;IACT,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;IACpC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,QAAQ,IAAI,iBAAiB,MAAM,CAAC,IAAI,oBAAoB,CAAC;IAC/D,CAAC;SAAM,CAAC;QACN,QAAQ,IAAI,iBAAiB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,eAAe,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACU,QAAA,YAAY,GAAG;IAC1B;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,+FAA+F;QAC5G,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAc;SACzB;KACF;CACF,CAAC"}
|