@ampeco/public-api-mcp 0.2.2 → 0.3.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 (59) hide show
  1. package/README.md +235 -4
  2. package/dist/build/optimizer.d.ts.map +1 -1
  3. package/dist/build/optimizer.js +82 -21
  4. package/dist/build/optimizer.js.map +1 -1
  5. package/dist/build/parser.d.ts.map +1 -1
  6. package/dist/build/parser.js +74 -1
  7. package/dist/build/parser.js.map +1 -1
  8. package/dist/cli/index.js +25 -11
  9. package/dist/cli/index.js.map +1 -1
  10. package/dist/generated/build-stats.json +5 -5
  11. package/dist/generated/endpoints.json +29214 -20896
  12. package/dist/generated/schemas.d.ts +7530 -2789
  13. package/dist/generated/schemas.d.ts.map +1 -1
  14. package/dist/generated/schemas.js +1443 -590
  15. package/dist/generated/schemas.js.map +1 -1
  16. package/dist/generated/schemas.ts +1447 -596
  17. package/dist/server/factory.d.ts +2 -1
  18. package/dist/server/factory.d.ts.map +1 -1
  19. package/dist/server/factory.js +17 -206
  20. package/dist/server/factory.js.map +1 -1
  21. package/dist/server/factory.test.js +62 -4
  22. package/dist/server/factory.test.js.map +1 -1
  23. package/dist/server/http.d.ts +2 -1
  24. package/dist/server/http.d.ts.map +1 -1
  25. package/dist/server/http.js +8 -2
  26. package/dist/server/http.js.map +1 -1
  27. package/dist/server/index.d.ts +2 -0
  28. package/dist/server/index.d.ts.map +1 -1
  29. package/dist/server/index.js +9 -1388
  30. package/dist/server/index.js.map +1 -1
  31. package/dist/server/instructions.d.ts +13 -0
  32. package/dist/server/instructions.d.ts.map +1 -0
  33. package/dist/server/instructions.js +146 -0
  34. package/dist/server/instructions.js.map +1 -0
  35. package/dist/server/resources/handlers.d.ts +31 -0
  36. package/dist/server/resources/handlers.d.ts.map +1 -0
  37. package/dist/server/resources/handlers.js +113 -0
  38. package/dist/server/resources/handlers.js.map +1 -0
  39. package/dist/server/resources/handlers.test.d.ts +6 -0
  40. package/dist/server/resources/handlers.test.d.ts.map +1 -0
  41. package/dist/server/resources/handlers.test.js +203 -0
  42. package/dist/server/resources/handlers.test.js.map +1 -0
  43. package/dist/server/resources/native.d.ts +11 -0
  44. package/dist/server/resources/native.d.ts.map +1 -0
  45. package/dist/server/resources/native.js +31 -0
  46. package/dist/server/resources/native.js.map +1 -0
  47. package/dist/server/resources/tools.d.ts +11 -0
  48. package/dist/server/resources/tools.d.ts.map +1 -0
  49. package/dist/server/resources/tools.js +41 -0
  50. package/dist/server/resources/tools.js.map +1 -0
  51. package/dist/server/stdio.d.ts +2 -1
  52. package/dist/server/stdio.d.ts.map +1 -1
  53. package/dist/server/stdio.js +8 -2
  54. package/dist/server/stdio.js.map +1 -1
  55. package/dist/server/types.d.ts +36 -0
  56. package/dist/server/types.d.ts.map +1 -0
  57. package/dist/server/types.js +6 -0
  58. package/dist/server/types.js.map +1 -0
  59. package/package.json +3 -2
package/dist/cli/index.js CHANGED
@@ -14,19 +14,23 @@ Usage:
14
14
  ampeco-api-mcp [options]
15
15
 
16
16
  Options:
