@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.
Files changed (119) hide show
  1. package/LICENSE +33 -0
  2. package/README.md +399 -0
  3. package/dist/auth/oauth-client.d.ts +43 -0
  4. package/dist/auth/oauth-client.d.ts.map +1 -0
  5. package/dist/auth/oauth-client.js +340 -0
  6. package/dist/auth/oauth-client.js.map +1 -0
  7. package/dist/auth/token-store.d.ts +41 -0
  8. package/dist/auth/token-store.d.ts.map +1 -0
  9. package/dist/auth/token-store.js +176 -0
  10. package/dist/auth/token-store.js.map +1 -0
  11. package/dist/index.d.ts +11 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +480 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/lib/api-client.d.ts +970 -0
  16. package/dist/lib/api-client.d.ts.map +1 -0
  17. package/dist/lib/api-client.js +441 -0
  18. package/dist/lib/api-client.js.map +1 -0
  19. package/dist/lib/confirmation.d.ts +92 -0
  20. package/dist/lib/confirmation.d.ts.map +1 -0
  21. package/dist/lib/confirmation.js +224 -0
  22. package/dist/lib/confirmation.js.map +1 -0
  23. package/dist/lib/error-handler.d.ts +57 -0
  24. package/dist/lib/error-handler.d.ts.map +1 -0
  25. package/dist/lib/error-handler.js +235 -0
  26. package/dist/lib/error-handler.js.map +1 -0
  27. package/dist/lib/offline-mode.d.ts +107 -0
  28. package/dist/lib/offline-mode.d.ts.map +1 -0
  29. package/dist/lib/offline-mode.js +356 -0
  30. package/dist/lib/offline-mode.js.map +1 -0
  31. package/dist/lib/progress-tracker.d.ts +87 -0
  32. package/dist/lib/progress-tracker.d.ts.map +1 -0
  33. package/dist/lib/progress-tracker.js +238 -0
  34. package/dist/lib/progress-tracker.js.map +1 -0
  35. package/dist/prompts/index.d.ts +24 -0
  36. package/dist/prompts/index.d.ts.map +1 -0
  37. package/dist/prompts/index.js +305 -0
  38. package/dist/prompts/index.js.map +1 -0
  39. package/dist/resources/index.d.ts +44 -0
  40. package/dist/resources/index.d.ts.map +1 -0
  41. package/dist/resources/index.js +125 -0
  42. package/dist/resources/index.js.map +1 -0
  43. package/dist/tools/account.d.ts +25 -0
  44. package/dist/tools/account.d.ts.map +1 -0
  45. package/dist/tools/account.js +69 -0
  46. package/dist/tools/account.js.map +1 -0
  47. package/dist/tools/action-grids.d.ts +414 -0
  48. package/dist/tools/action-grids.d.ts.map +1 -0
  49. package/dist/tools/action-grids.js +271 -0
  50. package/dist/tools/action-grids.js.map +1 -0
  51. package/dist/tools/analytics-query.d.ts +126 -0
  52. package/dist/tools/analytics-query.d.ts.map +1 -0
  53. package/dist/tools/analytics-query.js +106 -0
  54. package/dist/tools/analytics-query.js.map +1 -0
  55. package/dist/tools/analytics.d.ts +57 -0
  56. package/dist/tools/analytics.d.ts.map +1 -0
  57. package/dist/tools/analytics.js +122 -0
  58. package/dist/tools/analytics.js.map +1 -0
  59. package/dist/tools/audits.d.ts +123 -0
  60. package/dist/tools/audits.d.ts.map +1 -0
  61. package/dist/tools/audits.js +226 -0
  62. package/dist/tools/audits.js.map +1 -0
  63. package/dist/tools/calendar.d.ts +57 -0
  64. package/dist/tools/calendar.d.ts.map +1 -0
  65. package/dist/tools/calendar.js +109 -0
  66. package/dist/tools/calendar.js.map +1 -0
  67. package/dist/tools/content-generation.d.ts +211 -0
  68. package/dist/tools/content-generation.d.ts.map +1 -0
  69. package/dist/tools/content-generation.js +363 -0
  70. package/dist/tools/content-generation.js.map +1 -0
  71. package/dist/tools/content.d.ts +92 -0
  72. package/dist/tools/content.d.ts.map +1 -0
  73. package/dist/tools/content.js +130 -0
  74. package/dist/tools/content.js.map +1 -0
  75. package/dist/tools/indexing.d.ts +132 -0
  76. package/dist/tools/indexing.d.ts.map +1 -0
  77. package/dist/tools/indexing.js +190 -0
  78. package/dist/tools/indexing.js.map +1 -0
  79. package/dist/tools/optimization.d.ts +70 -0
  80. package/dist/tools/optimization.d.ts.map +1 -0
  81. package/dist/tools/optimization.js +106 -0
  82. package/dist/tools/optimization.js.map +1 -0
  83. package/dist/tools/projects.d.ts +67 -0
  84. package/dist/tools/projects.d.ts.map +1 -0
  85. package/dist/tools/projects.js +113 -0
  86. package/dist/tools/projects.js.map +1 -0
  87. package/dist/tools/prompts.d.ts +306 -0
  88. package/dist/tools/prompts.d.ts.map +1 -0
  89. package/dist/tools/prompts.js +378 -0
  90. package/dist/tools/prompts.js.map +1 -0
  91. package/dist/tools/publishing.d.ts +135 -0
  92. package/dist/tools/publishing.d.ts.map +1 -0
  93. package/dist/tools/publishing.js +209 -0
  94. package/dist/tools/publishing.js.map +1 -0
  95. package/dist/tools/reports.d.ts +252 -0
  96. package/dist/tools/reports.d.ts.map +1 -0
  97. package/dist/tools/reports.js +183 -0
  98. package/dist/tools/reports.js.map +1 -0
  99. package/dist/tools/social.d.ts +224 -0
  100. package/dist/tools/social.d.ts.map +1 -0
  101. package/dist/tools/social.js +291 -0
  102. package/dist/tools/social.js.map +1 -0
  103. package/dist/tools/sources.d.ts +221 -0
  104. package/dist/tools/sources.d.ts.map +1 -0
  105. package/dist/tools/sources.js +308 -0
  106. package/dist/tools/sources.js.map +1 -0
  107. package/dist/tools/strategy.d.ts +345 -0
  108. package/dist/tools/strategy.d.ts.map +1 -0
  109. package/dist/tools/strategy.js +392 -0
  110. package/dist/tools/strategy.js.map +1 -0
  111. package/dist/tools/usage.d.ts +101 -0
  112. package/dist/tools/usage.d.ts.map +1 -0
  113. package/dist/tools/usage.js +184 -0
  114. package/dist/tools/usage.js.map +1 -0
  115. package/dist/tools/visibility.d.ts +95 -0
  116. package/dist/tools/visibility.d.ts.map +1 -0
  117. package/dist/tools/visibility.js +163 -0
  118. package/dist/tools/visibility.js.map +1 -0
  119. package/package.json +54 -0
