mobile-device-mcp 0.2.3 → 0.2.4

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.
package/README.md CHANGED
@@ -1,9 +1,15 @@
1
- # mobile-device-mcp
1
+ <p align="center">
2
+ <img src="assets/icon.png" alt="mobile-device-mcp" width="128" height="128" />
3
+ </p>
2
4
 
3
- [![npm version](https://img.shields.io/npm/v/mobile-device-mcp)](https://www.npmjs.com/package/mobile-device-mcp)
4
- [![npm downloads](https://img.shields.io/npm/dm/mobile-device-mcp)](https://www.npmjs.com/package/mobile-device-mcp)
5
- [![GitHub stars](https://img.shields.io/github/stars/saranshbamania/mobile-device-mcp)](https://github.com/saranshbamania/mobile-device-mcp)
6
- [![License: BSL 1.1](https://img.shields.io/badge/License-BSL%201.1-blue.svg)](LICENSE)
5
+ <h1 align="center">mobile-device-mcp</h1>
6
+
7
+ <p align="center">
8
+ <a href="https://www.npmjs.com/package/mobile-device-mcp"><img src="https://img.shields.io/npm/v/mobile-device-mcp" alt="npm version" /></a>
9
+ <a href="https://www.npmjs.com/package/mobile-device-mcp"><img src="https://img.shields.io/npm/dm/mobile-device-mcp" alt="npm downloads" /></a>
10
+ <a href="https://github.com/saranshbamania/mobile-device-mcp"><img src="https://img.shields.io/github/stars/saranshbamania/mobile-device-mcp" alt="GitHub stars" /></a>
11
+ <a href="LICENSE"><img src="https://img.shields.io/badge/License-BSL%201.1-blue.svg" alt="License: BSL 1.1" /></a>
12
+ </p>
7
13
 
8
14
  MCP server that gives AI coding assistants (Claude Code, Cursor, Windsurf) the ability to **see and interact with mobile devices**. 49 tools for screenshots, UI inspection, touch interaction, AI-powered visual analysis, Flutter widget tree inspection, video recording, and test generation.
9
15
 
@@ -135,9 +141,9 @@ Copy `.mcp.json` into any mobile project -- Flutter, React Native, Kotlin, Swift
135
141
  | `get_current_app` | Get the foreground app |
136
142
  | `get_logs` | Get logcat entries with filtering |
137
143
 
138
- ### Pro (35 additional tools) -- requires license key
144
+ ### Pro (35 additional tools) -- [$9/mo](https://rzp.io/rzp/fCvY9mNK)
139
145
 
140
- Unlock all 49 tools by setting `MOBILE_MCP_LICENSE_KEY` in your `.mcp.json`:
146
+ **[Get Pro License](https://rzp.io/rzp/fCvY9mNK)** -- unlock all 49 tools. After payment, you'll receive a license key. Add it to your `.mcp.json`:
141
147
 
142
148
  ```json
143
149
  {
Binary file
@@ -0,0 +1,63 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
2
+ <defs>
3
+ <linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
4
+ <stop offset="0%" style="stop-color:#6366f1"/>
5
+ <stop offset="100%" style="stop-color:#8b5cf6"/>
6
+ </linearGradient>
7
+ <linearGradient id="screen" x1="0%" y1="0%" x2="0%" y2="100%">
8
+ <stop offset="0%" style="stop-color:#1e1b4b"/>
9
+ <stop offset="100%" style="stop-color:#312e81"/>
10
+ </linearGradient>
11
+ <linearGradient id="eye" x1="0%" y1="0%" x2="100%" y2="100%">
12
+ <stop offset="0%" style="stop-color:#06b6d4"/>
13
+ <stop offset="100%" style="stop-color:#22d3ee"/>
14
+ </linearGradient>
15
+ </defs>
16
+
17
+ <!-- Rounded square background -->
18
+ <rect x="16" y="16" width="480" height="480" rx="96" ry="96" fill="url(#bg)"/>
19
+
20
+ <!-- Phone body -->
21
+ <rect x="156" y="72" width="200" height="368" rx="24" ry="24" fill="#1e1b4b" stroke="#a5b4fc" stroke-width="4"/>
22
+
23
+ <!-- Phone screen -->
24
+ <rect x="172" y="108" width="168" height="280" rx="8" ry="8" fill="url(#screen)"/>
25
+
26
+ <!-- AI Eye on screen -->
27
+ <!-- Outer eye shape -->
28
+ <path d="M196 248 Q256 200 316 248 Q256 296 196 248 Z" fill="none" stroke="url(#eye)" stroke-width="5" stroke-linecap="round"/>
29
+
30
+ <!-- Iris -->
31
+ <circle cx="256" cy="248" r="24" fill="url(#eye)" opacity="0.3"/>
32
+
33
+ <!-- Pupil -->
34
+ <circle cx="256" cy="248" r="14" fill="#22d3ee"/>
35
+
36
+ <!-- Pupil highlight -->
37
+ <circle cx="250" cy="242" r="5" fill="#ffffff" opacity="0.7"/>
38
+
39
+ <!-- Scan lines on screen (subtle) -->
40
+ <line x1="188" y1="160" x2="244" y2="160" stroke="#4f46e5" stroke-width="3" stroke-linecap="round" opacity="0.5"/>
41
+ <line x1="188" y1="176" x2="268" y2="176" stroke="#4f46e5" stroke-width="3" stroke-linecap="round" opacity="0.4"/>
42
+ <line x1="188" y1="192" x2="228" y2="192" stroke="#4f46e5" stroke-width="3" stroke-linecap="round" opacity="0.3"/>
43
+
44
+ <!-- Bottom UI dots on screen -->
45
+ <circle cx="228" cy="340" r="6" fill="#4f46e5" opacity="0.5"/>
46
+ <circle cx="256" cy="340" r="6" fill="#22d3ee" opacity="0.8"/>
47
+ <circle cx="284" cy="340" r="6" fill="#4f46e5" opacity="0.5"/>
48
+
49
+ <!-- Connection signals from phone (left side) -->
50
+ <path d="M148 200 Q120 220 128 248" fill="none" stroke="#a5b4fc" stroke-width="3" stroke-linecap="round" opacity="0.6"/>
51
+ <path d="M136 188 Q100 216 112 252" fill="none" stroke="#a5b4fc" stroke-width="3" stroke-linecap="round" opacity="0.4"/>
52
+
53
+ <!-- Connection signals from phone (right side) -->
54
+ <path d="M364 200 Q392 220 384 248" fill="none" stroke="#a5b4fc" stroke-width="3" stroke-linecap="round" opacity="0.6"/>
55
+ <path d="M376 188 Q412 216 400 252" fill="none" stroke="#a5b4fc" stroke-width="3" stroke-linecap="round" opacity="0.4"/>
56
+
57
+ <!-- Touch indicator (tap finger) -->
58
+ <circle cx="300" cy="296" r="10" fill="#f472b6" opacity="0.6"/>
59
+ <circle cx="300" cy="296" r="18" fill="none" stroke="#f472b6" stroke-width="2" opacity="0.3"/>
60
+
61
+ <!-- Home button / bar -->
62
+ <rect x="228" y="408" width="56" height="6" rx="3" ry="3" fill="#a5b4fc" opacity="0.5"/>
63
+ </svg>
@@ -1 +1 @@
1
- {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,sCAAsC;AACtC,eAAO,MAAM,UAAU,aAoBrB,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB;;;;;;CAe/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAU7C;AAED,sCAAsC;AACtC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAMxD"}
1
+ {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAEzC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,sCAAsC;AACtC,eAAO,MAAM,UAAU,aAoBrB,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB;;;;;;CAiB/B,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAU7C;AAED,sCAAsC;AACtC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAMxD"}
package/dist/license.js CHANGED
@@ -30,11 +30,13 @@ export const PRO_UPGRADE_MESSAGE = {
30
30
  {
31
31
  type: "text",
32
32
  text: [
33
- "This is a Pro feature. Upgrade to unlock all 49 tools including AI vision, Flutter inspection, test generation, and more.",
33
+ "This is a Pro feature. Upgrade to Pro to unlock all 49 tools.",
34
34
  "",
35
- "Get your license key at: https://github.com/saranshbamania/mobile-device-mcp#pro",
35
+ "Pro includes: AI vision, Flutter inspection, iOS simulator, video recording, test generation, and more.",
36
36
  "",
37
- "Then add to your .mcp.json:",
37
+ "Get Pro: https://rzp.io/rzp/fCvY9mNK",
38
+ "",
39
+ "After payment, you'll receive a license key. Add it to your .mcp.json:",
38
40
  ' "MOBILE_MCP_LICENSE_KEY": "your-key-here"',
39
41
  ].join("\n"),
40
42
  },
@@ -1 +1 @@
1
- {"version":3,"file":"license.js","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,6CAA6C;AAC7C,+DAA+D;AAE/D,MAAM,MAAM,GAAG,qBAAqB,CAAC;AASrC,sCAAsC;AACtC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IAChC,kBAAkB;IAClB,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,4BAA4B;IAC5B,iBAAiB;IACjB,iBAAiB;IACjB,wBAAwB;IACxB,KAAK;IACL,YAAY;IACZ,YAAY;IACZ,OAAO;IACP,WAAW;IACX,WAAW;IACX,2BAA2B;IAC3B,WAAW;IACX,iBAAiB;IACjB,WAAW;IACX,UAAU;CACX,CAAC,CAAC;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE;QACP;YACE,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE;gBACJ,2HAA2H;gBAC3H,EAAE;gBACF,kFAAkF;gBAClF,EAAE;gBACF,6BAA6B;gBAC7B,6CAA6C;aAC9C,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF;IACD,OAAO,EAAE,IAAI;CACd,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAE/C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IAED,qEAAqE;IACrE,6DAA6D;IAC7D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,wCAAwC,CAAC,CAAC;IAC1E,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;IAC3F,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"license.js","sourceRoot":"","sources":["../src/license.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,6CAA6C;AAC7C,+DAA+D;AAE/D,MAAM,MAAM,GAAG,qBAAqB,CAAC;AASrC,sCAAsC;AACtC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IAChC,kBAAkB;IAClB,cAAc;IACd,iBAAiB;IACjB,iBAAiB;IACjB,4BAA4B;IAC5B,iBAAiB;IACjB,iBAAiB;IACjB,wBAAwB;IACxB,KAAK;IACL,YAAY;IACZ,YAAY;IACZ,OAAO;IACP,WAAW;IACX,WAAW;IACX,2BAA2B;IAC3B,WAAW;IACX,iBAAiB;IACjB,WAAW;IACX,UAAU;CACX,CAAC,CAAC;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE;QACP;YACE,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE;gBACJ,+DAA+D;gBAC/D,EAAE;gBACF,yGAAyG;gBACzG,EAAE;gBACF,sCAAsC;gBACtC,EAAE;gBACF,wEAAwE;gBACxE,6CAA6C;aAC9C,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF;IACD,OAAO,EAAE,IAAI;CACd,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAE/C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;IAED,qEAAqE;IACrE,6DAA6D;IAC7D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,wCAAwC,CAAC,CAAC;IAC1E,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,yDAAyD,CAAC,CAAC;IAC3F,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mobile-device-mcp",
3
- "version": "0.2.3",
3
+ "version": "0.2.4",
4
4
  "description": "MCP server that gives AI coding assistants (Claude, Cursor, Windsurf) the ability to see and interact with Android mobile devices via ADB — AI-powered visual inspection, element finding, and device automation",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",