17
- --stdio Run in stdio mode (for Claude Desktop, NPX)
18
- --http Run in HTTP mode (for remote access)
19
- --hostname <url> Target API hostname (required for stdio mode)
20
- --token <token> Bearer token for API authentication (stdio mode)
21
- --port <port> Port for HTTP server (default: 3000)
22
- --help Show this help message
17
+ --stdio Run in stdio mode (for Claude Desktop, NPX)
18
+ --http Run in HTTP mode (for remote access)
19
+ --hostname <url> Target API hostname (required for stdio mode)
20
+ --token <token> Bearer token for API authentication (stdio mode)
21
+ --port <port> Port for HTTP server (default: 3000)
22
+ --emulate-resources-via-tools Use tool emulation instead of native MCP resources (required for Claude Desktop)
23
+ --help Show this help message
23
24
 
24
25
  Examples:
25
- Stdio mode (local):
26
+ Stdio mode with native resources:
26
27
  ampeco-api-mcp --stdio --hostname http://demo.charge.alex2.dev.ampeco.tech --token $AMPECO_TOKEN
27
28
 
29
+ Stdio mode with tool emulation (Claude Desktop):
30
+ ampeco-api-mcp --stdio --hostname http://demo.charge.alex2.dev.ampeco.tech --token $AMPECO_TOKEN --emulate-resources-via-tools
31
+
28
32
  HTTP mode (remote):
29
- ampeco-api-mcp --http --port 3001
33
+ ampeco-api-mcp --http --port 3001 --emulate-resources-via-tools
30
34
 
31
35
  Environment Variables:
32
36
  AMPECO_BEARER_TOKEN Bearer token (alternative to --token)
@@ -45,6 +49,7 @@ async function main() {
45
49
  port: { type: 'string', default: '3000' },
46
50
  hostname: { type: 'string' },
47
51
  token: { type: 'string' },
52
+ 'emulate-resources-via-tools': { type: 'boolean', default: false },
48
53
  help: { type: 'boolean', default: false },
49
54
  },
50
55
  allowPositionals: false,
@@ -63,12 +68,14 @@ async function main() {
63
68
  }
64
69
  // Default to stdio if neither specified (for NPX compatibility)
65
70
  const useStdio = values.stdio || !values.http;
71
+ // Extract emulate-resources-via-tools flag
72
+ const emulateResourcesViaTools = values['emulate-resources-via-tools'] || false;
66
73
  if (useStdio) {
67
74
  // Stdio mode: requires hostname and token
68
75
  if (!values.hostname) {
69
76
  console.error('Error: --hostname is required in stdio mode');
70
77
  console.error('\nUsage:');
71
- console.error(' ampeco-api-mcp --stdio --hostname <hostname> [--token <token>]');
78
+ console.error(' ampeco-api-mcp --stdio --hostname <hostname> [--token <token>] [--emulate-resources-via-tools]');
72
79
  console.error('\nExample:');
73
80
  console.error(' ampeco-api-mcp --stdio --hostname http://demo.charge.alex2.dev.ampeco.tech --token $AMPECO_TOKEN');
74
81
  console.error('\nNote: Token can also be provided via AMPECO_BEARER_TOKEN environment variable');
@@ -79,7 +86,11 @@ async function main() {
79
86
  console.error('Warning: No bearer token provided. API requests may fail without authentication.');
80
87
  console.error('Provide token via --token argument or AMPECO_BEARER_TOKEN environment variable.\n');
81
88
  }
82
- await startStdioServer(token, values.hostname);
89
+ await startStdioServer({
90
+ bearerToken: token,
91
+ hostname: values.hostname,
92
+ emulateResourcesViaTools,
93
+ });
83
94
  }
84
95
  else {
85
96
  // HTTP mode: requires port
@@ -89,7 +100,10 @@ async function main() {
89
100
  console.error('Port must be a number between 1 and 65535');
90
101
  process.exit(1);
91
102
  }
92
- await startHttpServer(port);
103
+ await startHttpServer({
104
+ port,
105
+ emulateResourcesViaTools,
106
+ });
93
107
  }
94
108
  }
95
109
  main().catch((error) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  {
2
- "totalEndpoints": 445,
3
- "originalSize": 815026,
4
- "optimizedSize": 537657,
5
- "reductionPercent": 34.03,
6
- "buildDuration": 599
2
+ "totalEndpoints": 443,
3
+ "originalSize": 2500150,
4
+ "optimizedSize": 747039,
5
+ "reductionPercent": 70.12,
6
+ "buildDuration": 733
7
7
  }