@keystrokehq/mobbin_mcp 0.1.0 → 0.1.3

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":"action.cjs","names":["mobbinMcp","executeMobbinMcpTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { mobbinMcp } from \"./app\";\nimport { executeMobbinMcpTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return mobbinMcp.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeMobbinMcpTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,UAAU,OAAO;EACtB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,qBAAqB,MAAM,KAAgC,CAAC;EAC5F;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"action.cjs","names":["mobbinMcp","executeMobbinMcpTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { mobbinMcp } from \"./app\";\nimport { executeMobbinMcpTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: z.ZodType;\n },\n) {\n return mobbinMcp.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output as z.ZodTypeAny,\n async run(input) {\n return def.output.parse(await executeMobbinMcpTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,UAAU,OAAO;EACtB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,qBAAqB,MAAM,KAAgC,CAAC;EAC5F;CACF,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { mobbinMcp } from \"./app\";\nimport { executeMobbinMcpTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return mobbinMcp.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeMobbinMcpTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,UAAU,OAAO;EACtB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,qBAAqB,MAAM,KAAgC,CAAC;EAC5F;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { mobbinMcp } from \"./app\";\nimport { executeMobbinMcpTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: z.ZodType;\n },\n) {\n return mobbinMcp.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output as z.ZodTypeAny,\n async run(input) {\n return def.output.parse(await executeMobbinMcpTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,UAAU,OAAO;EACtB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,qBAAqB,MAAM,KAAgC,CAAC;EAC5F;CACF,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-screens.cjs","names":["z","action"],"sources":["../../src/actions/search-screens.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const MobbinMcpSearchScreensInput: z.ZodTypeAny = z.object({\n mode: z.enum([\"deep\", \"fast\"]).default(\"deep\").describe(\"Search mode. \\\"fast\\\" returns results with low latency. \\\"deep\\\" uses an AI-powered pipeline that interprets intent and scores results for relevance — ideal for nuanced queries.\").optional(),\n limit: z.number().int().default(20).describe(\"Maximum number of screens to return. Higher number of screens returned causes increased context usage.\").optional(),\n query: z.string().describe(\"Natural language search query\"),\n platform: z.enum([\"ios\", \"web\"]).describe(\"Platform to search\"),\n exclude_screen_ids: z.array(z.string()).default([]).describe(\"Screen IDs to exclude from results\").optional(),\n});\nexport const MobbinMcpSearchScreensOutput: z.ZodTypeAny = z.unknown();\n\nexport const mobbinMcpSearchScreens = action(\"MOBBIN_MCP_SEARCH_SCREENS\", {\n slug: \"mobbin_mcp-search-screens\",\n name: \"Search screens\",\n description: \"Search Mobbin for UI screens using natural language. Returns screen images inline (as base64) along with metadata including image URLs, app names, and links to Mobbin.\",\n input: MobbinMcpSearchScreensInput,\n output: MobbinMcpSearchScreensOutput,\n});\n"],"mappings":";;;AAIA,MAAa,8BAA4CA,IAAAA,EAAE,OAAO;CAChE,MAAMA,IAAAA,EAAE,KAAK,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,mLAAmL,CAAC,CAAC,SAAS;CACtP,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CAChK,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B;CAC1D,UAAUA,IAAAA,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,oBAAoB;CAC9D,oBAAoBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;AAC9G,CAAC;AACD,MAAa,+BAA6CA,IAAAA,EAAE,QAAQ;AAEpE,MAAa,yBAAyBC,eAAAA,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"search-screens.cjs","names":["z","action"],"sources":["../../src/actions/search-screens.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const MobbinMcpSearchScreensInput = z.object({\n mode: z.enum([\"deep\", \"fast\"]).default(\"deep\").describe(\"Search mode. \\\"fast\\\" returns results with low latency. \\\"deep\\\" uses an AI-powered pipeline that interprets intent and scores results for relevance — ideal for nuanced queries.\").optional(),\n limit: z.number().int().default(20).describe(\"Maximum number of screens to return. Higher number of screens returned causes increased context usage.\").optional(),\n query: z.string().describe(\"Natural language search query\"),\n platform: z.enum([\"ios\", \"web\"]).describe(\"Platform to search\"),\n exclude_screen_ids: z.array(z.string()).default([]).describe(\"Screen IDs to exclude from results\").optional(),\n});\nexport const MobbinMcpSearchScreensOutput = z.unknown();\n\nexport const mobbinMcpSearchScreens = action(\"MOBBIN_MCP_SEARCH_SCREENS\", {\n slug: \"mobbin_mcp-search-screens\",\n name: \"Search screens\",\n description: \"Search Mobbin for UI screens using natural language. Returns screen images inline (as base64) along with metadata including image URLs, app names, and links to Mobbin.\",\n input: MobbinMcpSearchScreensInput,\n output: MobbinMcpSearchScreensOutput,\n});\n"],"mappings":";;;AAIA,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,MAAMA,IAAAA,EAAE,KAAK,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,mLAAmL,CAAC,CAAC,SAAS;CACtP,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CAChK,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B;CAC1D,UAAUA,IAAAA,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,oBAAoB;CAC9D,oBAAoBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;AAC9G,CAAC;AACD,MAAa,+BAA+BA,IAAAA,EAAE,QAAQ;AAEtD,MAAa,yBAAyBC,eAAAA,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,9 +1,27 @@
1
1
  import { z } from "zod";
2
2
 
3
3
  //#region src/actions/search-screens.d.ts
4
- declare const MobbinMcpSearchScreensInput: z.ZodTypeAny;
5
- declare const MobbinMcpSearchScreensOutput: z.ZodTypeAny;
6
- declare const mobbinMcpSearchScreens: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
4
+ declare const MobbinMcpSearchScreensInput: z.ZodObject<{
5
+ mode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
6
+ deep: "deep";
7
+ fast: "fast";
8
+ }>>>;
9
+ limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
10
+ query: z.ZodString;
11
+ platform: z.ZodEnum<{
12
+ ios: "ios";
13
+ web: "web";
14
+ }>;
15
+ exclude_screen_ids: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
16
+ }, z.core.$strip>;
17
+ declare const MobbinMcpSearchScreensOutput: z.ZodUnknown;
18
+ declare const mobbinMcpSearchScreens: import("@keystrokehq/action").WorkflowActionDefinition<{
19
+ query: string;
20
+ platform: "ios" | "web";
21
+ mode?: "deep" | "fast" | undefined;
22
+ limit?: number | undefined;
23
+ exclude_screen_ids?: string[] | undefined;
24
+ }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
25
  //#endregion
8
26
  export { mobbinMcpSearchScreens };
9
27
  //# sourceMappingURL=search-screens.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-screens.d.cts","names":[],"sources":["../../src/actions/search-screens.ts"],"mappings":";;;cAIa,2BAAA,EAA6B,CAAA,CAAE,UAM1C;AAAA,cACW,4BAAA,EAA8B,CAAA,CAAE,UAAwB;AAAA,cAExD,sBAAA,gCAAsB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
1
+ {"version":3,"file":"search-screens.d.cts","names":[],"sources":["../../src/actions/search-screens.ts"],"mappings":";;;cAIa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,UAAc;AAAA,cAE1C,sBAAA,gCAAsB,wBAAA"}
@@ -1,9 +1,27 @@
1
1
  import { z } from "zod";
2
2
 
3
3
  //#region src/actions/search-screens.d.ts
4
- declare const MobbinMcpSearchScreensInput: z.ZodTypeAny;
5
- declare const MobbinMcpSearchScreensOutput: z.ZodTypeAny;
6
- declare const mobbinMcpSearchScreens: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
4
+ declare const MobbinMcpSearchScreensInput: z.ZodObject<{
5
+ mode: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
6
+ deep: "deep";
7
+ fast: "fast";
8
+ }>>>;
9
+ limit: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
10
+ query: z.ZodString;
11
+ platform: z.ZodEnum<{
12
+ ios: "ios";
13
+ web: "web";
14
+ }>;
15
+ exclude_screen_ids: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
16
+ }, z.core.$strip>;
17
+ declare const MobbinMcpSearchScreensOutput: z.ZodUnknown;
18
+ declare const mobbinMcpSearchScreens: import("@keystrokehq/action").WorkflowActionDefinition<{
19
+ query: string;
20
+ platform: "ios" | "web";
21
+ mode?: "deep" | "fast" | undefined;
22
+ limit?: number | undefined;
23
+ exclude_screen_ids?: string[] | undefined;
24
+ }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
25
  //#endregion
8
26
  export { mobbinMcpSearchScreens };
9
27
  //# sourceMappingURL=search-screens.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-screens.d.mts","names":[],"sources":["../../src/actions/search-screens.ts"],"mappings":";;;cAIa,2BAAA,EAA6B,CAAA,CAAE,UAM1C;AAAA,cACW,4BAAA,EAA8B,CAAA,CAAE,UAAwB;AAAA,cAExD,sBAAA,gCAAsB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
1
+ {"version":3,"file":"search-screens.d.mts","names":[],"sources":["../../src/actions/search-screens.ts"],"mappings":";;;cAIa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,UAAc;AAAA,cAE1C,sBAAA,gCAAsB,wBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-screens.mjs","names":[],"sources":["../../src/actions/search-screens.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const MobbinMcpSearchScreensInput: z.ZodTypeAny = z.object({\n mode: z.enum([\"deep\", \"fast\"]).default(\"deep\").describe(\"Search mode. \\\"fast\\\" returns results with low latency. \\\"deep\\\" uses an AI-powered pipeline that interprets intent and scores results for relevance — ideal for nuanced queries.\").optional(),\n limit: z.number().int().default(20).describe(\"Maximum number of screens to return. Higher number of screens returned causes increased context usage.\").optional(),\n query: z.string().describe(\"Natural language search query\"),\n platform: z.enum([\"ios\", \"web\"]).describe(\"Platform to search\"),\n exclude_screen_ids: z.array(z.string()).default([]).describe(\"Screen IDs to exclude from results\").optional(),\n});\nexport const MobbinMcpSearchScreensOutput: z.ZodTypeAny = z.unknown();\n\nexport const mobbinMcpSearchScreens = action(\"MOBBIN_MCP_SEARCH_SCREENS\", {\n slug: \"mobbin_mcp-search-screens\",\n name: \"Search screens\",\n description: \"Search Mobbin for UI screens using natural language. Returns screen images inline (as base64) along with metadata including image URLs, app names, and links to Mobbin.\",\n input: MobbinMcpSearchScreensInput,\n output: MobbinMcpSearchScreensOutput,\n});\n"],"mappings":";;AAaA,MAAa,yBAAyB,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAbuD,EAAE,OAAO;EAChE,MAAM,EAAE,KAAK,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,mLAAmL,CAAC,CAAC,SAAS;EACtP,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;EAChK,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B;EAC1D,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,oBAAoB;EAC9D,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;CAC9G,CAOS;CACP,QAPwD,EAAE,QAOlD;AACV,CAAC"}
1
+ {"version":3,"file":"search-screens.mjs","names":[],"sources":["../../src/actions/search-screens.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const MobbinMcpSearchScreensInput = z.object({\n mode: z.enum([\"deep\", \"fast\"]).default(\"deep\").describe(\"Search mode. \\\"fast\\\" returns results with low latency. \\\"deep\\\" uses an AI-powered pipeline that interprets intent and scores results for relevance — ideal for nuanced queries.\").optional(),\n limit: z.number().int().default(20).describe(\"Maximum number of screens to return. Higher number of screens returned causes increased context usage.\").optional(),\n query: z.string().describe(\"Natural language search query\"),\n platform: z.enum([\"ios\", \"web\"]).describe(\"Platform to search\"),\n exclude_screen_ids: z.array(z.string()).default([]).describe(\"Screen IDs to exclude from results\").optional(),\n});\nexport const MobbinMcpSearchScreensOutput = z.unknown();\n\nexport const mobbinMcpSearchScreens = action(\"MOBBIN_MCP_SEARCH_SCREENS\", {\n slug: \"mobbin_mcp-search-screens\",\n name: \"Search screens\",\n description: \"Search Mobbin for UI screens using natural language. Returns screen images inline (as base64) along with metadata including image URLs, app names, and links to Mobbin.\",\n input: MobbinMcpSearchScreensInput,\n output: MobbinMcpSearchScreensOutput,\n});\n"],"mappings":";;AAaA,MAAa,yBAAyB,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAbyC,EAAE,OAAO;EAClD,MAAM,EAAE,KAAK,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,SAAS,mLAAmL,CAAC,CAAC,SAAS;EACtP,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;EAChK,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B;EAC1D,UAAU,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,oBAAoB;EAC9D,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS;CAC9G,CAOS;CACP,QAP0C,EAAE,QAOpC;AACV,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keystrokehq/mobbin_mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.3",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -31,7 +31,7 @@
31
31
  }
32
32
  },
33
33
  "peerDependencies": {
34
- "@keystrokehq/keystroke": "^0.1.4",
34
+ "@keystrokehq/keystroke": ">=0.1.4",
35
35
  "zod": "^4.4.3"
36
36
  },
37
37
  "devDependencies": {