@lagoon-protocol/lagoon-mcp 0.1.2 → 0.2.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 (70) hide show
  1. package/README.md +54 -0
  2. package/dist/server.js +1 -1
  3. package/dist/skills/curator-evaluation.d.ts +15 -0
  4. package/dist/skills/curator-evaluation.d.ts.map +1 -0
  5. package/dist/skills/curator-evaluation.js +424 -0
  6. package/dist/skills/curator-evaluation.js.map +1 -0
  7. package/dist/skills/customer-support.d.ts +15 -0
  8. package/dist/skills/customer-support.d.ts.map +1 -0
  9. package/dist/skills/customer-support.js +512 -0
  10. package/dist/skills/customer-support.js.map +1 -0
  11. package/dist/skills/index.d.ts +91 -0
  12. package/dist/skills/index.d.ts.map +1 -0
  13. package/dist/skills/index.js +100 -0
  14. package/dist/skills/index.js.map +1 -0
  15. package/dist/skills/loader.d.ts +120 -0
  16. package/dist/skills/loader.d.ts.map +1 -0
  17. package/dist/skills/loader.js +263 -0
  18. package/dist/skills/loader.js.map +1 -0
  19. package/dist/skills/onboarding.d.ts +15 -0
  20. package/dist/skills/onboarding.d.ts.map +1 -0
  21. package/dist/skills/onboarding.js +383 -0
  22. package/dist/skills/onboarding.js.map +1 -0
  23. package/dist/skills/portfolio-review.d.ts +15 -0
  24. package/dist/skills/portfolio-review.d.ts.map +1 -0
  25. package/dist/skills/portfolio-review.js +464 -0
  26. package/dist/skills/portfolio-review.js.map +1 -0
  27. package/dist/skills/protocol-health.d.ts +15 -0
  28. package/dist/skills/protocol-health.d.ts.map +1 -0
  29. package/dist/skills/protocol-health.js +451 -0
  30. package/dist/skills/protocol-health.js.map +1 -0
  31. package/dist/skills/risk-expert.d.ts +15 -0
  32. package/dist/skills/risk-expert.d.ts.map +1 -0
  33. package/dist/skills/risk-expert.js +456 -0
  34. package/dist/skills/risk-expert.js.map +1 -0
  35. package/dist/skills/shared.d.ts +82 -0
  36. package/dist/skills/shared.d.ts.map +1 -0
  37. package/dist/skills/shared.js +136 -0
  38. package/dist/skills/shared.js.map +1 -0
  39. package/dist/skills/types.d.ts +137 -0
  40. package/dist/skills/types.d.ts.map +1 -0
  41. package/dist/skills/types.js +11 -0
  42. package/dist/skills/types.js.map +1 -0
  43. package/dist/tools/discover-tools.d.ts +44 -0
  44. package/dist/tools/discover-tools.d.ts.map +1 -0
  45. package/dist/tools/discover-tools.js +108 -0
  46. package/dist/tools/discover-tools.js.map +1 -0
  47. package/dist/tools/registry.d.ts.map +1 -1
  48. package/dist/tools/registry.js +12 -2
  49. package/dist/tools/registry.js.map +1 -1
  50. package/dist/utils/validators.d.ts +2 -2
  51. package/dist/utils/validators.d.ts.map +1 -1
  52. package/dist/utils/validators.js +2 -1
  53. package/dist/utils/validators.js.map +1 -1
  54. package/package.json +14 -1
  55. package/skills/README.md +141 -0
  56. package/skills/lagoon-curator-evaluation/SKILL.md +281 -0
  57. package/skills/lagoon-curator-evaluation/scoring-rubric.md +121 -0
  58. package/skills/lagoon-customer-support/SKILL.md +95 -0
  59. package/skills/lagoon-customer-support/response-templates.md +196 -0
  60. package/skills/lagoon-onboarding/SKILL.md +251 -0
  61. package/skills/lagoon-onboarding/risk-interpretation.md +188 -0
  62. package/skills/lagoon-onboarding/tool-sequences.md +217 -0
  63. package/skills/lagoon-portfolio-review/SKILL.md +156 -0
  64. package/skills/lagoon-portfolio-review/rebalancing-criteria.md +85 -0
  65. package/skills/lagoon-portfolio-review/review-framework.md +70 -0
  66. package/skills/lagoon-protocol-health/SKILL.md +171 -0
  67. package/skills/lagoon-protocol-health/kpi-thresholds.md +50 -0
  68. package/skills/lagoon-protocol-health/report-templates.md +149 -0
  69. package/skills/lagoon-risk-expert/SKILL.md +131 -0
  70. package/skills/lagoon-risk-expert/risk-frameworks.md +124 -0
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Lagoon Skills Type Definitions
3
+ *
4
+ * Skills are procedural knowledge modules that teach Claude HOW to use
5
+ * Lagoon MCP tools effectively. They complement MCP's data connectivity
6
+ * with domain expertise and workflow guidance.
7
+ *
8
+ * @module skills/types
9
+ */
10
+ /**
11
+ * Represents a Lagoon skill with instructions and metadata.
12
+ * Skills can be used in two contexts:
13
+ * 1. Claude Desktop: Raw SKILL.md files loaded via JSON config
14
+ * 2. Backend API: TypeScript modules injected into system prompts
15
+ */
16
+ export interface LagoonSkill {
17
+ /** Unique identifier (kebab-case) */
18
+ name: string;
19
+ /** Human-readable description for skill selection */
20
+ description: string;
21
+ /** Keywords/phrases that trigger this skill */
22
+ triggers: string[];
23
+ /** Target audience for this skill */
24
+ audience: SkillAudience;
25
+ /** Main skill instructions (content from SKILL.md) */
26
+ instructions: string;
27
+ /** Optional supporting resources */
28
+ resources?: SkillResources;
29
+ /** Skill metadata */
30
+ metadata: SkillMetadata;
31
+ }
32
+ /**
33
+ * Target audience categories for skills
34
+ */
35
+ export type SkillAudience = 'customer-new' | 'customer-existing' | 'customer-advanced' | 'internal-ops' | 'internal-bd' | 'internal-support';
36
+ /**
37
+ * Supporting resources for a skill
38
+ */
39
+ export interface SkillResources {
40
+ /** Tool usage patterns and parameters */
41
+ toolSequences?: string;
42
+ /** Domain-specific interpretation guides */
43
+ interpretation?: string;
44
+ /** Threshold definitions and criteria */
45
+ thresholds?: string;
46
+ /** Report templates */
47
+ templates?: string;
48
+ /** Additional named resources */
49
+ [key: string]: string | undefined;
50
+ }
51
+ /**
52
+ * Skill metadata for versioning and categorization
53
+ */
54
+ export interface SkillMetadata {
55
+ /** Skill version (semver) */
56
+ version: string;
57
+ /** Category for grouping */
58
+ category: SkillCategory;
59
+ /** MCP tools this skill primarily uses */
60
+ primaryTools: string[];
61
+ /** Estimated context tokens when loaded */
62
+ estimatedTokens: number;
63
+ /** Last updated date */
64
+ lastUpdated: string;
65
+ }
66
+ /**
67
+ * Skill categories for organization
68
+ */
69
+ export type SkillCategory = 'onboarding' | 'portfolio' | 'risk' | 'operations' | 'support' | 'strategy';
70
+ /**
71
+ * Result of skill detection
72
+ */
73
+ export interface SkillDetectionResult {
74
+ /** The detected skill, if any */
75
+ skill: LagoonSkill | null;
76
+ /** Confidence score (0-1) */
77
+ confidence: number;
78
+ /** Matched triggers */
79
+ matchedTriggers: string[];
80
+ }
81
+ /**
82
+ * Options for skill loading
83
+ */
84
+ export interface SkillLoadOptions {
85
+ /** Include supporting resources */
86
+ includeResources?: boolean;
87
+ /** Maximum token budget (will truncate if exceeded) */
88
+ maxTokens?: number;
89
+ /** Filter by audience */
90
+ audience?: SkillAudience[];
91
+ /** Filter by category */
92
+ category?: SkillCategory[];
93
+ }
94
+ /**
95
+ * Skill registry for managing available skills
96
+ */
97
+ export interface SkillRegistry {
98
+ /** All registered skills */
99
+ skills: LagoonSkill[];
100
+ /** Get skill by name */
101
+ getSkill(name: string): LagoonSkill | undefined;
102
+ /** Detect relevant skill for a message */
103
+ detectSkill(message: string): SkillDetectionResult;
104
+ /** Get skills filtered by options */
105
+ getSkills(options?: SkillLoadOptions): LagoonSkill[];
106
+ /** Get skill content formatted for system prompt */
107
+ getSkillPrompt(name: string, options?: SkillLoadOptions): string;
108
+ }
109
+ /**
110
+ * Options for building a skill-aware system prompt
111
+ */
112
+ export interface BuildPromptOptions {
113
+ /** Minimum confidence threshold (0-1) to include a skill. Default: 0.5 */
114
+ confidenceThreshold?: number;
115
+ /** Include skill resources in the prompt. Default: true */
116
+ includeResources?: boolean;
117
+ /** Maximum tokens for skill content. Default: no limit */
118
+ maxTokens?: number;
119
+ /** Custom separator between base prompt and skill. Default: '\n\n---\n\n' */
120
+ separator?: string;
121
+ }
122
+ /**
123
+ * Result of building a skill-aware prompt
124
+ */
125
+ export interface BuildPromptResult {
126
+ /** The complete system prompt with skill injected (if matched) */
127
+ systemPrompt: string;
128
+ /** Name of the detected skill, or null if none matched */
129
+ detectedSkill: string | null;
130
+ /** Confidence score of the detection (0 if no skill) */
131
+ confidence: number;
132
+ /** Triggers that matched in the user message */
133
+ matchedTriggers: string[];
134
+ /** Estimated tokens added by the skill (0 if no skill) */
135
+ tokensAdded: number;
136
+ }
137
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Lagoon Skills Type Definitions
3
+ *
4
+ * Skills are procedural knowledge modules that teach Claude HOW to use
5
+ * Lagoon MCP tools effectively. They complement MCP's data connectivity
6
+ * with domain expertise and workflow guidance.
7
+ *
8
+ * @module skills/types
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/skills/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * discover_tools Tool
3
+ *
4
+ * Meta-tool for progressive tool discovery.
5
+ * Enables models to search and explore available tools by category or keyword.
6
+ * Reduces initial context overhead by allowing on-demand tool loading.
7
+ *
8
+ * Use cases:
9
+ * - Discover available capabilities before making specific tool calls
10
+ * - Filter tools by category (vault, portfolio, analytics, etc.)
11
+ * - Search for tools by keyword in names or descriptions
12
+ * - Get tool input schemas for specific tools
13
+ *
14
+ * Performance: ~100-200 tokens per query. No caching needed (static data).
15
+ */
16
+ import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
17
+ import { z } from 'zod';
18
+ /**
19
+ * Input schema for discover_tools
20
+ */
21
+ export declare const discoverToolsInputSchema: z.ZodObject<{
22
+ category: z.ZodOptional<z.ZodEnum<["vault", "portfolio", "analytics", "transactions", "export", "all"]>>;
23
+ keyword: z.ZodOptional<z.ZodString>;
24
+ includeSchema: z.ZodDefault<z.ZodBoolean>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ includeSchema: boolean;
27
+ category?: "vault" | "portfolio" | "analytics" | "all" | "transactions" | "export" | undefined;
28
+ keyword?: string | undefined;
29
+ }, {
30
+ category?: "vault" | "portfolio" | "analytics" | "all" | "transactions" | "export" | undefined;
31
+ keyword?: string | undefined;
32
+ includeSchema?: boolean | undefined;
33
+ }>;
34
+ export type DiscoverToolsInput = z.infer<typeof discoverToolsInputSchema>;
35
+ /**
36
+ * Create the executeDiscoverTools function
37
+ *
38
+ * This is a pure function that doesn't require DI container
39
+ * since it only reads static tool metadata.
40
+ *
41
+ * @returns Configured tool executor function
42
+ */
43
+ export declare function createExecuteDiscoverTools(): (input: DiscoverToolsInput) => Promise<CallToolResult>;
44
+ //# sourceMappingURL=discover-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-tools.d.ts","sourceRoot":"","sources":["../../src/tools/discover-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAanC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAiC1E;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,IAAI,CAC5C,KAAK,EAAE,kBAAkB,KACtB,OAAO,CAAC,cAAc,CAAC,CAwD3B"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * discover_tools Tool
3
+ *
4
+ * Meta-tool for progressive tool discovery.
5
+ * Enables models to search and explore available tools by category or keyword.
6
+ * Reduces initial context overhead by allowing on-demand tool loading.
7
+ *
8
+ * Use cases:
9
+ * - Discover available capabilities before making specific tool calls
10
+ * - Filter tools by category (vault, portfolio, analytics, etc.)
11
+ * - Search for tools by keyword in names or descriptions
12
+ * - Get tool input schemas for specific tools
13
+ *
14
+ * Performance: ~100-200 tokens per query. No caching needed (static data).
15
+ */
16
+ import { z } from 'zod';
17
+ // Tool categories for filtering
18
+ // Maps category names to tool names that belong to each category
19
+ const TOOL_CATEGORIES = {
20
+ vault: ['get_vault_data', 'search_vaults', 'compare_vaults', 'simulate_vault'],
21
+ portfolio: ['get_user_portfolio', 'optimize_portfolio'],
22
+ analytics: ['get_vault_performance', 'get_price_history', 'analyze_risk', 'predict_yield'],
23
+ transactions: ['get_transactions'],
24
+ export: ['export_data', 'query_graphql'],
25
+ };
26
+ /**
27
+ * Input schema for discover_tools
28
+ */
29
+ export const discoverToolsInputSchema = z.object({
30
+ category: z
31
+ .enum(['vault', 'portfolio', 'analytics', 'transactions', 'export', 'all'])
32
+ .optional()
33
+ .describe('Filter tools by category. Omit or use "all" for all categories.'),
34
+ keyword: z
35
+ .string()
36
+ .optional()
37
+ .describe('Search tool names and descriptions for this keyword (case-insensitive).'),
38
+ includeSchema: z
39
+ .boolean()
40
+ .default(false)
41
+ .describe('Include input schema details. Default: false (just name + description).'),
42
+ });
43
+ /**
44
+ * Get tool registry dynamically to avoid circular dependencies
45
+ * This function imports the registry at runtime
46
+ */
47
+ async function getToolRegistry() {
48
+ // Dynamic import to avoid circular dependency
49
+ const { TOOL_REGISTRY } = await import('./registry.js');
50
+ return TOOL_REGISTRY;
51
+ }
52
+ /**
53
+ * Create the executeDiscoverTools function
54
+ *
55
+ * This is a pure function that doesn't require DI container
56
+ * since it only reads static tool metadata.
57
+ *
58
+ * @returns Configured tool executor function
59
+ */
60
+ export function createExecuteDiscoverTools() {
61
+ return async (input) => {
62
+ try {
63
+ // Get tool registry dynamically
64
+ const registry = await getToolRegistry();
65
+ // Start with all tools except discover_tools itself
66
+ let tools = registry.filter((t) => t.name !== 'discover_tools');
67
+ // Filter by category if specified
68
+ if (input.category && input.category !== 'all') {
69
+ const categoryTools = TOOL_CATEGORIES[input.category] || [];
70
+ tools = tools.filter((t) => categoryTools.includes(t.name));
71
+ }
72
+ // Filter by keyword if specified
73
+ if (input.keyword) {
74
+ const keyword = input.keyword.toLowerCase();
75
+ tools = tools.filter((t) => t.name.toLowerCase().includes(keyword) || t.description.toLowerCase().includes(keyword));
76
+ }
77
+ // Format response
78
+ const result = {
79
+ availableCategories: Object.keys(TOOL_CATEGORIES),
80
+ matchedTools: tools.map((t) => ({
81
+ name: t.name,
82
+ description: t.description,
83
+ ...(input.includeSchema ? { inputSchema: t.schema } : {}),
84
+ })),
85
+ totalTools: tools.length,
86
+ tip: tools.length === 0
87
+ ? 'No tools matched your criteria. Try a different category or keyword.'
88
+ : 'Use category or keyword filters to narrow results. Set includeSchema=true for input details.',
89
+ };
90
+ return {
91
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
92
+ isError: false,
93
+ };
94
+ }
95
+ catch (error) {
96
+ return {
97
+ content: [
98
+ {
99
+ type: 'text',
100
+ text: `Error discovering tools: ${error instanceof Error ? error.message : String(error)}`,
101
+ },
102
+ ],
103
+ isError: true,
104
+ };
105
+ }
106
+ };
107
+ }
108
+ //# sourceMappingURL=discover-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-tools.js","sourceRoot":"","sources":["../../src/tools/discover-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,SAAS,EAA0B,MAAM,KAAK,CAAC;AAkBxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAqBxD;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,MAAM,GAAG,OAAO;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1B,eAAe,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;CAC9F;AAED;;;GAGG;AAEH,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,GAAG,CAAC,EA0K9C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,GAAG,IAAI,CA8BlF;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjE"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,SAAS,EAA0B,MAAM,KAAK,CAAC;AAmBxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAqBxD;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,MAAM,GAAG,OAAO;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1B,eAAe,EAAE,CAAC,SAAS,EAAE,gBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;CAC9F;AAED;;;GAGG;AAEH,eAAO,MAAM,aAAa,EAAE,cAAc,CAAC,GAAG,CAAC,EAoL9C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,GAAG,IAAI,CA8BlF;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAEvC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjE"}
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import { ZodObject } from 'zod';
8
8
  // Tool factory functions
