@nordsym/apiclaw 1.3.0 → 1.3.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"open-apis.d.ts","sourceRoot":"","sources":["../src/open-apis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC;IAC9C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC;CAC7D;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CA6GlD,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwD7F;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAO3G"}
1
+ {"version":3,"file":"open-apis.d.ts","sourceRoot":"","sources":["../src/open-apis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC;IAC9C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC;CAC7D;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CA0IlD,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC1B,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwF7F;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAO3G"}
package/dist/open-apis.js CHANGED
@@ -112,6 +112,32 @@ export const openAPIs = {
112
112
  },
113
113
  },
114
114
  },
115
+ // Kroki - Diagrams as code (returns URL, not JSON)
116
+ kroki: {
117
+ name: 'Kroki',
118
+ description: 'Generate diagram URLs from text (Mermaid, PlantUML, GraphViz, C4)',
119
+ baseUrl: 'https://kroki.io',
120
+ actions: {
121
+ render: {
122
+ method: 'GET',
123
+ path: () => '', // Custom handling
124
+ transform: (_, params) => {
125
+ const type = params.type || 'mermaid';
126
+ const format = params.format || 'svg';
127
+ const diagram = params.diagram || '';
128
+ // Base64url encode the diagram
129
+ const encoded = Buffer.from(diagram).toString('base64url');
130
+ const url = `https://kroki.io/${type}/${format}/${encoded}`;
131
+ return {
132
+ url,
133
+ type,
134
+ format,
135
+ note: 'Open this URL to see/download the diagram',
136
+ };
137
+ },
138
+ },
139
+ },
140
+ },
115
141
  };
116
142
  /**
117
143
  * Check if a provider is an open API
@@ -148,6 +174,34 @@ export async function executeOpenAPI(providerId, action, params) {
148
174
  };
149
175
  }
150
176
  try {
177
+ // Special handling for Kroki - no fetch needed, just compute URL
178
+ if (providerId === 'kroki') {
179
+ const type = params.type || 'mermaid';
180
+ const format = params.format || 'svg';
181
+ const diagram = params.diagram || '';
182
+ if (!diagram) {
183
+ return {
184
+ success: false,
185
+ provider: providerId,
186
+ action,
187
+ error: 'Missing required param: diagram',
188
+ };
189
+ }
190
+ const encoded = Buffer.from(diagram).toString('base64url');
191
+ const diagramUrl = `https://kroki.io/${type}/${format}/${encoded}`;
192
+ return {
193
+ success: true,
194
+ provider: providerId,
195
+ action,
196
+ data: {
197
+ url: diagramUrl,
198
+ type,
199
+ format,
200
+ supported_types: ['mermaid', 'plantuml', 'graphviz', 'c4plantuml', 'blockdiag', 'bpmn', 'excalidraw'],
201
+ supported_formats: ['svg', 'png', 'pdf'],
202
+ },
203
+ };
204
+ }
151
205
  const url = config.baseUrl + actionConfig.path(params);
152
206
  const response = await fetch(url, { method: actionConfig.method });
153
207
  if (!response.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"open-apis.js","sourceRoot":"","sources":["../src/open-apis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-apis.js","sourceRoot":"","sources":["../src/open-apis.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nordsym/apiclaw",
3
- "version": "1.3.0",
3
+ "version": "1.3.1",
4
4
  "description": "Agent-native API discovery and Direct Call execution via MCP",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
package/src/open-apis.ts CHANGED
@@ -128,6 +128,35 @@ export const openAPIs: Record<string, OpenAPIConfig> = {
128
128
  },
129
129
  },
130
130
  },
131
+
132
+ // Kroki - Diagrams as code (returns URL, not JSON)
133
+ kroki: {
134
+ name: 'Kroki',
135
+ description: 'Generate diagram URLs from text (Mermaid, PlantUML, GraphViz, C4)',
136
+ baseUrl: 'https://kroki.io',
137
+ actions: {
138
+ render: {
139
+ method: 'GET',
140
+ path: () => '', // Custom handling
141
+ transform: (_, params) => {
142
+ const type = params.type || 'mermaid';
143
+ const format = params.format || 'svg';
144
+ const diagram = params.diagram || '';
145
+
146
+ // Base64url encode the diagram
147
+ const encoded = Buffer.from(diagram).toString('base64url');
148
+ const url = `https://kroki.io/${type}/${format}/${encoded}`;
149
+
150
+ return {
151
+ url,
152
+ type,
153
+ format,
154
+ note: 'Open this URL to see/download the diagram',
155
+ };
156
+ },
157
+ },
158
+ },
159
+ },
131
160
  };
132
161
 
133
162
  /**
@@ -175,6 +204,38 @@ export async function executeOpenAPI(
175
204
  }
176
205
 
177
206
  try {
207
+ // Special handling for Kroki - no fetch needed, just compute URL
208
+ if (providerId === 'kroki') {
209
+ const type = params.type || 'mermaid';
210
+ const format = params.format || 'svg';
211
+ const diagram = params.diagram || '';
212
+
213
+ if (!diagram) {
214
+ return {
215
+ success: false,
216
+ provider: providerId,
217
+ action,
218
+ error: 'Missing required param: diagram',
219
+ };
220
+ }
221
+
222
+ const encoded = Buffer.from(diagram).toString('base64url');
223
+ const diagramUrl = `https://kroki.io/${type}/${format}/${encoded}`;
224
+
225
+ return {
226
+ success: true,
227
+ provider: providerId,
228
+ action,
229
+ data: {
230
+ url: diagramUrl,
231
+ type,
232
+ format,
233
+ supported_types: ['mermaid', 'plantuml', 'graphviz', 'c4plantuml', 'blockdiag', 'bpmn', 'excalidraw'],
234
+ supported_formats: ['svg', 'png', 'pdf'],
235
+ },
236
+ };
237
+ }
238
+
178
239
  const url = config.baseUrl + actionConfig.path(params);
179
240
  const response = await fetch(url, { method: actionConfig.method });
180
241