reddit-mcp-buddy 1.1.12 → 1.1.14
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/README.md +48 -22
- package/dist/core/auth.d.ts +1 -0
- package/dist/core/auth.d.ts.map +1 -1
- package/dist/core/auth.js +16 -6
- package/dist/core/auth.js.map +1 -1
- package/dist/mcp-server.d.ts +39 -14
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +112 -36
- package/dist/mcp-server.js.map +1 -1
- package/dist/services/content-processor.d.ts.map +1 -1
- package/dist/services/content-processor.js +5 -2
- package/dist/services/content-processor.js.map +1 -1
- package/dist/services/reddit-api.d.ts +43 -0
- package/dist/services/reddit-api.d.ts.map +1 -1
- package/dist/services/reddit-api.js +272 -17
- package/dist/services/reddit-api.js.map +1 -1
- package/dist/tools/index.d.ts +6 -25
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +136 -36
- package/dist/tools/index.js.map +1 -1
- package/dist/types/reddit.types.d.ts +2 -1
- package/dist/types/reddit.types.d.ts.map +1 -1
- package/package.json +3 -5
package/README.md
CHANGED
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
### Reddit Browser for Claude Desktop and AI Assistants
|
|
4
4
|
|
|
5
|
-
A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that enables Claude Desktop and other AI assistants to browse Reddit, search posts, and analyze user activity. Clean, fast, and actually works - no API keys
|
|
5
|
+
A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that enables Claude Desktop and other AI assistants to browse Reddit, search posts, and analyze user activity. Clean, fast, and actually works - browse subreddits with no API keys; add free Reddit credentials for search, comments, user analysis, and full metrics.
|
|
6
6
|
|
|
7
|
-
[](https://registry.modelcontextprotocol.io/v0/servers/5677b351-373d-4137-bc58-28f1ba0d105d)
|
|
8
7
|
[](https://www.npmjs.com/package/reddit-mcp-buddy)
|
|
9
8
|
[](https://www.npmjs.com/package/reddit-mcp-buddy)
|
|
10
9
|
[](https://github.com/karanb192/reddit-mcp-buddy/stargazers)
|
|
@@ -12,13 +11,17 @@ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that en
|
|
|
12
11
|
|
|
13
12
|
## 🎬 See It In Action
|
|
14
13
|
|
|
14
|
+

|
|
15
|
+
|
|
16
|
+
*Claude checking Reddit's reaction to the Dune Part Three trailer and whether the AirPods Max 2 are worth $549*
|
|
17
|
+
|
|
15
18
|

|
|
16
19
|
|
|
17
20
|
*Claude analyzing real-time sentiment about H-1B visa changes across r/cscareerquestions and r/india*
|
|
18
21
|
|
|
19
22
|
## Table of Contents
|
|
20
23
|
|
|
21
|
-
- [What makes Reddit MCP Buddy different?](#what-makes-reddit-buddy-different)
|
|
24
|
+
- [What makes Reddit MCP Buddy different?](#what-makes-reddit-mcp-buddy-different)
|
|
22
25
|
- [Quick Start](#quick-start-30-seconds)
|
|
23
26
|
- [What can it do?](#what-can-it-do)
|
|
24
27
|
- [Available Tools](#available-tools)
|
|
@@ -36,7 +39,7 @@ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io) server that en
|
|
|
36
39
|
|
|
37
40
|
## What makes Reddit MCP Buddy different?
|
|
38
41
|
|
|
39
|
-
- **🚀 Zero setup** -
|
|
42
|
+
- **🚀 Zero setup** - Browse subreddits instantly, no Reddit API registration needed (search, comments, user analysis, and engagement metrics need free credentials)
|
|
40
43
|
- **⚡ Up to 10x more requests** - Three-tier authentication system (10/60/100 requests per minute)
|
|
41
44
|
- **🎯 Clean data** - No fake "sentiment analysis" or made-up metrics
|
|
42
45
|
- **🧠 LLM-optimized** - Built specifically for AI assistants like Claude
|
|
@@ -99,9 +102,11 @@ Browse posts from any subreddit with sorting options.
|
|
|
99
102
|
- Any specific subreddit (e.g., "technology", "programming", "science")
|
|
100
103
|
- Sort by: hot, new, top, rising, controversial
|
|
101
104
|
- Time range: hour, day, week, month, year, all (for top/controversial sort)
|
|
102
|
-
- Include subreddit info: Optional flag for subreddit metadata
|
|
105
|
+
- Include subreddit info: Optional flag for subreddit metadata (requires credentials)
|
|
103
106
|
```
|
|
104
107
|
|
|
108
|
+
> **No credentials?** Results are served from Reddit's public RSS feed (`data_source: "rss"`): `score`, `num_comments`, `upvote_ratio`, and `nsfw` come back `null`, and the `include_nsfw` filter can't be applied. Add credentials ([Authentication](#authentication-optional)) for full data via the API.
|
|
109
|
+
|
|
105
110
|
### `search_reddit`
|
|
106
111
|
Search across Reddit or specific subreddits.
|
|
107
112
|
```
|
|
@@ -183,12 +188,14 @@ Reddit MCP Buddy supports three authentication levels, each with different rate
|
|
|
183
188
|
|
|
184
189
|
| Mode | Rate Limit | Required Credentials | Best For |
|
|
185
190
|
|------|------------|---------------------|----------|
|
|
186
|
-
| **Anonymous** | 10 req/min | None | Testing, light usage |
|
|
191
|
+
| **Anonymous** | 10 req/min* | None | Testing, light usage |
|
|
187
192
|
| **App-Only** | 60 req/min | Client ID + Secret | Regular browsing |
|
|
188
193
|
| **Authenticated** | 100 req/min | All 4 credentials | Heavy usage, automation |
|
|
189
194
|
|
|
195
|
+
*\*Server-side cap. Anonymous requests are served from Reddit's logged-out RSS feed, which applies its own stricter per-IP throttle (often one uncached request per 25-60 seconds). The 15-minute cache and automatic retries absorb much of this, but sustained anonymous browsing is effectively slower than 10 req/min.*
|
|
196
|
+
|
|
190
197
|
#### How It Works:
|
|
191
|
-
- **Anonymous Mode**: Default mode, no setup required,
|
|
198
|
+
- **Anonymous Mode**: Default mode, no setup required. Only `browse_subreddit` (plus the offline `reddit_explain`) works: Reddit blocks the logged-out JSON API, so browse results come from Reddit's public RSS feed (`data_source: "rss"`) with engagement metrics and NSFW flags as `null`. The remaining tools require credentials.
|
|
192
199
|
- **App-Only Mode**: Uses OAuth2 client credentials grant (works with both script and web apps)
|
|
193
200
|
- **Authenticated Mode**: Uses OAuth2 password grant (requires script app type)
|
|
194
201
|
|
|
@@ -225,7 +232,7 @@ Reddit MCP Buddy is designed with privacy and transparency in mind. Here's how y
|
|
|
225
232
|
### Security Notes
|
|
226
233
|
- **Read-Only Operations**: All tools are read-only - the server never posts, comments, or modifies any Reddit content
|
|
227
234
|
- **Credential Safety**:
|
|
228
|
-
- OAuth tokens are
|
|
235
|
+
- OAuth tokens are refreshed automatically and kept in memory; only `--auth` CLI setups also cache the token in `~/.reddit-mcp-buddy/auth.json` (file mode 600)
|
|
229
236
|
- Client secrets are treated as sensitive and never logged
|
|
230
237
|
- Use environment variables in Claude Desktop config for maximum security
|
|
231
238
|
- **Open Source**: Full source code is available at https://github.com/karanb192/reddit-mcp-buddy for security auditing
|
|
@@ -288,6 +295,8 @@ REDDIT_BUDDY_PORT=8080 npx -y reddit-mcp-buddy --http
|
|
|
288
295
|
|
|
289
296
|
**Note:** The server runs in stdio mode by default (for Claude Desktop). Use `--http` flag for testing with Postman MCP or direct API calls.
|
|
290
297
|
|
|
298
|
+
## Installation Options
|
|
299
|
+
|
|
291
300
|
### Global Install
|
|
292
301
|
```bash
|
|
293
302
|
npm install -g reddit-mcp-buddy
|
|
@@ -305,7 +314,10 @@ npm link
|
|
|
305
314
|
|
|
306
315
|
### Using Docker
|
|
307
316
|
```bash
|
|
308
|
-
|
|
317
|
+
git clone https://github.com/karanb192/reddit-mcp-buddy.git
|
|
318
|
+
cd reddit-mcp-buddy
|
|
319
|
+
docker build -t reddit-mcp-buddy .
|
|
320
|
+
docker run -it reddit-mcp-buddy
|
|
309
321
|
```
|
|
310
322
|
|
|
311
323
|
### Claude Desktop Extension
|
|
@@ -325,13 +337,13 @@ cd reddit-mcp-buddy
|
|
|
325
337
|
./scripts/build-mcpb.sh
|
|
326
338
|
```
|
|
327
339
|
|
|
328
|
-
**Note**:
|
|
340
|
+
**Note**: Most users should use the standard npm installation method shown in [Quick Start](#quick-start-30-seconds).
|
|
329
341
|
|
|
330
342
|
## Comparison with Other Tools
|
|
331
343
|
|
|
332
344
|
| Feature | Reddit MCP Buddy | Other MCP Tools |
|
|
333
345
|
|---------|-------------|----------------|
|
|
334
|
-
| **Zero Setup** | ✅
|
|
346
|
+
| **Zero Setup** | ✅ Browse instantly; free keys unlock the rest | ❌ Keys required for everything |
|
|
335
347
|
| **Max Rate Limit** | ✅ 100 req/min proven | ❓ Unverified claims |
|
|
336
348
|
| **Language** | TypeScript/Node.js | Python (most) |
|
|
337
349
|
| **Tools Count** | 5 (focused) | 8-10 (redundant) |
|
|
@@ -349,6 +361,8 @@ cd reddit-mcp-buddy
|
|
|
349
361
|
| App-only | 60 | 5 min | Client ID + Secret |
|
|
350
362
|
| Authenticated | 100 | 5 min | All credentials |
|
|
351
363
|
|
|
364
|
+
*Cache TTL applies to subreddit listings. Post details (10 min), search results (10 min), and user profiles (15 min) use fixed TTLs in all modes. Anonymous throughput is additionally bounded by Reddit's own per-IP RSS throttle, which is stricter than 10/min for uncached requests.*
|
|
365
|
+
|
|
352
366
|
## Why Reddit MCP Buddy?
|
|
353
367
|
|
|
354
368
|
### What others do wrong:
|
|
@@ -413,12 +427,17 @@ cd reddit-mcp-buddy
|
|
|
413
427
|
node --version
|
|
414
428
|
npm --version
|
|
415
429
|
|
|
416
|
-
# Try
|
|
417
|
-
$(npm
|
|
430
|
+
# Try the full global-bin path
|
|
431
|
+
$(npm prefix -g)/bin/reddit-mcp-buddy
|
|
418
432
|
```
|
|
419
433
|
|
|
434
|
+
**Browsing works but search / comments / user analysis fail**
|
|
435
|
+
- Without credentials only `browse_subreddit` (served from Reddit's public RSS feed, no scores or comment counts) and the offline `reddit_explain` work
|
|
436
|
+
- Anonymous browsing can also hit Reddit's own RSS rate limit (HTTP 429); the server retries automatically, but sustained throttling can still fail
|
|
437
|
+
- Solution: Add Reddit credentials (see [Authentication](#authentication-optional))
|
|
438
|
+
|
|
420
439
|
**Rate limit errors**
|
|
421
|
-
- Without auth:
|
|
440
|
+
- Without auth: 10 requests/minute server cap, and Reddit's own RSS feed throttles harder per IP (the server retries automatically)
|
|
422
441
|
- With app credentials only: 60 requests/minute
|
|
423
442
|
- With full authentication: 100 requests/minute
|
|
424
443
|
- Solution: Add Reddit credentials (see [Authentication](#authentication-optional))
|
|
@@ -442,15 +461,20 @@ $(npm bin -g)/reddit-mcp-buddy
|
|
|
442
461
|
| `REDDIT_CLIENT_SECRET` | Reddit app secret | No | 60 req/min (with ID) |
|
|
443
462
|
| `REDDIT_USERNAME` | Reddit account username | No | 100 req/min (with all 4) |
|
|
444
463
|
| `REDDIT_PASSWORD` | Reddit account password | No | 100 req/min (with all 4) |
|
|
445
|
-
| `REDDIT_USER_AGENT` |
|
|
464
|
+
| `REDDIT_USER_AGENT` | Custom user agent string (applies when credentials are configured) | No | - |
|
|
446
465
|
|
|
447
466
|
#### Server Configuration
|
|
448
467
|
| Variable | Description | Default |
|
|
449
468
|
|----------|-------------|---------|
|
|
450
469
|
| `REDDIT_BUDDY_HTTP` | Run as HTTP server instead of stdio | `false` |
|
|
451
470
|
| `REDDIT_BUDDY_PORT` | HTTP server port (when HTTP=true) | `3000` |
|
|
471
|
+
| `REDDIT_BUDDY_HOST` | Interface the HTTP server binds to | `127.0.0.1` |
|
|
472
|
+
| `REDDIT_BUDDY_ALLOWED_ORIGINS` | Comma-separated browser origins allowed to call the HTTP endpoint | none |
|
|
473
|
+
| `REDDIT_BUDDY_ALLOWED_HOSTS` | Comma-separated `host:port` values accepted in the Host header (DNS-rebinding protection) | loopback values when bound to localhost |
|
|
452
474
|
| `REDDIT_BUDDY_NO_CACHE` | Disable caching (always fetch fresh) | `false` |
|
|
453
475
|
|
|
476
|
+
> **HTTP mode has no authentication.** It binds to localhost so only your machine can reach it, and rejects Host headers outside the loopback set. Setting `REDDIT_BUDDY_HOST=0.0.0.0` exposes it to your whole network - only do that on a trusted network (e.g. inside Docker, which sets it deliberately). On a non-loopback bind the Host check is off by default, since clients legitimately arrive with a container IP or service name; set `REDDIT_BUDDY_ALLOWED_HOSTS` to restrict it. Browser requests are rejected unless their origin is listed in `REDDIT_BUDDY_ALLOWED_ORIGINS`; non-browser clients like Postman are unaffected.
|
|
477
|
+
|
|
454
478
|
## Technical Details
|
|
455
479
|
|
|
456
480
|
### Smart Caching System
|
|
@@ -458,7 +482,7 @@ $(npm bin -g)/reddit-mcp-buddy
|
|
|
458
482
|
Reddit MCP Buddy includes intelligent caching to improve performance and reduce API calls:
|
|
459
483
|
|
|
460
484
|
- **Memory Safe**: Hard limit of 50MB - won't affect your system performance
|
|
461
|
-
- **
|
|
485
|
+
- **Per-Content TTLs**: Post details (10min), user profiles (15min), search results (10min); subreddit listings use the mode default (15min anonymous, 5min with credentials)
|
|
462
486
|
- **LRU Eviction**: Automatically removes least-used data when approaching limits
|
|
463
487
|
- **Hit Tracking**: Optimizes cache based on actual usage patterns
|
|
464
488
|
|
|
@@ -519,13 +543,13 @@ We keep things simple:
|
|
|
519
543
|
|
|
520
544
|
### Official MCP Resources
|
|
521
545
|
- **[MCP Registry](https://registry.modelcontextprotocol.io)** - Official registry of MCP servers
|
|
522
|
-
- **[MCP Specification](https://
|
|
546
|
+
- **[MCP Specification](https://modelcontextprotocol.io/specification/latest)** - Official Model Context Protocol specification
|
|
523
547
|
- **[MCP TypeScript SDK](https://github.com/modelcontextprotocol/typescript-sdk)** - SDK used to build this server
|
|
524
548
|
- **[MCP Servers Repository](https://github.com/modelcontextprotocol/servers)** - Collection of official MCP server implementations
|
|
525
|
-
- **[Awesome MCP Servers](https://github.com/
|
|
549
|
+
- **[Awesome MCP Servers](https://github.com/punkpeye/awesome-mcp-servers)** - Community-curated list of MCP servers
|
|
526
550
|
|
|
527
551
|
### Where to Find This Server
|
|
528
|
-
- **[MCP Registry
|
|
552
|
+
- **[MCP Registry API Link](https://registry.modelcontextprotocol.io/v0/servers?search=reddit-mcp-buddy)** - Direct API query for this server
|
|
529
553
|
- **[MCP Registry Search](https://registry.modelcontextprotocol.io)** - Search for "reddit" to find all versions
|
|
530
554
|
- **[NPM Package](https://www.npmjs.com/package/reddit-mcp-buddy)** - Install via npm/npx
|
|
531
555
|
- **[GitHub Repository](https://github.com/karanb192/reddit-mcp-buddy)** - Source code and issues
|
|
@@ -535,9 +559,9 @@ We keep things simple:
|
|
|
535
559
|
# Get all versions of reddit-mcp-buddy from the registry
|
|
536
560
|
curl -s "https://registry.modelcontextprotocol.io/v0/servers?search=reddit-mcp-buddy" | jq
|
|
537
561
|
|
|
538
|
-
# Get just version numbers and
|
|
562
|
+
# Get just names, version numbers, and latest flag
|
|
539
563
|
curl -s "https://registry.modelcontextprotocol.io/v0/servers?search=reddit-mcp-buddy" | \
|
|
540
|
-
jq '.servers[] | {version,
|
|
564
|
+
jq '.servers[] | {name: .server.name, version: .server.version, isLatest: ._meta."io.modelcontextprotocol.registry/official".isLatest}'
|
|
541
565
|
```
|
|
542
566
|
|
|
543
567
|
## License
|
|
@@ -546,4 +570,6 @@ MIT - Use it however you want!
|
|
|
546
570
|
|
|
547
571
|
---
|
|
548
572
|
|
|
549
|
-
Made with ❤️ for the MCP community. No venture capital, no tracking, just a good MCP server.
|
|
573
|
+
Made with ❤️ for the MCP community. No venture capital, no tracking, just a good MCP server.
|
|
574
|
+
|
|
575
|
+
Built by [Karan Bansal](https://karanbansal.in) (Head of AI at ArmorCode). I write about Claude Code, MCP, and production agentic AI at [karanbansal.in/blog](https://karanbansal.in/blog/).
|
package/dist/core/auth.d.ts
CHANGED
package/dist/core/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAUD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,UAAU,CAAS;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAUD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,UAAU,CAAS;IAI3B,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,mBAAmB,CAA8B;IAEzD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAS;;IAMpD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IA4BxC;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAuBnB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAoBlC;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC7C;;OAEG;IACH,SAAS,IAAI,UAAU,GAAG,IAAI;IAI9B;;OAEG;IACH,eAAe,IAAI,OAAO;IAM1B;;;;;;OAMG;IACH,cAAc,IAAI,OAAO;IAQzB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgB9C;;;OAGG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBzC;;OAEG;YACW,oBAAoB;IA+FlC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAW5B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAgBnD;;OAEG;IACH,YAAY,IAAI,MAAM;IAQtB;;OAEG;IACH,WAAW,IAAI,MAAM;IAMrB;;OAEG;IACH,WAAW,IAAI,OAAO;IAMtB;;OAEG;IACH,WAAW,IAAI,MAAM;IAOrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;WACU,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC;CAiCnD"}
|
package/dist/core/auth.js
CHANGED
|
@@ -15,6 +15,10 @@ const OAuthTokenResponseSchema = z.object({
|
|
|
15
15
|
export class AuthManager {
|
|
16
16
|
config = null;
|
|
17
17
|
configPath;
|
|
18
|
+
// True when credentials came from environment variables. Env-supplied
|
|
19
|
+
// credentials are never persisted to auth.json — only the --auth
|
|
20
|
+
// interactive setup (which never calls load()) opts into disk storage.
|
|
21
|
+
configFromEnv = false;
|
|
18
22
|
// Lock for token refresh to prevent concurrent refresh attempts (race conditions)
|
|
19
23
|
tokenRefreshPromise = null;
|
|
20
24
|
// Token expiration buffer (refresh 10 seconds before actual expiration to handle clock drift)
|
|
@@ -30,6 +34,7 @@ export class AuthManager {
|
|
|
30
34
|
const envConfig = this.loadFromEnv();
|
|
31
35
|
if (envConfig) {
|
|
32
36
|
this.config = envConfig;
|
|
37
|
+
this.configFromEnv = true;
|
|
33
38
|
return this.config;
|
|
34
39
|
}
|
|
35
40
|
// Then check config file
|
|
@@ -282,11 +287,16 @@ export class AuthManager {
|
|
|
282
287
|
this.config.accessToken = data.access_token;
|
|
283
288
|
this.config.expiresAt = expiresAt;
|
|
284
289
|
this.config.scope = data.scope;
|
|
285
|
-
//
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
+
// Persist the refreshed token only for file-based (--auth) setups.
|
|
291
|
+
// Env-supplied credentials stay in memory: writing them to auth.json
|
|
292
|
+
// would break the documented "env vars are never persisted" contract.
|
|
293
|
+
if (!this.configFromEnv) {
|
|
294
|
+
// Never save password to disk
|
|
295
|
+
const configToSave = { ...this.config };
|
|
296
|
+
delete configToSave.password;
|
|
297
|
+
// Save updated config
|
|
298
|
+
await this.save(configToSave);
|
|
299
|
+
}
|
|
290
300
|
}
|
|
291
301
|
catch (error) {
|
|
292
302
|
throw new Error(`Failed to refresh access token: ${error}`);
|
|
@@ -310,7 +320,7 @@ export class AuthManager {
|
|
|
310
320
|
*/
|
|
311
321
|
async getHeaders() {
|
|
312
322
|
const headers = {
|
|
313
|
-
'User-Agent': 'RedditBuddy/1.0 (by /u/karanb192)',
|
|
323
|
+
'User-Agent': this.config?.userAgent || 'RedditBuddy/1.0 (by /u/karanb192)',
|
|
314
324
|
'Accept': 'application/json',
|
|
315
325
|
'Accept-Language': 'en-US,en;q=0.9',
|
|
316
326
|
'Cache-Control': 'no-cache'
|
package/dist/core/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/core/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-server.d.ts
CHANGED
|
@@ -5,11 +5,24 @@ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
|
5
5
|
import { CacheManager } from './core/cache.js';
|
|
6
6
|
import { RedditTools } from './tools/index.js';
|
|
7
7
|
export declare const SERVER_NAME = "reddit-mcp-buddy";
|
|
8
|
-
export declare const SERVER_VERSION = "1.1.
|
|
8
|
+
export declare const SERVER_VERSION = "1.1.14";
|
|
9
9
|
/**
|
|
10
10
|
* Create MCP server with proper protocol implementation
|
|
11
11
|
*/
|
|
12
|
-
export
|
|
12
|
+
export interface SharedServices {
|
|
13
|
+
cacheManager: CacheManager;
|
|
14
|
+
tools: RedditTools;
|
|
15
|
+
rateLimit: number;
|
|
16
|
+
cacheTTL: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Build the long-lived services (auth, cache, rate limiter, Reddit client).
|
|
20
|
+
* These are created ONCE per process and shared by every MCP server instance,
|
|
21
|
+
* so the stateless HTTP path can mint a fresh Server per request without
|
|
22
|
+
* throwing away the cache or resetting the rate limiter.
|
|
23
|
+
*/
|
|
24
|
+
export declare function createSharedServices(): Promise<SharedServices>;
|
|
25
|
+
export declare function createMCPServer(shared?: SharedServices): Promise<{
|
|
13
26
|
server: Server<{
|
|
14
27
|
method: string;
|
|
15
28
|
params?: {
|
|
@@ -17,6 +30,9 @@ export declare function createMCPServer(): Promise<{
|
|
|
17
30
|
_meta?: {
|
|
18
31
|
[x: string]: unknown;
|
|
19
32
|
progressToken?: string | number | undefined;
|
|
33
|
+
"io.modelcontextprotocol/related-task"?: {
|
|
34
|
+
taskId: string;
|
|
35
|
+
} | undefined;
|
|
20
36
|
} | undefined;
|
|
21
37
|
} | undefined;
|
|
22
38
|
}, {
|
|
@@ -25,12 +41,20 @@ export declare function createMCPServer(): Promise<{
|
|
|
25
41
|
[x: string]: unknown;
|
|
26
42
|
_meta?: {
|
|
27
43
|
[x: string]: unknown;
|
|
44
|
+
progressToken?: string | number | undefined;
|
|
45
|
+
"io.modelcontextprotocol/related-task"?: {
|
|
46
|
+
taskId: string;
|
|
47
|
+
} | undefined;
|
|
28
48
|
} | undefined;
|
|
29
49
|
} | undefined;
|
|
30
50
|
}, {
|
|
31
51
|
[x: string]: unknown;
|
|
32
52
|
_meta?: {
|
|
33
53
|
[x: string]: unknown;
|
|
54
|
+
progressToken?: string | number | undefined;
|
|
55
|
+
"io.modelcontextprotocol/related-task"?: {
|
|
56
|
+
taskId: string;
|
|
57
|
+
} | undefined;
|
|
34
58
|
} | undefined;
|
|
35
59
|
}>;
|
|
36
60
|
cacheManager: CacheManager;
|
|
@@ -38,50 +62,51 @@ export declare function createMCPServer(): Promise<{
|
|
|
38
62
|
handlers: {
|
|
39
63
|
'tools/list': () => Promise<{
|
|
40
64
|
tools: {
|
|
41
|
-
[x: string]: unknown;
|
|
42
|
-
name: string;
|
|
43
65
|
inputSchema: {
|
|
44
66
|
[x: string]: unknown;
|
|
45
67
|
type: "object";
|
|
46
68
|
properties?: {
|
|
47
|
-
[x: string]:
|
|
69
|
+
[x: string]: object;
|
|
48
70
|
} | undefined;
|
|
49
71
|
required?: string[] | undefined;
|
|
50
72
|
};
|
|
51
|
-
|
|
73
|
+
name: string;
|
|
52
74
|
description?: string | undefined;
|
|
53
75
|
outputSchema?: {
|
|
54
76
|
[x: string]: unknown;
|
|
55
77
|
type: "object";
|
|
56
78
|
properties?: {
|
|
57
|
-
[x: string]:
|
|
79
|
+
[x: string]: object;
|
|
58
80
|
} | undefined;
|
|
59
81
|
required?: string[] | undefined;
|
|
60
82
|
} | undefined;
|
|
61
83
|
annotations?: {
|
|
62
|
-
[x: string]: unknown;
|
|
63
84
|
title?: string | undefined;
|
|
64
85
|
readOnlyHint?: boolean | undefined;
|
|
65
86
|
destructiveHint?: boolean | undefined;
|
|
66
87
|
idempotentHint?: boolean | undefined;
|
|
67
88
|
openWorldHint?: boolean | undefined;
|
|
68
89
|
} | undefined;
|
|
69
|
-
|
|
90
|
+
execution?: {
|
|
91
|
+
taskSupport?: "optional" | "required" | "forbidden" | undefined;
|
|
92
|
+
} | undefined;
|
|
93
|
+
_meta?: {
|
|
70
94
|
[x: string]: unknown;
|
|
95
|
+
} | undefined;
|
|
96
|
+
icons?: {
|
|
71
97
|
src: string;
|
|
72
98
|
mimeType?: string | undefined;
|
|
73
|
-
sizes?: string | undefined;
|
|
99
|
+
sizes?: string[] | undefined;
|
|
100
|
+
theme?: "light" | "dark" | undefined;
|
|
74
101
|
}[] | undefined;
|
|
75
|
-
|
|
76
|
-
[x: string]: unknown;
|
|
77
|
-
} | undefined;
|
|
102
|
+
title?: string | undefined;
|
|
78
103
|
}[];
|
|
79
104
|
}>;
|
|
80
105
|
'tools/call': (params: any) => Promise<{
|
|
81
106
|
content: {
|
|
82
107
|
type: "text" | "image";
|
|
83
|
-
text?: string | undefined;
|
|
84
108
|
data?: string | undefined;
|
|
109
|
+
text?: string | undefined;
|
|
85
110
|
mimeType?: string | undefined;
|
|
86
111
|
}[];
|
|
87
112
|
isError?: boolean | undefined;
|
package/dist/mcp-server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAanE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EACL,WAAW,EAMZ,MAAM,kBAAkB,CAAC;AAG1B,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,cAAc,WAAW,CAAC;AA2FvC;;GAEG;AACH,wBAAsB,eAAe
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAanE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EACL,WAAW,EAMZ,MAAM,kBAAkB,CAAC;AAG1B,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,cAAc,WAAW,CAAC;AA2FvC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,cAAc,CAAC,CAqCpE;AAED,wBAAsB,eAAe,CAAC,MAAM,CAAC,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA6E5B,GAAG;;;;;;;;;;GAoDnC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,kBA4BrC;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,IAAI,GAAE,MAAa,iBA6PxD"}
|