9
+ import { createExecuteDiscoverTools, discoverToolsInputSchema } from './discover-tools.js';
9
10
  import { createExecuteQueryGraphQL } from './query-graphql.js';
10
11
  import { createExecuteGetVaultData } from './vault-data.js';
11
12
  import { createExecuteGetUserPortfolio } from './user-portfolio.js';
@@ -29,6 +30,15 @@ import { createToolHandler } from '../utils/tool-handler.js';
29
30
  */
30
31
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
32
  export const TOOL_REGISTRY = [
33
+ {
34
+ name: 'discover_tools',
35
+ description: 'Search and discover available Lagoon MCP tools by category or keyword. ' +
36
+ 'Categories: vault, portfolio, analytics, transactions, export. ' +
37
+ 'Use this to understand available capabilities before calling specific tools. ' +
38
+ 'Performance: ~100-200 tokens. No caching needed.',
39
+ schema: discoverToolsInputSchema,
40
+ executorFactory: () => createExecuteDiscoverTools(),
41
+ },
32
42
  {
33
43
  name: 'query_graphql',
34
44
  description: 'Execute raw GraphQL queries against the Lagoon backend. ' +
@@ -62,7 +72,7 @@ export const TOOL_REGISTRY = [
62
72
  name: 'search_vaults',
63
73
  description: 'Search and filter vaults with advanced criteria and 10-minute caching. ' +
64
74
  'Supports 20+ filter options including asset, chain, TVL, curator, visibility. ' +
65
- 'Returns paginated results (default 100, max 1000) with sort options. ' +
75
+ 'Returns paginated results (default 20, max 1000) with sort options. ' +
66
76
  'Best for: vault discovery, filtering by criteria, TVL-sorted lists, multi-vault analysis. ' +
67
77
  'Performance: ~300-500 tokens per page. ' +
68
78
  'Cache key based on filter hash for efficient repeated searches.',
@@ -91,7 +101,7 @@ export const TOOL_REGISTRY = [
91
101
  'Returns detailed transaction data with timestamps, block numbers, hashes, and type-specific fields. ' +
92
102
  'Best for: analyzing historical vault activity, tracking user deposits/withdrawals, monitoring state changes, generating transaction reports. ' +
93
103
  'Performance: ~400-600 tokens per query (varies with transaction count). ' +
94
- 'Features 15-minute caching and pagination support (default 100, max 1000).',
104
+ 'Features 15-minute caching and pagination support (default 20, max 1000).',
95
105
  schema: getTransactionsInputSchema,
96
106
  executorFactory: createExecuteGetTransactions,
97
107
  },
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
@@ -267,12 +267,12 @@ export declare const exportDataInputSchema: z.ZodObject<{
267
267
  }, "strip", z.ZodTypeAny, {
268
268
  chainId: number;
269
269
  vaultAddresses: string[];
270
- dataType: "price_history" | "vaults" | "transactions" | "performance";
270
+ dataType: "transactions" | "price_history" | "vaults" | "performance";
271
271
  format: "csv" | "json";
272
272
  }, {
273
273
  chainId: number;
274
274
  vaultAddresses: string[];
275
- dataType: "price_history" | "vaults" | "transactions" | "performance";
275
+ dataType: "transactions" | "price_history" | "vaults" | "performance";
276
276
  format: "csv" | "json";
277
277
  }>;
278
278
  export declare const analyzeRiskInputSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AAGH,eAAO,MAAM,qBAAqB,aAK/B,CAAC;AAGJ,eAAO,MAAM,aAAa,aAAmE,CAAC;AAG9F,eAAO,MAAM,qBAAqB,2BAKnB,CAAC;AAGhB,eAAO,MAAM,oBAAoB,2BAIpB,CAAC;AAEd;;GAEG;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;EAGlC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;EAGlC,CAAC;AAGH,eAAO,MAAM,2BAA2B;;;;;;;;;EAQtC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyDlC,CAAC;AAGH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;EAazC,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCrC,CAAC;AAGH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAYnC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAYlC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAWhC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EASjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAYlC,CAAC;AAGH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BvC,CAAC;AAEH;;GAEG;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AAGH,eAAO,MAAM,qBAAqB,aAK/B,CAAC;AAGJ,eAAO,MAAM,aAAa,aAAmE,CAAC;AAI9F,eAAO,MAAM,qBAAqB,2BAKpB,CAAC;AAGf,eAAO,MAAM,oBAAoB,2BAIpB,CAAC;AAEd;;GAEG;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;EAGlC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;EAGlC,CAAC;AAGH,eAAO,MAAM,2BAA2B;;;;;;;;;EAQtC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyDlC,CAAC;AAGH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;EAazC,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCrC,CAAC;AAGH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAYnC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAYlC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAWhC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EASjC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAYlC,CAAC;AAGH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BvC,CAAC;AAEH;;GAEG;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
@@ -14,12 +14,13 @@ export const ethereumAddressSchema = z
14
14
  // Chain ID (positive integer)
15
15
  export const chainIdSchema = z.number().int().positive('Chain ID must be a positive integer');
16
16
  // Pagination first parameter
17
+ // Default reduced from 100 to 20 for token efficiency (~80% reduction per query)
17
18
  export const paginationFirstSchema = z
18
19
  .number()
19
20
  .int()
20
21
  .positive()
21
22
  .max(1000, 'Maximum page size is 1000')
22
- .default(100);
23
+ .default(20);
23
24
  // Pagination skip parameter
24
25
  export const paginationSkipSchema = z
25
26
  .number()
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/utils/validators.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,15 +1,28 @@
1
1
  {
2
2
  "name": "@lagoon-protocol/lagoon-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.2.0",
4
4
  "description": "MCP server for Lagoon DeFi vault analytics - FOR INFORMATIONAL USE ONLY, NOT FINANCIAL ADVICE. Natural language access to vault data, portfolios, and performance metrics",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./skills": {
14
+ "types": "./dist/skills/index.d.ts",
15
+ "import": "./dist/skills/index.js"
16
+ }
17
+ },
8
18
  "bin": {
9
19
  "lagoon-mcp": "./dist/index.js"
10
20
  },
11
21
  "files": [
12
22
  "dist",
23
+ "!dist/**/__tests__",
24
+ "!dist/**/*.test.*",
25
+ "skills",
13
26
  "README.md",
14
27
  "LICENSE"
15
28
  ],
@@ -0,0 +1,141 @@
1
+ # Lagoon Skills
2
+
3
+ Claude Skills that enhance the Lagoon MCP with procedural knowledge and domain expertise.
4
+
5
+ ## What are Skills?
6
+
7
+ Skills are specialized instruction sets that teach Claude HOW to use MCP tools effectively. While MCP provides data connectivity (tools to fetch vault data, analyze risk, etc.), Skills provide procedural knowledge (when to use which tool, how to interpret results for different audiences).
8
+
9
+ **MCP (Data Layer)** + **Skills (Knowledge Layer)** = **Domain Expert Experience**
10
+
11
+ ## Available Skills
12
+
13
+ ### Customer-Facing Skills
14
+
15
+ | Skill | Audience | Purpose | Status |
16
+ |-------|----------|---------|--------|
17
+ | `lagoon-onboarding` | New Users | Guide new users to first vault selection | Active |
18
+ | `lagoon-portfolio-review` | Existing Users | Quarterly portfolio health checks | Active |
19
+ | `lagoon-risk-expert` | Advanced Users | Comprehensive risk evaluation | Active |
20
+
21
+ ### Internal Team Skills
22
+
23
+ | Skill | Audience | Purpose | Status |
24
+ |-------|----------|---------|--------|
25
+ | `lagoon-protocol-health` | Operations | Daily/weekly KPI monitoring | Active |
26
+ | `lagoon-curator-evaluation` | Business Development | Partnership assessment with scoring | Active |
27
+ | `lagoon-customer-support` | Support Team | Support response templates | Active |
28
+
29
+ ## Skill Structure
30
+
31
+ Each skill follows the Claude Skills specification:
32
+
33
+ ```
34
+ skill-name/
35
+ ├── SKILL.md # Required: Main instructions with YAML frontmatter
36
+ └── [optional files] # Supporting resources, examples, scripts
37
+ ```
38
+
39
+ ### SKILL.md Format
40
+
41
+ ```yaml
42
+ ---
43
+ name: skill-name
44
+ description: Clear description of purpose and activation triggers
45
+ ---
46
+
47
+ # Skill Title
48
+
49
+ [Instructions that Claude follows when this skill is active]
50
+
51
+ ## When This Skill Activates
52
+ [Trigger conditions]
53
+
54
+ ## Workflow
55
+ [Step-by-step procedures]
56
+
57
+ ## Communication Guidelines
58
+ [Tone, language, disclaimers]
59
+ ```
60
+
61
+ ## Using Skills
62
+
63
+ ### With Claude.ai
64
+
65
+ 1. Navigate to Settings > Features > Skills
66
+ 2. Upload the skill folder or individual SKILL.md
67
+ 3. Skills activate automatically based on conversation context
68
+
69
+ ### With Claude Code
70
+
71
+ ```bash
72
+ # Install from marketplace (when available)
73
+ /plugin marketplace add lagoon/skills
74
+
75
+ # Or install locally
76
+ /plugin install ./skills/lagoon-onboarding
77
+ ```
78
+
79
+ ### With Claude Desktop
80
+
81
+ Add to your Claude configuration:
82
+
83
+ ```json
84
+ {
85
+ "skills": [
86
+ {
87
+ "path": "/path/to/lagoon-mcp/skills/lagoon-onboarding"
88
+ }
89
+ ]
90
+ }
91
+ ```
92
+
93
+ ## Relationship to MCP Prompts
94
+
95
+ The Lagoon MCP includes 6 prompts that provide guidance frameworks. Skills extend this by:
96
+
97
+ 1. **Adding procedural detail**: Exact tool sequences and parameters
98
+ 2. **Adapting to audiences**: Different guidance for beginners vs experts
99
+ 3. **Progressive loading**: Skills load only when relevant (~100 tokens initially)
100
+ 4. **Supporting resources**: Additional files for complex workflows
101
+
102
+ ### Migration Path
103
+
104
+ | MCP Prompt | Recommended Skill | Enhancement |
105
+ |------------|-------------------|-------------|
106
+ | `onboarding-first-vault` | `lagoon-onboarding` | Full workflow, profile assessment |
107
+ | `financial-analysis` | `lagoon-portfolio-review` | Structured review process |
108
+ | `curator-performance` | `lagoon-curator-evaluation` | Scoring rubric, deal-breakers |
109
+ | `protocol-overview` | `lagoon-protocol-health` | KPI thresholds, alerting |
110
+ | `portfolio-optimization` | `lagoon-portfolio-review` | MPT strategy guidance |
111
+ | `competitor-comparison` | (future) | Methodology, data sources |
112
+
113
+ ## Creating New Skills
114
+
115
+ 1. Create a folder: `skills/your-skill-name/`
116
+ 2. Add `SKILL.md` with frontmatter and instructions
117
+ 3. Add supporting resources as needed
118
+ 4. Test with Claude to verify activation triggers
119
+
120
+ ### Best Practices
121
+
122
+ - **Clear triggers**: Define specific activation conditions
123
+ - **Tool sequences**: Document exact tool workflows
124
+ - **User profiles**: Adapt guidance to different audience levels
125
+ - **Disclaimers**: Include appropriate legal/risk disclaimers
126
+ - **Examples**: Provide sample conversations and outputs
127
+
128
+ ## Maintenance
129
+
130
+ Skills should be versioned alongside the MCP:
131
+ - Update tool references when MCP tools change
132
+ - Review and update risk thresholds periodically
133
+ - Add new skills based on user feedback and usage patterns
134
+
135
+ ## Contributing
136
+
137
+ When creating new skills:
138
+ 1. Follow the existing structure and naming conventions
139
+ 2. Include comprehensive activation triggers
140
+ 3. Test with real MCP tool outputs
141
+ 4. Document any dependencies on specific MCP versions