You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`src/utils/state-diff.ts`| Element state diff (appeared/disappeared/changed) |
173
170
|`src/utils/zod-helpers.ts`|`coerceBoolean` for client interop |
174
171
|`tsup.config.ts`| Build configuration |
175
172
@@ -197,6 +194,14 @@ external imports.
197
194
Sessions created with `noReset: true` or without `appPath` automatically detach on close (don't terminate on Appium
198
195
server).
199
196
197
+
### MCP Resource URI Templates
198
+
199
+
The MCP SDK only supports path-segment templates `{param}` in resource URIs — NOT RFC 6570 query param syntax `{?param}`. Resources using `{?param}` silently return "Resource not found". Keep resources at fixed URIs; expose parameterised access via tools instead.
200
+
201
+
### Scripts vs Tools vs Resources
202
+
203
+
Computation logic belongs in `src/scripts/` (no try/catch, returns raw data). Tools wrap scripts with try/catch and return `{ isError: true, content: [...] }` on failure. Resources wrap scripts and set `mimeType` in the response.
204
+
200
205
### Error Handling
201
206
202
207
Tools return errors as text content, never throw. Keeps MCP protocol stable:
0 commit comments