package/LICENSE ADDED
@@ -0,0 +1,33 @@
1
+ Reaudit Proprietary License
2
+
3
+ Copyright (c) 2026 Reaudit. All rights reserved.
4
+
5
+ This software and associated documentation files (the "Software") are the
6
+ proprietary property of Reaudit. The Software is licensed, not sold.
7
+
8
+ Permission is hereby granted to any person who has an active Reaudit
9
+ subscription to use the Software solely for the purpose of accessing
10
+ the Reaudit platform through MCP-compatible AI assistants.
11
+
12
+ The following restrictions apply:
13
+
14
+ 1. You may NOT copy, modify, merge, publish, distribute, sublicense,
15
+ or sell copies of the Software.
16
+
17
+ 2. You may NOT reverse engineer, decompile, or disassemble the Software,
18
+ except to the extent that such activity is expressly permitted by
19
+ applicable law.
20
+
21
+ 3. You may NOT use the Software to build a competing product or service.
22
+
23
+ 4. You may NOT remove or alter any proprietary notices, labels, or marks
24
+ on the Software.
25
+
26
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
27
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
28
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
29
+ REAUDIT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
30
+ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
31
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32
+
33
+ For licensing inquiries, contact: support@reaudit.io
package/README.md ADDED
@@ -0,0 +1,399 @@
1
+ # Reaudit MCP Server
2
+
3
+ Access your Reaudit AI Visibility Platform data from AI assistants like Claude Desktop, Cursor, and other MCP-compatible clients.
4
+
5
+ ## What is MCP?
6
+
7
+ The [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) is an open protocol that allows AI assistants to securely access external data sources and tools. With the Reaudit MCP server, you can ask your AI assistant questions about your AI visibility, SEO audits, and more.
8
+
9
+ ## Installation
10
+
11
+ ### Prerequisites
12
+
13
+ - Node.js 18 or later
14
+ - An active Reaudit subscription
15
+ - Claude Desktop, Cursor, or another MCP-compatible client
16
+
17
+ ### Quick Start
18
+
19
+ 1. **Install the package globally:**
20
+
21
+ ```bash
22
+ npm install -g @reaudit/mcp-server
23
+ ```
24
+
25
+ 2. **Configure your MCP client** (see below for specific instructions)
26
+
27
+ 3. **Authenticate** - On first use, a browser window will open for you to log in to your Reaudit account
28
+
29
+ ## Configuration
30
+
31
+ ### Claude Desktop
32
+
33
+ Add the following to your Claude Desktop configuration file:
34
+
35
+ **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
36
+ **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
37
+
38
+ ```json
39
+ {
40
+ "mcpServers": {
41
+ "reaudit": {
42
+ "command": "npx",
43
+ "args": ["@reaudit/mcp-server"],
44
+ "env": {
45
+ "REAUDIT_BASE_URL": "https://reaudit.io"
46
+ }
47
+ }
48
+ }
49
+ }
50
+ ```
51
+
52
+ ### Cursor
53
+
54
+ Add the following to your Cursor MCP settings:
55
+
56
+ **macOS:** `~/.cursor/mcp.json`
57
+ **Windows:** `%USERPROFILE%\.cursor\mcp.json`
58
+
59
+ ```json
60
+ {
61
+ "mcpServers": {
62
+ "reaudit": {
63
+ "command": "npx",
64
+ "args": ["@reaudit/mcp-server"],
65
+ "env": {
66
+ "REAUDIT_BASE_URL": "https://reaudit.io"
67
+ }
68
+ }
69
+ }
70
+ }
71
+ ```
72
+
73
+ ### Other MCP Clients
74
+
75
+ Use these settings:
76
+ - **Command:** `npx`
77
+ - **Arguments:** `["@reaudit/mcp-server"]`
78
+ - **Environment:** `REAUDIT_BASE_URL=https://reaudit.io`
79
+
80
+ ## Authentication
81
+
82
+ The first time you use the MCP server, it will:
83
+
84
+ 1. Open your default browser to the Reaudit login page
85
+ 2. Ask you to authorize the MCP server to access your account
86
+ 3. Store the authentication tokens securely on your machine
87
+
88
+ Tokens are stored in `~/.reaudit/credentials.json` and are automatically refreshed when needed.
89
+
90
+ ### Revoking Access
91
+
92
+ You can revoke the MCP server's access at any time:
93
+
94
+ 1. Go to [Reaudit Settings](https://reaudit.io/settings)
95
+ 2. Find "Connected Apps"
96
+ 3. Click "Revoke" next to "Reaudit MCP Server"
97
+
98
+ ## Available Tools (61 total)
99
+
100
+ ### Project Tools
101
+
102
+ | Tool | Description |
103
+ |------|-------------|
104
+ | `list_projects` | List all projects in your Reaudit account |
105
+ | `set_active_project` | Set the active project context for subsequent commands |
106
+ | `get_active_project` | Get the currently active project |
107
+
108
+ ### Account Tools
109
+
110
+ | Tool | Description |
111
+ |------|-------------|
112
+ | `get_usage_summary` | Get your current usage vs limits for prompts, content, images, and audits |
113
+
114
+ ### AI Visibility Tools
115
+
116
+ | Tool | Description |
117
+ |------|-------------|
118
+ | `get_visibility_score` | Get the AI visibility score for a project with metrics breakdown |
119
+ | `get_brand_mentions` | Get recent brand mentions across AI platforms (ChatGPT, Claude, Perplexity, etc.) |
120
+ | `get_competitor_comparison` | Compare your AI visibility with competitors |
121
+
122
+ ### SEO Audit Tools
123
+
124
+ | Tool | Description |
125
+ |------|-------------|
126
+ | `list_audits` | List SEO audits with status and scores |
127
+ | `get_audit_details` | Get detailed audit results including scores, recommendations, and technical issues |
128
+ | `get_audit_recommendations` | Get prioritized SEO recommendations grouped by impact level |
129
+
130
+ ### Content Tools
131
+
132
+ | Tool | Description |
133
+ |------|-------------|
134
+ | `search_knowledge_base` | Search your project knowledge base for relevant content |
135
+ | `get_content_suggestions` | Get AI-generated content suggestions based on SEO analysis |
136
+
137
+ ### Content Generation Tools
138
+
139
+ | Tool | Description |
140
+ |------|-------------|
141
+ | `generate_content` | Generate AI-powered content (blog posts, social media, newsletters, video scripts, etc.) using project knowledge base for context |
142
+ | `get_content_history` | Get your content generation history, filterable by project or content type |
143
+ | `get_content_details` | Get full details of a generated content piece including complete content and SEO data |
144
+
145
+ ### Analytics Tools
146
+
147
+ | Tool | Description |
148
+ |------|-------------|
149
+ | `get_citation_analytics` | Get citation trends, top cited domains, and platform breakdown |
150
+ | `get_wordpress_analytics` | Get WordPress AI bot tracking data showing which crawlers visit your site |
151
+
152
+ ### Analytics Query Tools
153
+
154
+ | Tool | Description |
155
+ |------|-------------|
156
+ | `query_analytics` | Execute a flexible analytics query with custom metrics, dimensions, filters, and time grains for building custom reports |
157
+
158
+ ### Usage & Budget Tools
159
+
160
+ | Tool | Description |
161
+ |------|-------------|
162
+ | `get_token_usage` | Get a summary of your LLM token usage and costs |
163
+ | `get_budget_status` | Get your current budget limits and usage status |
164
+ | `set_budget_limits` | Set monthly budget limits for token usage and costs |
165
+
166
+ ### Calendar Tools
167
+
168
+ | Tool | Description |
169
+ |------|-------------|
170
+ | `get_content_calendar` | Get your content calendar showing scheduled, planned, and published content across all platforms |
171
+
172
+ ### Strategy Tools
173
+
174
+ | Tool | Description |
175
+ |------|-------------|
176
+ | `list_strategies` | List all GTM (Go-To-Market) strategies, filterable by project or status |
177
+ | `get_strategy_details` | Get detailed information about a strategy including module progress and outputs |
178
+ | `create_strategy` | Create a new GTM strategy session with business context |
179
+ | `get_strategy_content_items` | Get content items from a strategy's 90-day content calendar |
180
+ | `update_content_item_status` | Update a content item's status, notes, topic, platform, or planned date |
181
+
182
+ ### Sources & Outreach Tools
183
+
184
+ | Tool | Description |
185
+ |------|-------------|
186
+ | `get_citation_sources` | Get citation sources showing which URLs are cited by AI models and their frequency |
187
+ | `extract_author_info` | Extract author information from a URL (name, email, bio, social links) for outreach |
188
+ | `list_outreach_opportunities` | List outreach opportunities for link building or content collaboration |
189
+ | `create_outreach_opportunity` | Create a new outreach opportunity to track potential contacts |
190
+
191
+ ### Indexing Tools
192
+
193
+ | Tool | Description |
194
+ |------|-------------|
195
+ | `list_indexing_connections` | List website indexing connections (IndexNow and Google Search Console) |
196
+ | `create_indexing_connection` | Create a new indexing connection for sitemap monitoring and instant indexing |
197
+ | `sync_indexing_connection` | Trigger a sitemap sync to submit new/updated URLs to search engines |
198
+
199
+ ### Social Media Tools
200
+
201
+ | Tool | Description |
202
+ |------|-------------|
203
+ | `list_social_connections` | List connected social media accounts (X/Twitter, LinkedIn) with publishing stats |
204
+ | `list_social_posts` | List social media posts filtered by platform, status, or project |
205
+ | `generate_social_posts` | Generate social media posts from existing content for X/Twitter and LinkedIn |
206
+ | `publish_social_post` | Publish a draft social media post immediately |
207
+ | `schedule_social_post` | Schedule a social media post for later publication |
208
+
209
+ ### Publishing Tools
210
+
211
+ | Tool | Description |
212
+ |------|-------------|
213
+ | `list_wordpress_connections` | List connected WordPress sites for publishing |
214
+ | `publish_to_wordpress` | Publish content to WordPress with schema markup for AI search visibility |
215
+ | `list_react_connections` | List React/webhook connections for headless CMS publishing |
216
+ | `publish_to_react` | Publish content via webhook to a React/Next.js site |
217
+
218
+ ### Optimization Tools
219
+
220
+ | Tool | Description |
221
+ |------|-------------|
222
+ | `generate_llms_txt` | Generate an AI-optimized llms.txt file to help AI assistants understand your business |
223
+ | `translate_content` | Translate generated content to another language, creating a new content entry |
224
+
225
+ ### Prompt Tracking Tools
226
+
227
+ | Tool | Description |
228
+ |------|-------------|
229
+ | `list_prompt_topics` | List prompt topics for tracking brand visibility in AI responses |
230
+ | `create_prompt_topic` | Create a new prompt topic with initial prompts for organized tracking |
231
+ | `add_prompts_to_topic` | Add new prompts to an existing topic |
232
+ | `track_prompt` | Submit a prompt for AI tracking across ChatGPT, Perplexity, and Google |
233
+ | `get_prompt_analytics` | Get analytics for tracked prompts including mentions, sentiment, and visibility rates |
234
+ | `generate_prompt_suggestions` | Use AI to generate prompt suggestions based on your project context |
235
+
236
+ ### Saved Reports Tools
237
+
238
+ | Tool | Description |
239
+ |------|-------------|
240
+ | `list_reports` | List saved analytics reports with reusable query configurations |
241
+ | `create_report` | Create a saved report with custom metrics, dimensions, filters, and visualizations |
242
+ | `get_report` | Get details of a saved analytics report |
243
+ | `delete_report` | Delete a saved analytics report |
244
+
245
+ ### Action Grid Tools
246
+
247
+ | Tool | Description |
248
+ |------|-------------|
249
+ | `list_action_grids` | List optimization task boards for a project |
250
+ | `create_action_grid` | Create a task board with categorized items for SEO, content, or any workflow |
251
+ | `get_action_grid` | Get an action grid with all items grouped by category with progress tracking |
252
+ | `delete_action_grid` | Delete an action grid |
253
+ | `add_grid_items` | Add new items to an existing action grid |
254
+ | `update_grid_item` | Update status, priority, assignee, or notes of an action grid item |
255
+
256
+ ## Available Prompts (5 templates)
257
+
258
+ Pre-built prompt templates for common workflows:
259
+
260
+ | Prompt | Description |
261
+ |--------|-------------|
262
+ | `weekly_visibility_report` | Generate a weekly AI visibility report with analysis |
263
+ | `seo_action_plan` | Create an actionable SEO improvement plan from audit results |
264
+ | `content_strategy` | Develop a content strategy based on knowledge base and SEO data |
265
+ | `competitor_analysis` | Analyze competitor visibility with strategic recommendations |
266
+ | `bot_activity_summary` | Summarize AI bot crawling activity with insights |
267
+
268
+ ## Available Resources
269
+
270
+ Read-only data accessible via `reaudit://` URIs:
271
+
272
+ | URI | Description |
273
+ |-----|-------------|
274
+ | `reaudit://projects` | List of all your projects |
275
+ | `reaudit://account` | Account details and usage summary |
276
+ | `reaudit://projects/{id}/visibility` | Visibility metrics for a project |
277
+ | `reaudit://projects/{id}/mentions` | Brand mentions for a project |
278
+ | `reaudit://audits/{id}` | Detailed audit results |
279
+
280
+ ## Example Conversations
281
+
282
+ ### Set active project and check visibility
283
+ > **You:** List my projects and set the main one as active
284
+ >
285
+ > **Assistant:** Found 3 projects. Setting "My Brand" as active.
286
+ >
287
+ > **You:** What's my visibility score?
288
+ >
289
+ > **Assistant:** Your AI Visibility Score is 72/100.
290
+ > - Total Mentions: 45 in the last 30 days
291
+ > - Citation Rate: 38%
292
+ > - Average Sentiment: 78/100
293
+
294
+ ### Get SEO recommendations
295
+ > **You:** What are the critical SEO issues I need to fix?
296
+ >
297
+ > **Assistant:** Here are the critical recommendations from your latest audit:
298
+ >
299
+ > 1. **Missing meta descriptions** (Technical)
300
+ > Impact: High | Effort: Quick
301
+ >
302
+ > 2. **Slow page load time** (Performance)
303
+ > Impact: Critical | Effort: Moderate
304
+
305
+ ### Generate content and publish to WordPress
306
+ > **You:** Generate a blog post about AI visibility best practices, then publish it to my WordPress site
307
+ >
308
+ > **Assistant:** I'll generate the content using your knowledge base for context, then publish it.
309
+ >
310
+ > [Generates content with schema markup, internal linking, and SEO optimization]
311
+ >
312
+ > Content published to WordPress! Post URL: https://yourblog.com/ai-visibility-best-practices
313
+
314
+ ### Track prompts for brand visibility
315
+ > **You:** Create a prompt topic for "product comparison" and add some prompts to track
316
+ >
317
+ > **Assistant:** Created topic "Product Comparison" with 3 prompts. I can now track these across ChatGPT, Perplexity, and Google to see how your brand is mentioned.
318
+ >
319
+ > **You:** Show me the analytics for my tracked prompts
320
+ >
321
+ > **Assistant:** Over the last 30 days:
322
+ > - 42 prompts tracked across 3 platforms
323
+ > - Brand mentioned in 68% of responses
324
+ > - Average sentiment: 82/100
325
+ > - Best performing platform: Perplexity (78% mention rate)
326
+
327
+ ### Create a social media campaign
328
+ > **You:** Generate social media posts from my latest blog article
329
+ >
330
+ > **Assistant:** Generated 4 draft posts:
331
+ > - 2 for X/Twitter (short-form with hashtags)
332
+ > - 2 for LinkedIn (professional long-form)
333
+ >
334
+ > **You:** Publish the first Twitter post and schedule the LinkedIn one for tomorrow
335
+ >
336
+ > **Assistant:** Done! Twitter post published. LinkedIn post scheduled for tomorrow at 9:00 AM.
337
+
338
+ ### Build a custom analytics report
339
+ > **You:** Create a weekly visibility report showing mentions and sentiment by platform
340
+ >
341
+ > **Assistant:** Created saved report "Weekly Visibility by Platform" with:
342
+ > - Metrics: mentions, sentiment
343
+ > - Dimensions: platform, week
344
+ > - Visualization: line chart
345
+ >
346
+ > You can run this report anytime with `get_report`.
347
+
348
+ ### Search your knowledge base
349
+ > **You:** What do we say about pricing on our website?
350
+ >
351
+ > **Assistant:** Found 3 relevant sections about pricing from your knowledge base...
352
+
353
+ ## Troubleshooting
354
+
355
+ ### "Authentication required" error
356
+
357
+ The MCP server needs to authenticate with your Reaudit account. Make sure:
358
+ 1. You have an active Reaudit subscription
359
+ 2. A browser window opened for authentication
360
+ 3. You completed the login process
361
+
362
+ ### "Token expired" error
363
+
364
+ Your authentication token has expired. The server will automatically try to refresh it. If that fails:
365
+
366
+ 1. Delete `~/.reaudit/credentials.json`
367
+ 2. Restart your MCP client
368
+ 3. Complete the authentication flow again
369
+
370
+ ### Browser doesn't open
371
+
372
+ If the browser doesn't open automatically, check the terminal output for a URL you can copy and paste.
373
+
374
+ ### Connection errors
375
+
376
+ Make sure you can reach `https://reaudit.io` from your network.
377
+
378
+ ## Environment Variables
379
+
380
+ | Variable | Default | Description |
381
+ |----------|---------|-------------|
382
+ | `REAUDIT_BASE_URL` | `https://reaudit.io` | Reaudit API base URL |
383
+
384
+ ## Security
385
+
386
+ - OAuth 2.0 with PKCE for secure authentication
387
+ - Tokens stored locally with encryption
388
+ - Refresh tokens automatically rotated
389
+ - You can revoke access at any time from Reaudit settings
390
+
391
+ ## Support
392
+
393
+ - **Documentation:** https://reaudit.io/docs/mcp
394
+ - **Issues:** https://github.com/RoseSamaras/reaudit-mcp-server/issues
395
+ - **Email:** support@reaudit.io
396
+
397
+ ## License
398
+
399
+ Proprietary - see [LICENSE](LICENSE) for details.
@@ -0,0 +1,43 @@
1
+ /**
2
+ * OAuth Client
3
+ *
4
+ * Handles the OAuth 2.0 authorization code flow with PKCE
5
+ * for authenticating with the Reaudit API.
6
+ */
7
+ /**
8
+ * OAuth Client class
9
+ */
10
+ export declare class OAuthClient {
11
+ private baseUrl;
12
+ private tokenStore;
13
+ constructor(baseUrl: string);
14
+ /**
15
+ * Get a valid access token, refreshing if necessary
16
+ */
17
+ getAccessToken(): Promise<string>;
18
+ /**
19
+ * Start the OAuth flow
20
+ */
21
+ authenticate(): Promise<string>;
22
+ /**
23
+ * Exchange authorization code for tokens
24
+ */
25
+ private exchangeCode;
26
+ /**
27
+ * Refresh access token
28
+ */
29
+ private refreshToken;
30
+ /**
31
+ * Revoke tokens and clear local storage
32
+ */
33
+ logout(): Promise<void>;
34
+ /**
35
+ * Check if user is authenticated
36
+ */
37
+ isAuthenticated(): boolean;
38
+ /**
39
+ * Generate branded error page HTML
40
+ */
41
+ private getErrorPage;
42
+ }
43
+ //# sourceMappingURL=oauth-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-client.d.ts","sourceRoot":"","sources":["../../src/auth/oauth-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkEH;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAa;gBAEnB,OAAO,EAAE,MAAM;IAK3B;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAwBvC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAqHrC;;OAEG;YACW,YAAY;IAgB1B;;OAEG;YACW,YAAY;IAsB1B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB7B;;OAEG;IACH,eAAe,IAAI,OAAO;IAK1B;;OAEG;IACH,OAAO,CAAC,YAAY;CAgCrB"}