@exileum/meta-mcp 6.0.0 → 8.0.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 (108) hide show
  1. package/README.md +44 -18
  2. package/dist/constants/fields.d.ts +6 -0
  3. package/dist/constants/fields.d.ts.map +1 -0
  4. package/dist/constants/fields.js +25 -0
  5. package/dist/constants/fields.js.map +1 -0
  6. package/dist/http-transport.d.ts +20 -0
  7. package/dist/http-transport.d.ts.map +1 -0
  8. package/dist/http-transport.js +228 -0
  9. package/dist/http-transport.js.map +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +77 -82
  12. package/dist/index.js.map +1 -1
  13. package/dist/prompts/index.d.ts +56 -0
  14. package/dist/prompts/index.d.ts.map +1 -1
  15. package/dist/prompts/index.js +264 -41
  16. package/dist/prompts/index.js.map +1 -1
  17. package/dist/register-all.d.ts +4 -0
  18. package/dist/register-all.d.ts.map +1 -0
  19. package/dist/register-all.js +41 -0
  20. package/dist/register-all.js.map +1 -0
  21. package/dist/resources/instagram.d.ts.map +1 -1
  22. package/dist/resources/instagram.js +13 -4
  23. package/dist/resources/instagram.js.map +1 -1
  24. package/dist/resources/threads.d.ts.map +1 -1
  25. package/dist/resources/threads.js +13 -4
  26. package/dist/resources/threads.js.map +1 -1
  27. package/dist/services/meta-client.d.ts +76 -3
  28. package/dist/services/meta-client.d.ts.map +1 -1
  29. package/dist/services/meta-client.js +330 -46
  30. package/dist/services/meta-client.js.map +1 -1
  31. package/dist/shutdown.d.ts +18 -0
  32. package/dist/shutdown.d.ts.map +1 -0
  33. package/dist/shutdown.js +60 -0
  34. package/dist/shutdown.js.map +1 -0
  35. package/dist/tools/annotations.d.ts +6 -0
  36. package/dist/tools/annotations.d.ts.map +1 -0
  37. package/dist/tools/annotations.js +27 -0
  38. package/dist/tools/annotations.js.map +1 -0
  39. package/dist/tools/instagram/comments.d.ts.map +1 -1
  40. package/dist/tools/instagram/comments.js +75 -50
  41. package/dist/tools/instagram/comments.js.map +1 -1
  42. package/dist/tools/instagram/hashtags.d.ts +1 -0
  43. package/dist/tools/instagram/hashtags.d.ts.map +1 -1
  44. package/dist/tools/instagram/hashtags.js +54 -36
  45. package/dist/tools/instagram/hashtags.js.map +1 -1
  46. package/dist/tools/instagram/media.d.ts.map +1 -1
  47. package/dist/tools/instagram/media.js +53 -34
  48. package/dist/tools/instagram/media.js.map +1 -1
  49. package/dist/tools/instagram/mentions.d.ts.map +1 -1
  50. package/dist/tools/instagram/mentions.js +22 -17
  51. package/dist/tools/instagram/mentions.js.map +1 -1
  52. package/dist/tools/instagram/messaging.d.ts.map +1 -1
  53. package/dist/tools/instagram/messaging.js +74 -50
  54. package/dist/tools/instagram/messaging.js.map +1 -1
  55. package/dist/tools/instagram/profile.d.ts +2 -0
  56. package/dist/tools/instagram/profile.d.ts.map +1 -1
  57. package/dist/tools/instagram/profile.js +63 -43
  58. package/dist/tools/instagram/profile.js.map +1 -1
  59. package/dist/tools/instagram/publishing.d.ts.map +1 -1
  60. package/dist/tools/instagram/publishing.js +202 -139
  61. package/dist/tools/instagram/publishing.js.map +1 -1
  62. package/dist/tools/meta/auth.d.ts.map +1 -1
  63. package/dist/tools/meta/auth.js +63 -21
  64. package/dist/tools/meta/auth.js.map +1 -1
  65. package/dist/tools/threads/insights.d.ts.map +1 -1
  66. package/dist/tools/threads/insights.js +22 -15
  67. package/dist/tools/threads/insights.js.map +1 -1
  68. package/dist/tools/threads/media.d.ts.map +1 -1
  69. package/dist/tools/threads/media.js +42 -70
  70. package/dist/tools/threads/media.js.map +1 -1
  71. package/dist/tools/threads/mentions.d.ts.map +1 -1
  72. package/dist/tools/threads/mentions.js +15 -16
  73. package/dist/tools/threads/mentions.js.map +1 -1
  74. package/dist/tools/threads/profile.d.ts +2 -0
  75. package/dist/tools/threads/profile.d.ts.map +1 -1
  76. package/dist/tools/threads/profile.js +18 -3
  77. package/dist/tools/threads/profile.js.map +1 -1
  78. package/dist/tools/threads/publishing.d.ts.map +1 -1
  79. package/dist/tools/threads/publishing.js +260 -157
  80. package/dist/tools/threads/publishing.js.map +1 -1
  81. package/dist/tools/threads/replies.d.ts.map +1 -1
  82. package/dist/tools/threads/replies.js +55 -45
  83. package/dist/tools/threads/replies.js.map +1 -1
  84. package/dist/utils/container.d.ts +16 -4
  85. package/dist/utils/container.d.ts.map +1 -1
  86. package/dist/utils/container.js +36 -6
  87. package/dist/utils/container.js.map +1 -1
  88. package/dist/utils/errors.d.ts +23 -3
  89. package/dist/utils/errors.d.ts.map +1 -1
  90. package/dist/utils/errors.js +32 -2
  91. package/dist/utils/errors.js.map +1 -1
  92. package/dist/utils/logger.d.ts +28 -0
  93. package/dist/utils/logger.d.ts.map +1 -0
  94. package/dist/utils/logger.js +32 -0
  95. package/dist/utils/logger.js.map +1 -0
  96. package/dist/utils/params.d.ts +3 -0
  97. package/dist/utils/params.d.ts.map +1 -0
  98. package/dist/utils/params.js +14 -0
  99. package/dist/utils/params.js.map +1 -0
  100. package/dist/utils/progress.d.ts +42 -0
  101. package/dist/utils/progress.d.ts.map +1 -0
  102. package/dist/utils/progress.js +35 -0
  103. package/dist/utils/progress.js.map +1 -0
  104. package/dist/utils/response.d.ts +11 -0
  105. package/dist/utils/response.d.ts.map +1 -0
  106. package/dist/utils/response.js +6 -0
  107. package/dist/utils/response.js.map +1 -0
  108. package/package.json +5 -4
