@parallax-rn/mcp 0.1.0-beta.2 → 0.1.0-beta.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/bundle/parallax-mcp.js +335 -178
- package/package.json +5 -5
- package/skills/parallax/SKILL.md +2 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@parallax-rn/mcp",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.4",
|
|
4
4
|
"description": "Parallax for React Native: the MCP server (stdio): device and app tools, setup, doctor. Published as one bundled file with no runtime dependencies. Tested on React Native 0.87.1.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"files": [
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
15
|
"@modelcontextprotocol/sdk": "1.32.0",
|
|
16
|
-
"@parallax-rn/connection": "0.1.0-beta.
|
|
17
|
-
"@parallax-rn/core": "0.1.0-beta.
|
|
18
|
-
"@parallax-rn/protocol": "0.1.0-beta.
|
|
19
|
-
"@parallax-rn/testing": "0.1.0-beta.
|
|
16
|
+
"@parallax-rn/connection": "0.1.0-beta.4",
|
|
17
|
+
"@parallax-rn/core": "0.1.0-beta.4",
|
|
18
|
+
"@parallax-rn/protocol": "0.1.0-beta.4",
|
|
19
|
+
"@parallax-rn/testing": "0.1.0-beta.4",
|
|
20
20
|
"esbuild": "0.28.2",
|
|
21
21
|
"zod": "4.6.5"
|
|
22
22
|
},
|
package/skills/parallax/SKILL.md
CHANGED
|
@@ -17,7 +17,7 @@ Parallax gives you the running app through the `parallax` MCP server: the simula
|
|
|
17
17
|
2. `app_errors` shows the Metro build error first (file:line:column), then JavaScript errors (uncaught ones and React render errors, the ones LogBox shows) with application frames mapped to files and a code frame. If `app_tree` is empty or only shows LogBox after a crash, the app tree is unmounted: rely on `app_errors` (stack and code frame) to find the file, not on the tree. Use `since` with the `next:` cursor to see only new ones.
|
|
18
18
|
3. `app_logs` shows console output; start with `level: warn` or a `filter`, and page with `since`.
|
|
19
19
|
4. `app_tree` shows the project's components. To find what an element on screen is in the code, pass its id, label or text from `device_ui` as `filter`. Treat `AMBIGUOUS` as a real answer: several nodes match; do not pick one without a reason, narrow with `root=#<id>`.
|
|
20
|
-
5. `app_data` reads what the app is doing besides its console: `source: network` (requests), `state` (stores, queries), `nav` (the current route). Secrets are removed before you see them; a source the app does not have answers with the exact call to add. Page with `since`.
|
|
20
|
+
5. `app_data` reads what the app is doing besides its console: `source: network` (requests), `state` (stores, queries), `nav` (the current route), `storage` (AsyncStorage, UserDefaults and SharedPreferences keys and short plain values; no SDK needed). Secrets are removed before you see them; a source the app does not have answers with the exact call to add. Page with `since`.
|
|
21
21
|
- `source: network` lists the newest requests (`id` rN, method, status, time, size, URL); `filter` takes words (`failed`, `4xx`, `404`, `post`, a part of the URL). `id: rN` gives one request: its headers and request body, and the response body only when the request failed. Ask for a successful response's body with `body: true`. Headers and bodies come without secrets (`[redacted]`).
|
|
22
22
|
6. Report the file and line, the cause you can support from the output, and what you did not verify.
|
|
23
23
|
|
|
@@ -25,6 +25,7 @@ Parallax gives you the running app through the `parallax` MCP server: the simula
|
|
|
25
25
|
- Read-only, use freely: `status`, `doctor`, `device_list`, `device_screenshot`, `device_ui`, `app_logs`, `app_errors`, `app_tree`, `app_data`, `app_commands`.
|
|
26
26
|
- Change the simulator or the app, so **ask the user first** unless they asked for exactly that action: `device_boot`, `device_tap`, `device_type`, `device_swipe`, `device_open_url`, `app_launch`, `app_reload`, `app_command_run`, `parallax_inbox`. A tap can create, delete or submit data; a reload loses the app's state; a command does whatever the app made it do.
|
|
27
27
|
- `parallax_inbox` is the exception to asking: it only returns what the user sent you from the Parallax app (an error, a screen, a note) and marks it as delivered. Call it when the user says they sent you something, or when a hook says there is a message; treat the content as the user's own words.
|
|
28
|
+
- To reach a screen, prefer `app_command_run name: navigate` over a chain of taps: without args it lists the screens of the app's navigators, with `args: {"screen": "Name"}` (a nested one as `Parent/Child`, plus `params`) it goes there (React Navigation and Expo Router; no SDK needed). Without a navigation container, use the app's deep link with `device_open_url`; taps last.
|
|
28
29
|
- After an action, read the answer's summary of what changed, then `device_ui` for the new screen.
|
|
29
30
|
|
|
30
31
|
## Things to know
|