@kajidog/connpass-mcp-server 0.1.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 (68) hide show
  1. package/LICENCE +21 -0
  2. package/README.md +190 -0
  3. package/dist/apps-sdk.d.ts +8 -0
  4. package/dist/apps-sdk.d.ts.map +1 -0
  5. package/dist/apps-sdk.js +77 -0
  6. package/dist/apps-sdk.js.map +1 -0
  7. package/dist/auth/jwt.d.ts +23 -0
  8. package/dist/auth/jwt.d.ts.map +1 -0
  9. package/dist/auth/jwt.js +143 -0
  10. package/dist/auth/jwt.js.map +1 -0
  11. package/dist/config.d.ts +5 -0
  12. package/dist/config.d.ts.map +1 -0
  13. package/dist/config.js +60 -0
  14. package/dist/config.js.map +1 -0
  15. package/dist/index.d.ts +3 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +178 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/session.d.ts +9 -0
  20. package/dist/session.d.ts.map +1 -0
  21. package/dist/session.js +58 -0
  22. package/dist/session.js.map +1 -0
  23. package/dist/tools/events.d.ts +82 -0
  24. package/dist/tools/events.d.ts.map +1 -0
  25. package/dist/tools/events.js +390 -0
  26. package/dist/tools/events.js.map +1 -0
  27. package/dist/tools/formatting.d.ts +74 -0
  28. package/dist/tools/formatting.d.ts.map +1 -0
  29. package/dist/tools/formatting.js +211 -0
  30. package/dist/tools/formatting.js.map +1 -0
  31. package/dist/tools/groups.d.ts +48 -0
  32. package/dist/tools/groups.d.ts.map +1 -0
  33. package/dist/tools/groups.js +115 -0
  34. package/dist/tools/groups.js.map +1 -0
  35. package/dist/tools/index.d.ts +58 -0
  36. package/dist/tools/index.d.ts.map +1 -0
  37. package/dist/tools/index.js +21 -0
  38. package/dist/tools/index.js.map +1 -0
  39. package/dist/tools/shared.d.ts +24 -0
  40. package/dist/tools/shared.d.ts.map +1 -0
  41. package/dist/tools/shared.js +136 -0
  42. package/dist/tools/shared.js.map +1 -0
  43. package/dist/tools/users.d.ts +51 -0
  44. package/dist/tools/users.d.ts.map +1 -0
  45. package/dist/tools/users.js +252 -0
  46. package/dist/tools/users.js.map +1 -0
  47. package/dist/transports/http.d.ts +17 -0
  48. package/dist/transports/http.d.ts.map +1 -0
  49. package/dist/transports/http.js +166 -0
  50. package/dist/transports/http.js.map +1 -0
  51. package/dist/transports/sse.d.ts +21 -0
  52. package/dist/transports/sse.d.ts.map +1 -0
  53. package/dist/transports/sse.js +153 -0
  54. package/dist/transports/sse.js.map +1 -0
  55. package/dist/transports/stdio.d.ts +38 -0
  56. package/dist/transports/stdio.d.ts.map +1 -0
  57. package/dist/transports/stdio.js +29 -0
  58. package/dist/transports/stdio.js.map +1 -0
  59. package/dist/widgets/connpass-events.d.ts +29 -0
  60. package/dist/widgets/connpass-events.d.ts.map +1 -0
  61. package/dist/widgets/connpass-events.html +2269 -0
  62. package/dist/widgets/connpass-events.js +58 -0
  63. package/dist/widgets/connpass-events.js.map +1 -0
  64. package/dist/widgets/index.d.ts +6 -0
  65. package/dist/widgets/index.d.ts.map +1 -0
  66. package/dist/widgets/index.js +31 -0
  67. package/dist/widgets/index.js.map +1 -0
  68. package/package.json +58 -0
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.connpassEventsWidget = exports.CONNPASS_EVENTS_WIDGET_URI = void 0;
4
+ const node_fs_1 = require("node:fs");
5
+ const node_path_1 = require("node:path");
6
+ exports.CONNPASS_EVENTS_WIDGET_URI = "ui://connpass/widgets/events-carousel.html";
7
+ function buildWidgetMeta() {
8
+ return {
9
+ "openai/outputTemplate": exports.CONNPASS_EVENTS_WIDGET_URI,
10
+ "openai/widgetAccessible": true,
11
+ "openai/resultCanProduceWidget": true,
12
+ };
13
+ }
14
+ function loadHtmlDocument() {
15
+ const candidates = [
16
+ (0, node_path_1.resolve)(__dirname, "connpass-events.html"),
17
+ (0, node_path_1.resolve)(__dirname, "../../src/widgets/connpass-events.html"),
18
+ ];
19
+ for (const candidate of candidates) {
20
+ try {
21
+ return (0, node_fs_1.readFileSync)(candidate, "utf8");
22
+ }
23
+ catch {
24
+ // ignore and try next path
25
+ }
26
+ }
27
+ throw new Error("Connpass widget HTML could not be located. Ensure connpass-events.html is copied next to the compiled widgets or run the build step.");
28
+ }
29
+ const HTML_DOCUMENT = loadHtmlDocument();
30
+ exports.connpassEventsWidget = {
31
+ uri: exports.CONNPASS_EVENTS_WIDGET_URI,
32
+ resource: {
33
+ uri: exports.CONNPASS_EVENTS_WIDGET_URI,
34
+ name: "Connpass events carousel",
35
+ description: "Inline carousel widget with fullscreen detail view for Connpass events",
36
+ mimeType: "text/html+sky",
37
+ _meta: buildWidgetMeta(),
38
+ },
39
+ resourceTemplate: {
40
+ uriTemplate: exports.CONNPASS_EVENTS_WIDGET_URI,
41
+ name: "Connpass events carousel",
42
+ description: "Inline carousel widget with fullscreen detail view for Connpass events",
43
+ mimeType: "text/html+sky",
44
+ _meta: buildWidgetMeta(),
45
+ },
46
+ content() {
47
+ return {
48
+ uri: exports.CONNPASS_EVENTS_WIDGET_URI,
49
+ mimeType: "text/html+sky",
50
+ text: HTML_DOCUMENT,
51
+ _meta: {
52
+ ...buildWidgetMeta(),
53
+ "openai/widgetCategory": "carousel",
54
+ },
55
+ };
56
+ },
57
+ };
58
+ //# sourceMappingURL=connpass-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connpass-events.js","sourceRoot":"","sources":["../../src/widgets/connpass-events.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,yCAAoC;AAQvB,QAAA,0BAA0B,GAAG,4CAA4C,CAAC;AAEvF,SAAS,eAAe;IACtB,OAAO;QACL,uBAAuB,EAAE,kCAA0B;QACnD,yBAAyB,EAAE,IAAI;QAC/B,+BAA+B,EAAE,IAAI;KAC7B,CAAC;AACb,CAAC;AAED,SAAS,gBAAgB;IACvB,MAAM,UAAU,GAAG;QACjB,IAAA,mBAAO,EAAC,SAAS,EAAE,sBAAsB,CAAC;QAC1C,IAAA,mBAAO,EAAC,SAAS,EAAE,wCAAwC,CAAC;KAC7D,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,OAAO,IAAA,sBAAY,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,2BAA2B;QAC7B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,sIAAsI,CACvI,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;AAE5B,QAAA,oBAAoB,GAAG;IAClC,GAAG,EAAE,kCAA0B;IAC/B,QAAQ,EAAE;QACR,GAAG,EAAE,kCAA0B;QAC/B,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,wEAAwE;QACrF,QAAQ,EAAE,eAAe;QACzB,KAAK,EAAE,eAAe,EAAE;KACN;IACpB,gBAAgB,EAAE;QAChB,WAAW,EAAE,kCAA0B;QACvC,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,wEAAwE;QACrF,QAAQ,EAAE,eAAe;QACzB,KAAK,EAAE,eAAe,EAAE;KACE;IAC5B,OAAO;QACL,OAAO;YACL,GAAG,EAAE,kCAA0B;YAC/B,QAAQ,EAAE,eAAe;YACzB,IAAI,EAAE,aAAa;YACnB,KAAK,EAAE;gBACL,GAAG,eAAe,EAAE;gBACpB,uBAAuB,EAAE,UAAU;aACpC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Resource, ResourceContents, ResourceTemplate } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare function listResources(): Resource[];
3
+ export declare function listResourceTemplates(): ResourceTemplate[];
4
+ export declare function getResourceContent(uri: string): ResourceContents[number] | undefined;
5
+ export declare function getWidgetTemplateForTool(toolName: string): string | undefined;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,oCAAoC,CAAC;AAmB5C,wBAAgB,aAAa,IAAI,QAAQ,EAAE,CAE1C;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,SAAS,CAGpF;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7E"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listResources = listResources;
4
+ exports.listResourceTemplates = listResourceTemplates;
5
+ exports.getResourceContent = getResourceContent;
6
+ exports.getWidgetTemplateForTool = getWidgetTemplateForTool;
7
+ const connpass_events_js_1 = require("./connpass-events.js");
8
+ const widgets = [connpass_events_js_1.connpassEventsWidget];
9
+ const resources = widgets.map((widget) => widget.resource);
10
+ const resourceTemplates = widgets.map((widget) => widget.resourceTemplate);
11
+ const widgetContentMap = new Map([
12
+ [connpass_events_js_1.connpassEventsWidget.uri, connpass_events_js_1.connpassEventsWidget.content.bind(connpass_events_js_1.connpassEventsWidget)],
13
+ ]);
14
+ const TOOL_WIDGET_MAP = new Map([
15
+ ["search_events", connpass_events_js_1.CONNPASS_EVENTS_WIDGET_URI],
16
+ ["get_my_upcoming_events", connpass_events_js_1.CONNPASS_EVENTS_WIDGET_URI],
17
+ ]);
18
+ function listResources() {
19
+ return resources;
20
+ }
21
+ function listResourceTemplates() {
22
+ return resourceTemplates;
23
+ }
24
+ function getResourceContent(uri) {
25
+ const factory = widgetContentMap.get(uri);
26
+ return factory?.();
27
+ }
28
+ function getWidgetTemplateForTool(toolName) {
29
+ return TOOL_WIDGET_MAP.get(toolName);
30
+ }
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":";;AAuBA,sCAEC;AAED,sDAEC;AAED,gDAGC;AAED,4DAEC;AAhCD,6DAG8B;AAE9B,MAAM,OAAO,GAAG,CAAC,yCAAoB,CAAC,CAAC;AACvC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC3E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAyC;IACvE,CAAC,yCAAoB,CAAC,GAAG,EAAE,yCAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAoB,CAAC,CAAC;CACpF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAiB;IAC9C,CAAC,eAAe,EAAE,+CAA0B,CAAC;IAC7C,CAAC,wBAAwB,EAAE,+CAA0B,CAAC;CACvD,CAAC,CAAC;AAEH,SAAgB,aAAa;IAC3B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,qBAAqB;IACnC,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,OAAO,EAAE,EAAE,CAAC;AACrB,CAAC;AAED,SAAgB,wBAAwB,CAAC,QAAgB;IACvD,OAAO,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,58 @@
1
+ {
2
+ "name": "@kajidog/connpass-mcp-server",
3
+ "version": "0.1.0",
4
+ "description": "MCP server for Connpass API integration",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "connpass-mcp-server": "dist/index.js"
9
+ },
10
+ "dependencies": {
11
+ "@modelcontextprotocol/sdk": "^1.0.0",
12
+ "zod": "^3.22.0",
13
+ "@kajidog/connpass-api-client": "0.1.0"
14
+ },
15
+ "devDependencies": {
16
+ "@types/node": "^20.0.0",
17
+ "typescript": "^5.0.0"
18
+ },
19
+ "keywords": [
20
+ "mcp",
21
+ "connpass",
22
+ "api",
23
+ "server",
24
+ "model-context-protocol"
25
+ ],
26
+ "type": "commonjs",
27
+ "license": "MIT",
28
+ "repository": {
29
+ "type": "git",
30
+ "url": "https://github.com/kajidog/connpass-in-chatgpt.git",
31
+ "directory": "packages/mcp-server"
32
+ },
33
+ "bugs": {
34
+ "url": "https://github.com/kajidog/connpass-in-chatgpt/issues"
35
+ },
36
+ "homepage": "https://github.com/kajidog/connpass-in-chatgpt#readme",
37
+ "engines": {
38
+ "node": ">=18"
39
+ },
40
+ "files": [
41
+ "dist",
42
+ "README.md"
43
+ ],
44
+ "publishConfig": {
45
+ "access": "public"
46
+ },
47
+ "sideEffects": false,
48
+ "exports": {
49
+ ".": "./dist/index.js"
50
+ },
51
+ "scripts": {
52
+ "build": "tsc -b && node scripts/copy-widgets.cjs",
53
+ "dev": "tsc -b --watch",
54
+ "start": "node dist/index.js",
55
+ "lint": "eslint src --ext .ts",
56
+ "typecheck": "tsc --noEmit"
57
+ }
58
+ }