research-powerpack-mcp 3.4.8 → 3.6.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/dist/config/env.d.ts +75 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +87 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/yaml/tools-enhanced.yaml +0 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/services/llm-processor.js +0 -25
- package/dist/services/llm-processor.js.map +1 -1
- package/dist/tools/reddit.d.ts.map +1 -1
- package/dist/tools/reddit.js +76 -40
- package/dist/tools/reddit.js.map +1 -1
- package/dist/tools/research.d.ts +1 -6
- package/dist/tools/research.d.ts.map +1 -1
- package/dist/tools/research.js +63 -42
- package/dist/tools/research.js.map +1 -1
- package/dist/tools/scrape.d.ts +1 -6
- package/dist/tools/scrape.d.ts.map +1 -1
- package/dist/tools/scrape.js +53 -42
- package/dist/tools/scrape.js.map +1 -1
- package/dist/tools/search.d.ts +1 -6
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +26 -18
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/utils.d.ts +13 -0
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +17 -0
- package/dist/tools/utils.js.map +1 -1
- package/dist/utils/logger.d.ts +32 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +43 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/mcp-logger.d.ts +8 -0
- package/dist/utils/mcp-logger.d.ts.map +1 -0
- package/dist/utils/mcp-logger.js +14 -0
- package/dist/utils/mcp-logger.js.map +1 -0
- package/dist/utils/response.d.ts +88 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +151 -0
- package/dist/utils/response.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,MAAM,EACN,OAAO,IAAI,aAAa,EACxB,gBAAgB,EAChB,KAAK,QAAQ,EACb,KAAK,UAAU,IAAI,gBAAgB,GACpC,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,YAAY,EACZ,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,QAAQ,GACd,MAAM,sBAAsB,CAAC;AAM9B;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB,iCAAiC;;IAEjC,+BAA+B;;IAE/B,sCAAsC;;CAE9B,CAAC;AAMX;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,EACjC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB;AAMD;;;;;;;;;GASG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,EACjC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAQf;AAMD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9E;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAI1D;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,OAAO,EAClB,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,CAIR;AAMD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAQpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,OAAO,EAAE,EACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAQpB;AAMD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,MAAM,CAER;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EAAE,GAChB,MAAM,CAMR"}
|
package/dist/tools/utils.js
CHANGED
|
@@ -2,6 +2,23 @@
|
|
|
2
2
|
* Shared Tool Utilities
|
|
3
3
|
* Extracted from individual handlers to eliminate duplication
|
|
4
4
|
*/
|
|
5
|
+
// Re-export from centralized modules
|
|
6
|
+
export { mcpLog, safeLog as safeLogSimple, createToolLogger, } from '../utils/logger.js';
|
|
7
|
+
export { formatSuccess, formatError, formatBatchHeader, formatList, formatDuration, truncateText, } from '../utils/response.js';
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Token Budget Constants
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Centralized token budgets for all tools
|
|
13
|
+
*/
|
|
14
|
+
export const TOKEN_BUDGETS = {
|
|
15
|
+
/** Deep research total budget */
|
|
16
|
+
RESEARCH: 32_000,
|
|
17
|
+
/** Web scraper total budget */
|
|
18
|
+
SCRAPER: 32_000,
|
|
19
|
+
/** Reddit comment budget per batch */
|
|
20
|
+
REDDIT_COMMENTS: 1_000,
|
|
21
|
+
};
|
|
5
22
|
// ============================================================================
|
|
6
23
|
// Logging Utilities
|
|
7
24
|
// ============================================================================
|
package/dist/tools/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP-Compatible Logging Utility
|
|
3
|
+
*
|
|
4
|
+
* Uses stderr for logging to avoid polluting MCP protocol messages on stdout.
|
|
5
|
+
* All MCP servers MUST use stderr for debug/info/warning output.
|
|
6
|
+
*/
|
|
7
|
+
export type LogLevel = 'debug' | 'info' | 'warning' | 'error';
|
|
8
|
+
/**
|
|
9
|
+
* Log message to stderr (MCP-compatible)
|
|
10
|
+
* @param level - Log level
|
|
11
|
+
* @param message - Message to log
|
|
12
|
+
* @param tool - Tool name for context
|
|
13
|
+
*/
|
|
14
|
+
export declare function mcpLog(level: LogLevel, message: string, tool?: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* Safe log that catches any errors (never crashes)
|
|
17
|
+
* @param level - Log level
|
|
18
|
+
* @param message - Message to log
|
|
19
|
+
* @param tool - Tool name for context
|
|
20
|
+
*/
|
|
21
|
+
export declare function safeLog(level: LogLevel, message: string, tool?: string): void;
|
|
22
|
+
/**
|
|
23
|
+
* Create a bound logger for a specific tool
|
|
24
|
+
*/
|
|
25
|
+
export declare function createToolLogger(tool: string): {
|
|
26
|
+
debug: (msg: string) => void;
|
|
27
|
+
info: (msg: string) => void;
|
|
28
|
+
warning: (msg: string) => void;
|
|
29
|
+
error: (msg: string) => void;
|
|
30
|
+
};
|
|
31
|
+
export type ToolLogger = ReturnType<typeof createToolLogger>;
|
|
32
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAI5E;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAM7E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM;iBAE5B,MAAM;gBACP,MAAM;mBACH,MAAM;iBACR,MAAM;EAEtB;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP-Compatible Logging Utility
|
|
3
|
+
*
|
|
4
|
+
* Uses stderr for logging to avoid polluting MCP protocol messages on stdout.
|
|
5
|
+
* All MCP servers MUST use stderr for debug/info/warning output.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Log message to stderr (MCP-compatible)
|
|
9
|
+
* @param level - Log level
|
|
10
|
+
* @param message - Message to log
|
|
11
|
+
* @param tool - Tool name for context
|
|
12
|
+
*/
|
|
13
|
+
export function mcpLog(level, message, tool) {
|
|
14
|
+
const prefix = tool ? `[${tool}]` : '';
|
|
15
|
+
const levelPrefix = level === 'error' ? '❌' : level === 'warning' ? '⚠️' : level === 'debug' ? '🔍' : 'ℹ️';
|
|
16
|
+
console.error(`${levelPrefix} ${prefix} ${message}`);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Safe log that catches any errors (never crashes)
|
|
20
|
+
* @param level - Log level
|
|
21
|
+
* @param message - Message to log
|
|
22
|
+
* @param tool - Tool name for context
|
|
23
|
+
*/
|
|
24
|
+
export function safeLog(level, message, tool) {
|
|
25
|
+
try {
|
|
26
|
+
mcpLog(level, message, tool);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
// Swallow logging errors - never crash
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Create a bound logger for a specific tool
|
|
34
|
+
*/
|
|
35
|
+
export function createToolLogger(tool) {
|
|
36
|
+
return {
|
|
37
|
+
debug: (msg) => safeLog('debug', msg, tool),
|
|
38
|
+
info: (msg) => safeLog('info', msg, tool),
|
|
39
|
+
warning: (msg) => safeLog('warning', msg, tool),
|
|
40
|
+
error: (msg) => safeLog('error', msg, tool),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,KAAe,EAAE,OAAe,EAAE,IAAa;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3G,OAAO,CAAC,KAAK,CAAC,GAAG,WAAW,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,KAAe,EAAE,OAAe,EAAE,IAAa;IACrE,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,uCAAuC;IACzC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO;QACL,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC;QACnD,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC;QACjD,OAAO,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC;QACvD,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC;KACpD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP SDK structured logging wrapper
|
|
3
|
+
* Sends log messages to MCP clients via server.sendLoggingMessage()
|
|
4
|
+
*/
|
|
5
|
+
import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
6
|
+
export declare function initLogger(server: Server): void;
|
|
7
|
+
export declare function mcpLog(level: 'debug' | 'info' | 'warning' | 'error', message: string, logger?: string): void;
|
|
8
|
+
//# sourceMappingURL=mcp-logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-logger.d.ts","sourceRoot":"","sources":["../../src/utils/mcp-logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAIxE,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE/C;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAG5G"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP SDK structured logging wrapper
|
|
3
|
+
* Sends log messages to MCP clients via server.sendLoggingMessage()
|
|
4
|
+
*/
|
|
5
|
+
let serverRef = null;
|
|
6
|
+
export function initLogger(server) {
|
|
7
|
+
serverRef = server;
|
|
8
|
+
}
|
|
9
|
+
export function mcpLog(level, message, logger) {
|
|
10
|
+
if (!serverRef)
|
|
11
|
+
return;
|
|
12
|
+
serverRef.sendLoggingMessage({ level, data: message, logger: logger ?? 'research-powerpack' }).catch(() => { });
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=mcp-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-logger.js","sourceRoot":"","sources":["../../src/utils/mcp-logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,IAAI,SAAS,GAAkB,IAAI,CAAC;AAEpC,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,SAAS,GAAG,MAAM,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAA6C,EAAE,OAAe,EAAE,MAAe;IACpG,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,SAAS,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACjH,CAAC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Response Formatters - 70/20/10 Pattern
|
|
3
|
+
*
|
|
4
|
+
* All tool responses should follow this structure:
|
|
5
|
+
* - 70% Summary: Key insights, status, metrics
|
|
6
|
+
* - 20% Data: Structured results (lists, tables)
|
|
7
|
+
* - 10% Next Steps: Actionable follow-up commands
|
|
8
|
+
*/
|
|
9
|
+
export interface SuccessOptions {
|
|
10
|
+
/** Title/header for the response */
|
|
11
|
+
title: string;
|
|
12
|
+
/** Summary section (70% of content) */
|
|
13
|
+
summary: string;
|
|
14
|
+
/** Optional data section (20% of content) */
|
|
15
|
+
data?: string;
|
|
16
|
+
/** Optional next steps (10% of content) */
|
|
17
|
+
nextSteps?: string[];
|
|
18
|
+
/** Optional metadata footer */
|
|
19
|
+
metadata?: Record<string, string | number>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Format a successful response using 70/20/10 pattern
|
|
23
|
+
*/
|
|
24
|
+
export declare function formatSuccess(opts: SuccessOptions): string;
|
|
25
|
+
export interface ErrorOptions {
|
|
26
|
+
/** Error code (e.g., RATE_LIMITED, TIMEOUT) */
|
|
27
|
+
code: string;
|
|
28
|
+
/** Human-readable error message */
|
|
29
|
+
message: string;
|
|
30
|
+
/** Is this error retryable? */
|
|
31
|
+
retryable?: boolean;
|
|
32
|
+
/** How to fix the error */
|
|
33
|
+
howToFix?: string[];
|
|
34
|
+
/** Alternative actions */
|
|
35
|
+
alternatives?: string[];
|
|
36
|
+
/** Tool name for context */
|
|
37
|
+
toolName?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Format an error response with recovery guidance
|
|
41
|
+
*/
|
|
42
|
+
export declare function formatError(opts: ErrorOptions): string;
|
|
43
|
+
export interface BatchHeaderOptions {
|
|
44
|
+
/** Batch operation title */
|
|
45
|
+
title: string;
|
|
46
|
+
/** Total items attempted */
|
|
47
|
+
totalItems: number;
|
|
48
|
+
/** Successfully processed count */
|
|
49
|
+
successful: number;
|
|
50
|
+
/** Failed count */
|
|
51
|
+
failed: number;
|
|
52
|
+
/** Optional tokens per item */
|
|
53
|
+
tokensPerItem?: number;
|
|
54
|
+
/** Optional batch count */
|
|
55
|
+
batches?: number;
|
|
56
|
+
/** Extra stats to include */
|
|
57
|
+
extras?: Record<string, string | number>;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Format a batch operation header with stats
|
|
61
|
+
*/
|
|
62
|
+
export declare function formatBatchHeader(opts: BatchHeaderOptions): string;
|
|
63
|
+
export interface ListItem {
|
|
64
|
+
/** Item title/name */
|
|
65
|
+
title: string;
|
|
66
|
+
/** Optional description */
|
|
67
|
+
description?: string;
|
|
68
|
+
/** Optional metadata */
|
|
69
|
+
meta?: string;
|
|
70
|
+
/** Optional URL */
|
|
71
|
+
url?: string;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Format a numbered list with optional metadata
|
|
75
|
+
*/
|
|
76
|
+
export declare function formatList(items: ListItem[], options?: {
|
|
77
|
+
maxItems?: number;
|
|
78
|
+
numbered?: boolean;
|
|
79
|
+
}): string;
|
|
80
|
+
/**
|
|
81
|
+
* Format duration in human-readable form
|
|
82
|
+
*/
|
|
83
|
+
export declare function formatDuration(ms: number): string;
|
|
84
|
+
/**
|
|
85
|
+
* Truncate text to max length with ellipsis
|
|
86
|
+
*/
|
|
87
|
+
export declare function truncateText(text: string, maxLength: number): string;
|
|
88
|
+
//# sourceMappingURL=response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/utils/response.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAoC1D;AAMD,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA4BtD;AAMD,MAAM,WAAW,kBAAkB;IACjC,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,CA8BlE;AAMD,MAAM,WAAW,QAAQ;IACvB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CA0BzG;AAMD;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAIjD;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGpE"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Response Formatters - 70/20/10 Pattern
|
|
3
|
+
*
|
|
4
|
+
* All tool responses should follow this structure:
|
|
5
|
+
* - 70% Summary: Key insights, status, metrics
|
|
6
|
+
* - 20% Data: Structured results (lists, tables)
|
|
7
|
+
* - 10% Next Steps: Actionable follow-up commands
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Format a successful response using 70/20/10 pattern
|
|
11
|
+
*/
|
|
12
|
+
export function formatSuccess(opts) {
|
|
13
|
+
const parts = [];
|
|
14
|
+
// Title
|
|
15
|
+
parts.push(`✓ ${opts.title}`);
|
|
16
|
+
parts.push('');
|
|
17
|
+
// Summary (70%)
|
|
18
|
+
parts.push(opts.summary);
|
|
19
|
+
// Data section (20%)
|
|
20
|
+
if (opts.data) {
|
|
21
|
+
parts.push('');
|
|
22
|
+
parts.push('---');
|
|
23
|
+
parts.push(opts.data);
|
|
24
|
+
}
|
|
25
|
+
// Next steps (10%)
|
|
26
|
+
if (opts.nextSteps?.length) {
|
|
27
|
+
parts.push('');
|
|
28
|
+
parts.push('---');
|
|
29
|
+
parts.push('**Next Steps:**');
|
|
30
|
+
opts.nextSteps.forEach(step => parts.push(`→ ${step}`));
|
|
31
|
+
}
|
|
32
|
+
// Metadata footer
|
|
33
|
+
if (opts.metadata && Object.keys(opts.metadata).length > 0) {
|
|
34
|
+
parts.push('');
|
|
35
|
+
parts.push('---');
|
|
36
|
+
const metaStr = Object.entries(opts.metadata)
|
|
37
|
+
.map(([k, v]) => `${k}: ${v}`)
|
|
38
|
+
.join(' | ');
|
|
39
|
+
parts.push(`*${metaStr}*`);
|
|
40
|
+
}
|
|
41
|
+
return parts.join('\n');
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Format an error response with recovery guidance
|
|
45
|
+
*/
|
|
46
|
+
export function formatError(opts) {
|
|
47
|
+
const parts = [];
|
|
48
|
+
// Error header
|
|
49
|
+
const prefix = opts.toolName ? `[${opts.toolName}] ` : '';
|
|
50
|
+
parts.push(`❌ ${prefix}${opts.code}: ${opts.message}`);
|
|
51
|
+
// Retryable hint
|
|
52
|
+
if (opts.retryable) {
|
|
53
|
+
parts.push('');
|
|
54
|
+
parts.push('*This error is retryable. Wait a moment and try again.*');
|
|
55
|
+
}
|
|
56
|
+
// How to fix
|
|
57
|
+
if (opts.howToFix?.length) {
|
|
58
|
+
parts.push('');
|
|
59
|
+
parts.push('**How to Fix:**');
|
|
60
|
+
opts.howToFix.forEach((step, i) => parts.push(`${i + 1}. ${step}`));
|
|
61
|
+
}
|
|
62
|
+
// Alternatives
|
|
63
|
+
if (opts.alternatives?.length) {
|
|
64
|
+
parts.push('');
|
|
65
|
+
parts.push('**Alternatives:**');
|
|
66
|
+
opts.alternatives.forEach(alt => parts.push(`• ${alt}`));
|
|
67
|
+
}
|
|
68
|
+
return parts.join('\n');
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Format a batch operation header with stats
|
|
72
|
+
*/
|
|
73
|
+
export function formatBatchHeader(opts) {
|
|
74
|
+
const parts = [];
|
|
75
|
+
// Title with emoji based on success rate
|
|
76
|
+
const successRate = opts.totalItems > 0 ? opts.successful / opts.totalItems : 0;
|
|
77
|
+
const emoji = successRate === 1 ? '✓' : successRate >= 0.5 ? '⚠️' : '❌';
|
|
78
|
+
parts.push(`${emoji} ${opts.title}`);
|
|
79
|
+
parts.push('');
|
|
80
|
+
// Stats
|
|
81
|
+
parts.push(`• Total: ${opts.totalItems}`);
|
|
82
|
+
parts.push(`• Successful: ${opts.successful}`);
|
|
83
|
+
if (opts.failed > 0) {
|
|
84
|
+
parts.push(`• Failed: ${opts.failed}`);
|
|
85
|
+
}
|
|
86
|
+
if (opts.tokensPerItem) {
|
|
87
|
+
parts.push(`• Tokens/item: ~${opts.tokensPerItem.toLocaleString()}`);
|
|
88
|
+
}
|
|
89
|
+
if (opts.batches) {
|
|
90
|
+
parts.push(`• Batches: ${opts.batches}`);
|
|
91
|
+
}
|
|
92
|
+
// Extra stats
|
|
93
|
+
if (opts.extras) {
|
|
94
|
+
Object.entries(opts.extras).forEach(([key, val]) => {
|
|
95
|
+
parts.push(`• ${key}: ${val}`);
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return parts.join('\n');
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Format a numbered list with optional metadata
|
|
102
|
+
*/
|
|
103
|
+
export function formatList(items, options) {
|
|
104
|
+
const max = options?.maxItems ?? 20;
|
|
105
|
+
const numbered = options?.numbered ?? true;
|
|
106
|
+
const toShow = items.slice(0, max);
|
|
107
|
+
const remaining = items.length - max;
|
|
108
|
+
const lines = toShow.map((item, i) => {
|
|
109
|
+
const prefix = numbered ? `${i + 1}. ` : '• ';
|
|
110
|
+
let line = `${prefix}**${item.title}**`;
|
|
111
|
+
if (item.meta) {
|
|
112
|
+
line += ` (${item.meta})`;
|
|
113
|
+
}
|
|
114
|
+
if (item.description) {
|
|
115
|
+
line += `\n ${item.description}`;
|
|
116
|
+
}
|
|
117
|
+
if (item.url) {
|
|
118
|
+
line += `\n ${item.url}`;
|
|
119
|
+
}
|
|
120
|
+
return line;
|
|
121
|
+
});
|
|
122
|
+
if (remaining > 0) {
|
|
123
|
+
lines.push(`\n*...and ${remaining} more*`);
|
|
124
|
+
}
|
|
125
|
+
return lines.join('\n');
|
|
126
|
+
}
|
|
127
|
+
// ============================================================================
|
|
128
|
+
// Duration Formatter
|
|
129
|
+
// ============================================================================
|
|
130
|
+
/**
|
|
131
|
+
* Format duration in human-readable form
|
|
132
|
+
*/
|
|
133
|
+
export function formatDuration(ms) {
|
|
134
|
+
if (ms < 1000)
|
|
135
|
+
return `${ms}ms`;
|
|
136
|
+
if (ms < 60000)
|
|
137
|
+
return `${(ms / 1000).toFixed(1)}s`;
|
|
138
|
+
return `${(ms / 60000).toFixed(1)}m`;
|
|
139
|
+
}
|
|
140
|
+
// ============================================================================
|
|
141
|
+
// Text Truncation
|
|
142
|
+
// ============================================================================
|
|
143
|
+
/**
|
|
144
|
+
* Truncate text to max length with ellipsis
|
|
145
|
+
*/
|
|
146
|
+
export function truncateText(text, maxLength) {
|
|
147
|
+
if (text.length <= maxLength)
|
|
148
|
+
return text;
|
|
149
|
+
return text.slice(0, maxLength - 3) + '...';
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/utils/response.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "research-powerpack-mcp",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0",
|
|
4
4
|
"description": "The ultimate research MCP toolkit: Reddit mining, web search with CTR aggregation, AI-powered deep research, and intelligent web scraping - all in one modular package",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|