@@ -0,0 +1,28 @@
1
+ export type LogLevel = "debug" | "info" | "warning" | "error";
2
+ export interface Logger {
3
+ debug(data: unknown): void;
4
+ info(data: unknown): void;
5
+ warning(data: unknown): void;
6
+ error(data: unknown): void;
7
+ }
8
+ export interface LoggingServer {
9
+ sendLoggingMessage(params: {
10
+ level: LogLevel;
11
+ logger?: string;
12
+ data: unknown;
13
+ }): Promise<void>;
14
+ }
15
+ export declare const NOOP_LOGGER: Logger;
16
+ /**
17
+ * Build a {@link Logger} that forwards each call to the MCP structured-logging
18
+ * channel via `server.sendLoggingMessage()` (emitted as a `notifications/message`
19
+ * event). Requires the server to have declared `capabilities: { logging: {} }`;
20
+ * without it the SDK drops the message silently. The SDK also filters out levels
21
+ * below any client-set `logging/setLevel`, so callers don't gate by level here.
22
+ *
23
+ * Emission is fire-and-forget with a swallowed rejection: a closed transport
24
+ * (client disconnect, cancelled request) must never turn a successful API
25
+ * operation into a failure — same contract as `makeProgressNotifier`.
26
+ */
27
+ export declare function createMcpLogger(server: LoggingServer, name?: string): Logger;
28
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAID,MAAM,WAAW,aAAa;IAC5B,kBAAkB,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,QAAQ,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,OAAO,CAAC;KACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnB;AAGD,eAAO,MAAM,WAAW,EAAE,MAKzB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,SAAa,GAAG,MAAM,CAYhF"}
@@ -0,0 +1,32 @@
1
+ // Default when no server-backed logger is injected (tests, sandbox); lets call sites skip null-checks.
2
+ export const NOOP_LOGGER = {
3
+ debug() { },
4
+ info() { },
5
+ warning() { },
6
+ error() { },
7
+ };
8
+ /**
9
+ * Build a {@link Logger} that forwards each call to the MCP structured-logging
10
+ * channel via `server.sendLoggingMessage()` (emitted as a `notifications/message`
11
+ * event). Requires the server to have declared `capabilities: { logging: {} }`;
12
+ * without it the SDK drops the message silently. The SDK also filters out levels
13
+ * below any client-set `logging/setLevel`, so callers don't gate by level here.
14
+ *
15
+ * Emission is fire-and-forget with a swallowed rejection: a closed transport
16
+ * (client disconnect, cancelled request) must never turn a successful API
17
+ * operation into a failure — same contract as `makeProgressNotifier`.
18
+ */
19
+ export function createMcpLogger(server, name = "meta-mcp") {
20
+ const emit = (level) => (data) => {
21
+ void server
22
+ .sendLoggingMessage({ level, logger: name, data })
23
+ .catch(() => { });
24
+ };
25
+ return {
26
+ debug: emit("debug"),
27
+ info: emit("info"),
28
+ warning: emit("warning"),
29
+ error: emit("error"),
30
+ };
31
+ }
32
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAoBA,uGAAuG;AACvG,MAAM,CAAC,MAAM,WAAW,GAAW;IACjC,KAAK,KAAI,CAAC;IACV,IAAI,KAAI,CAAC;IACT,OAAO,KAAI,CAAC;IACZ,KAAK,KAAI,CAAC;CACX,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,MAAqB,EAAE,IAAI,GAAG,UAAU;IACtE,MAAM,IAAI,GAAG,CAAC,KAAe,EAAE,EAAE,CAAC,CAAC,IAAa,EAAQ,EAAE;QACxD,KAAK,MAAM;aACR,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;aACjD,KAAK,CAAC,GAAG,EAAE,GAAiB,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;QACpB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;QACxB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;KACrB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { FormParamValue, FormParams } from "../services/meta-client.js";
2
+ export declare function buildParams(required: FormParams, optional: Record<string, FormParamValue | undefined>): FormParams;
3
+ //# sourceMappingURL=params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.d.ts","sourceRoot":"","sources":["../../src/utils/params.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAM7E,wBAAgB,WAAW,CACzB,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,CAAC,GACnD,UAAU,CAQZ"}
@@ -0,0 +1,14 @@
1
+ // Skips only `undefined`, not the rest of the falsy set — `if (x)` checks
2
+ // silently dropped `0` (#32 thumb_offset bug), `false`, and `""`. Note that
3
+ // `null` and `""` survive here but are still dropped by `appendFormParams`
4
+ // at the wire layer; use `undefined` as the canonical "omit this key" signal.
5
+ export function buildParams(required, optional) {
6
+ const params = { ...required };
7
+ for (const [key, value] of Object.entries(optional)) {
8
+ if (value !== undefined) {
9
+ params[key] = value;
10
+ }
11
+ }
12
+ return params;
13
+ }
14
+ //# sourceMappingURL=params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/utils/params.ts"],"names":[],"mappings":"AAEA,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,8EAA8E;AAC9E,MAAM,UAAU,WAAW,CACzB,QAAoB,EACpB,QAAoD;IAEpD,MAAM,MAAM,GAAe,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { ContainerProgressCallback } from "./container.js";
2
+ export interface ProgressExtra {
3
+ _meta?: {
4
+ progressToken?: string | number;
5
+ };
6
+ sendNotification: (notification: {
7
+ method: "notifications/progress";
8
+ params: {
9
+ progressToken: string | number;
10
+ progress: number;
11
+ total?: number;
12
+ message?: string;
13
+ };
14
+ }) => Promise<void>;
15
+ }
16
+ /**
17
+ * `ContainerProgressCallback` with an attached `.stop()` for lifecycle control.
18
+ * Calling `.stop()` makes subsequent invocations no-ops — required for the
19
+ * `Promise.all`-parallel carousel case, where a rejected child can leave its
20
+ * sibling polls running and emitting `notifications/progress` after the tool
21
+ * call has already returned (MCP forbids progress after request completion).
22
+ */
23
+ export type ProgressNotifier = ContainerProgressCallback & {
24
+ stop: () => void;
25
+ };
26
+ /**
27
+ * Build a `ProgressNotifier` that forwards each poll-loop emission as an MCP
28
+ * `notifications/progress` event, or `undefined` when no progressToken was
29
+ * attached (lets callers pass the result straight to `{ onProgress }` without
30
+ * null-checking).
31
+ *
32
+ * `mode: "shared"` replaces the caller-supplied `progress`/`total` with an
33
+ * internal monotonically-increasing counter (and omits `total`) — required
34
+ * when multiple `pollContainerStatus` calls run in parallel via `Promise.all`,
35
+ * since MCP requires strictly increasing values per progressToken.
36
+ *
37
+ * Callers should invoke `.stop()` in a `finally` block once the tool call has
38
+ * completed (success or failure). For sequential single-poll tools this is a
39
+ * defensive no-op; for parallel carousel flows it prevents leaked emissions.
40
+ */
41
+ export declare function makeProgressNotifier(extra: ProgressExtra | undefined, mode?: "single" | "shared"): ProgressNotifier | undefined;
42
+ //# sourceMappingURL=progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/utils/progress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAIhE,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE;QACN,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KACjC,CAAC;IACF,gBAAgB,EAAE,CAAC,YAAY,EAAE;QAC/B,MAAM,EAAE,wBAAwB,CAAC;QACjC,MAAM,EAAE;YACN,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;YAC/B,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,yBAAyB,GAAG;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAEhF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,IAAI,GAAE,QAAQ,GAAG,QAAmB,GACnC,gBAAgB,GAAG,SAAS,CAiB9B"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Build a `ProgressNotifier` that forwards each poll-loop emission as an MCP
3
+ * `notifications/progress` event, or `undefined` when no progressToken was
4
+ * attached (lets callers pass the result straight to `{ onProgress }` without
5
+ * null-checking).
6
+ *
7
+ * `mode: "shared"` replaces the caller-supplied `progress`/`total` with an
8
+ * internal monotonically-increasing counter (and omits `total`) — required
9
+ * when multiple `pollContainerStatus` calls run in parallel via `Promise.all`,
10
+ * since MCP requires strictly increasing values per progressToken.
11
+ *
12
+ * Callers should invoke `.stop()` in a `finally` block once the tool call has
13
+ * completed (success or failure). For sequential single-poll tools this is a
14
+ * defensive no-op; for parallel carousel flows it prevents leaked emissions.
15
+ */
16
+ export function makeProgressNotifier(extra, mode = "single") {
17
+ const token = extra?._meta?.progressToken;
18
+ if (extra === undefined || token === undefined)
19
+ return undefined;
20
+ let counter = 0;
21
+ let alive = true;
22
+ const emit = (progress, total, message) => {
23
+ if (!alive)
24
+ return;
25
+ const params = mode === "shared"
26
+ ? { progressToken: token, progress: ++counter, message }
27
+ : { progressToken: token, progress, total, message };
28
+ // Transport may have closed (client disconnect, request cancelled) —
29
+ // a rejection must not propagate or it would fail a successful upload.
30
+ void extra.sendNotification({ method: "notifications/progress", params })
31
+ .catch(() => { });
32
+ };
33
+ return Object.assign(emit, { stop: () => { alive = false; } });
34
+ }
35
+ //# sourceMappingURL=progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/utils/progress.ts"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAgC,EAChC,OAA4B,QAAQ;IAEpC,MAAM,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjE,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,MAAM,IAAI,GAA8B,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACnE,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ;YAC9B,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;YACxD,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACvD,qEAAqE;QACrE,uEAAuE;QACvE,KAAK,KAAK,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC;aACtE,KAAK,CAAC,GAAG,EAAE,GAAiB,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { RateLimit } from "../services/meta-client.js";
2
+ export interface McpToolResult {
3
+ [key: string]: unknown;
4
+ content: {
5
+ type: "text";
6
+ text: string;
7
+ }[];
8
+ isError?: boolean;
9
+ }
10
+ export declare function formatResponse(data: Record<string, unknown>, rateLimit?: RateLimit): McpToolResult;
11
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/utils/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,CAAC,EAAE,SAAS,GACpB,aAAa,CAIf"}
@@ -0,0 +1,6 @@
1
+ export function formatResponse(data, rateLimit) {
2
+ return {
3
+ content: [{ type: "text", text: JSON.stringify({ ...data, _rateLimit: rateLimit }, null, 2) }],
4
+ };
5
+ }
6
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../src/utils/response.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,cAAc,CAC5B,IAA6B,EAC7B,SAAqB;IAErB,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KAC/F,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exileum/meta-mcp",
3
- "version": "6.0.0",
3
+ "version": "8.0.0",
4
4
  "mcpName": "io.github.exileum/meta",
5
5
  "description": "Enables AI assistants to manage Instagram and Threads accounts — publish content, handle comments, view insights, search hashtags, and manage DMs through the Meta Graph API",
6
6
  "type": "module",
@@ -30,7 +30,8 @@
30
30
  "lint": "eslint . --max-warnings 0",
31
31
  "lint:fix": "eslint . --fix",
32
32
  "test": "vitest run",
33
- "test:watch": "vitest"
33
+ "test:watch": "vitest",
34
+ "prepublishOnly": "node scripts/check-versions.mjs && npm run build"
34
35
  },
35
36
  "keywords": [
36
37
  "mcp",
@@ -64,9 +65,9 @@
64
65
  "ip-address": "^10.1.1"
65
66
  },
66
67
  "devDependencies": {
67
- "@eslint/js": "^9.39.4",
68
+ "@eslint/js": "^10.0.1",
68
69
  "@types/node": "^25.6.0",
69
- "eslint": "^9.39.4",
70
+ "eslint": "^10.4.0",
70
71
  "globals": "^17.6.0",
71
72
  "tsx": "^4.21.0",
72
73
  "typescript": "^6.0.3",