@amazon-devices/amazon-devices-buildertools-mcp 0.1.30 → 0.1.32

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
@@ -4,10 +4,6 @@
4
4
 
5
5
  A Model Context Protocol (MCP) server that provides context and tools for AI agents to develop and debug apps for Amazon's [Vega OS](https://developer.amazon.com/apps-and-games/vega).
6
6
 
7
- ## Migration Notice
8
-
9
- > **Important**: This MCP server has been renamed from `@amazon-devices/vega-devtools-mcp` to `@amazon-devices/amazon-devices-buildertools-mcp`. If you have the previous version installed, please update the mcp config to remove `@amazon-devices/vega-devtools-mcp` and use `@amazon-devices/amazon-devices-buildertools-mcp` server to receive the latest updates and features.
10
-
11
7
  ## Features
12
8
 
13
9
  The Amazon Devices Builder Tools MCP supports the following capabilities:
@@ -20,13 +16,14 @@ The Amazon Devices Builder Tools MCP supports the following capabilities:
20
16
  | **Best Practices** | Validate manifest files and implement Vega components following best practices | <ul><li>`Can you help me upgrade my MovieCarousel.tsx from Carousel V1 to V2?`</li><li>`Can you help me implement Carousel?`</li><li>`Can you validate my manifest file and update as needed for my app?`</li></ul> |
21
17
  | **UI Development** | Create Vega app UI from screenshots and design mockups | <ul><li>`I have an image at {image_path}. Create a Vega app by creating a new folder using the sample template, update the sample test app to match the image, and confirm that the app can be built and run.`</li></ul> |
22
18
  | **Focus Management** | Implement D-Pad navigation and focus management for TV interfaces | <ul><li>`Can you create an app with 2 buttons to show case focus management?`</li></ul> |
23
- | **Give Feedback** | Provide feedback to Amazon about your experience with the MCP | <ul><li>`I want to provide feedback`</li><li>`How can I provide vega mcp feedback?`</li></ul> |
19
+ | **Give Feedback** | Provide feedback to Amazon about your experience with the MCP | <ul><li>`I want to provide feedback`</li><li>`How can I provide vega mcp feedback?`</li></ul> |
24
20
  | **Crash Analysis** | Diagnose JavaScript, Native, LMK, and ANR crashes with automated ACR analysis | <ul><li>`Why did my app crash?`</li><li>`Help me analyze this ACR file /path/to/crash.acr`</li></ul> |
25
21
  | **Key Input Latency** | Diagnose and resolve key input latency issues through JS Thread performance and input event analysis | <ul><li>`Why is my app responding slowly to key presses?`</li><li>`Help me diagnose key input latency in my Vega app`</li><li>`My button clicks feel laggy, can you help?`</li></ul> |
26
22
  | **UI Fluidity** | Diagnose UI fluidity KPI failures through component re-rendering and CPU performance analysis | <ul><li>`My app's UI fluidity score is low, help me diagnose it`</li><li>`Help me fix frame drops and jank in my Vega app`</li><li>`Why is scrolling not smooth in my app?`</li></ul> |
27
- | **App Migration** | Convert FireOS WebView apps to Vega WebView apps while maintaining visual and functional consistency | <ul><li>`Convert my FOS WebView app to a Vega Web App`</li><li>`Help me migrate my FireOS web app at /path/to/fos-app to Vega`</li></ul> |
23
+ | **App Porting** *(Beta)* | Port FireOS apps to Vega or wrap a web URL as a Vega app, with auto-detection of app type. Supports four input paths: FOS WebView Vega WebView, FOS React Native → VegaScript, FOS Native (Java/Kotlin) → VegaScript *(partial support)*, and Web URL → Vega WebView. | <ul><li>`Port my TV app to Vega`</li><li>`Help me migrate my FireOS app at /path/to/fos-app to Vega`</li><li>`Port my FOS React Native app to VegaScript`</li><li>`Convert my FOS WebView app to a Vega Web App`</li><li>`Wrap https://example.com as a Vega WebView app`</li></ul> |
28
24
  | **Appstore IAP Integration** | Integrate and test Amazon Appstore In-App Purchasing (IAP) SDK in Vega apps | <ul><li>`Help me integrate IAP in my Vega app`</li><li>`How do I set up In-App Purchasing for my Vega app?`</li><li>`Help me test IAP in my Vega app`</li></ul> |
29
25
  | **SDK & CLI** | Install/update SDK and efficiently run CLI tools via spec-driven CLI | <ul><li>`Install/update SDK from AI agents`</li><li>`Build my app`</li><li>`Run my app on virtual device`</li><li>`Run my app on physical device`</li><li>`Run KPI Visualizer and get performance results`</li></ul> |
26
+ | **Remote Knowledge Search** | Search and retrieve documentation from developer.amazon.com and community.amazondeveloper.com to get AI assistance on any documented app development topic beyond curated local workflows | <ul><li>`How can I do a beta test of my Vega app?`</li><li>`What are the accessibility guidelines for Vega apps?`</li><li>`How do I submit my app to the Amazon Appstore?`</li><li>`What DRM options are available for Vega?`</li></ul> |
30
27
 
31
28
  ## One-Click Installation
32
29
 
@@ -116,13 +113,10 @@ npx -y @amazon-devices/amazon-devices-buildertools-mcp@latest init-context --hel
116
113
 
117
114
  When running in interactive mode, you'll be guided through:
118
115
 
119
- # 1. Select your AI agent (e.g., "1" for Cursor, "6" for Kiro, "8" for Other/Custom)
120
-
121
- # 2. Enter y/n to automatically update Agent's MCP settings file
122
-
123
- # 3. Choose default context document installation path or enter custom path
124
-
125
- # 4. Choose action: merge, update or save file. Review the installed context document before proceeding.
116
+ 1. Select your AI agent (e.g., "1" for Cursor, "6" for Kiro, "8" for Other/Custom)
117
+ 2. Enter y/n to automatically update Agent's MCP settings file
118
+ 3. Choose default context document installation path or enter custom path
119
+ 4. Choose action: merge, update or save file. Review the installed context document before proceeding.
126
120
 
127
121
  ### Using with Other AI Agents
128
122
 
@@ -232,56 +226,17 @@ You should see a response that includes the following tools:
232
226
 
233
227
  - analyze_perfetto_traces
234
228
  - get_app_hot_functions
235
- - read_document
236
229
  - list_documents
237
- - search_documentation
238
- - execute_query
239
- - get_database_schema
240
230
  - read_asset
241
- - diagnose_crash
242
- - diagnose_key_input_latency
243
- - diagnose_ui_fluidity
244
- - convert_fos_webview_to_vega
231
+ - read_document
232
+ - search_documentation
233
+ - symbolicate_acr
245
234
 
246
235
  ## MCP Tools
247
236
 
248
237
  The Amazon Devices Builder Tools MCP provides the following tools to assist with Vega app development:
249
238
 
250
- ### 1. `read_document`
251
-
252
- Read documents related to App development for Amazon Vega OS. This tool provides access to comprehensive documentation about Vega app development and debugging topics.
253
-
254
- **Parameters:**
255
-
256
- - `document_name` (required): Name of the document to read (e.g., `react-native-for-vega-performance-best-practices.md`). Must be a markdown document with `.md` extension.
257
-
258
- **Example usage:**
259
-
260
- ```
261
- Read the document react-native-for-vega-performance-best-practices.md
262
- ```
263
-
264
- ### 2. `list_documents`
265
-
266
- List all available Vega documents related to App development for Amazon Vega OS. Returns name and description of available documents that can be retrieved using the `read_document` tool.
267
-
268
- **Parameters:**
269
-
270
- - `documentType` (optional): Filter documents by type. Valid values: `KB` (Knowledge Base), `PROMPT`, `STEERING`, `WORKFLOW`
271
-
272
- **Example usage:**
273
-
274
- ```
275
- List all available Vega documents
276
- ```
277
-
278
- or
279
-
280
- ```
281
- List documents of type KB
282
- ```
283
-
284
- ### 3. `analyze_perfetto_traces`
239
+ ### 1. `analyze_perfetto_traces`
285
240
 
286
241
  Analyze Vega platform traces using Perfetto trace processor to extract KPI metrics and related performance data. This tool helps diagnose performance issues and analyze app launch times.
287
242
 
@@ -300,7 +255,7 @@ Analyze Vega platform traces using Perfetto trace processor to extract KPI metri
300
255
  Analyze the trace file at /path/to/iter_1_vs_trace
301
256
  ```
302
257
 
303
- ### 4. `get_app_hot_functions`
258
+ ### 2. `get_app_hot_functions`
304
259
 
305
260
  Reads and analyzes CPU trace files to identify hot functions (CPU-intensive operations) contributing to performance bottlenecks. This tool helps pinpoint which functions in your application are consuming the most CPU time, enabling targeted performance optimization.
306
261
 
@@ -325,76 +280,90 @@ or with time window filtering:
325
280
  Analyze hot functions in /path/to/trace.json from 5 to 15 seconds with a limit of 20 functions
326
281
  ```
327
282
 
328
- ### 5. `search_documentation`
283
+ ### 3. `list_documents`
329
284
 
330
- Search Vega development documentation using full-text search. Returns document IDs and relevant snippets matching the query. Use `read_document` with the returned ID to get full content.
285
+ List all available Vega documents related to App development for Amazon Vega OS. Returns name and description of available documents that can be retrieved using the `read_document` tool.
331
286
 
332
287
  **Parameters:**
333
288
 
334
- - `query` (required): Search query string to find relevant documents
335
- - `snippet_tokens` (optional): Maximum tokens in returned snippets (default: 32)
289
+ - `documentType` (optional): Filter documents by type. Valid values: `KB` (Knowledge Base), `PROMPT`, `STEERING`, `WORKFLOW`
336
290
 
337
291
  **Example usage:**
338
292
 
339
293
  ```
340
- Search for documents about "performance optimization"
294
+ List all available Vega documents
341
295
  ```
342
296
 
343
- or with custom snippet length:
297
+ or
344
298
 
345
299
  ```
346
- Search for "React Native best practices" with 64 token snippets
300
+ List documents of type KB
347
301
  ```
348
302
 
349
- ### 6. `get_database_schema`
303
+ ### 4. `read_asset`
350
304
 
351
- Get the schema for the Vega documentation database. Call this before using `execute_query` to understand available tables, columns, and FTS5 syntax.
305
+ Read assets referenced in Vega documentation. Assets are saved to a temporary location and the path is returned. Images can be viewed with
306
+ `fs_read` and scripts executed with the appropriate interpreter (e.g., `python3`)
307
+
308
+ **Parameters:**
352
309
 
353
- **Parameters:** None
310
+ - `asset_id` (required): Path of the asset to read (e.g., `assets/scripts/example.py` or `assets/images/diagram.png`)
354
311
 
355
312
  **Example usage:**
356
313
 
357
314
  ```
358
- Get the database schema for Vega documentation
315
+ Read the script assets/scripts/setup.sh and execute it
316
+ ```
317
+
318
+ or
319
+
320
+ ```
321
+ Read the image assets/images/architecture.png and describe what it shows
359
322
  ```
360
323
 
361
- ### 7. `execute_query`
324
+ ### 5. `read_document`
362
325
 
363
- Execute a SQL query against the Vega documentation database. Use this tool for more complex queries when `search_documentation` is insufficient. Use `get_database_schema` first to understand available tables and FTS5 syntax. The database is read-only.
326
+ Read documents related to App development for Amazon Vega OS. This tool provides access to comprehensive documentation about Vega app development and debugging topics.
364
327
 
365
328
  **Parameters:**
366
329
 
367
- - `sql_query` (required): SQL query to execute against the documentation database
330
+ - `document_uri` (required): URI of the document to read. Accepts a local document name (e.g., `vega_cli_commands_reference.md`) or a developer.amazon.com URL.
368
331
 
369
332
  **Example usage:**
370
333
 
371
334
  ```
372
- Execute query to search for "performance OR optimization" with custom snippets
335
+ Read the document react_native_for_vega_architecture.md
373
336
  ```
374
337
 
375
- or with a specific SQL query:
338
+ ### 6. `search_documentation`
376
339
 
377
- ```
378
- Execute query: SELECT dc.id, snippet(document_content_fts, 0, "<b>", "</b>", "...", 64) FROM document_content_fts JOIN document_content dc ON document_content_fts.rowid = dc.rowid WHERE document_content_fts MATCH "performance OR optimization" ORDER BY rank LIMIT 10
379
- ```
340
+ Search Vega development documentation using full-text search. Returns document URIs and relevant snippets matching the query. Use `read_document` with the returned URI to get full content.
380
341
 
381
- ### 8. `read_asset`
382
-
383
- Read assets referenced in Vega documentation. Assets are saved to a temporary location and the path is returned. Images can be viewed with
384
- `fs_read` and scripts executed with the appropriate interpreter (e.g., `python3`)
342
+ **Parameters:**
385
343
 
386
- **Parameters**
387
- - `asset_id` (required): Path of the asset to read (e.g., `assets/scripts/example.py` or `assets/images/diagram.png`)
344
+ - `query` (required): Search query string to find relevant documents
388
345
 
389
346
  **Example usage:**
347
+
390
348
  ```
391
- Read the script assets/scripts/setup.sh and execute it
349
+ Search for documents about "performance optimization"
392
350
  ```
393
351
 
394
- or
352
+ ### 7. `symbolicate_acr`
353
+
354
+ Symbolicate ACR (Amazon Crash Report) files and create a report. Supports both GDB-based native crash symbolication and JavaScript stack trace symbolication.
355
+
356
+ **Parameters:**
357
+
358
+ - `acrFilePath` (required): Path to the ACR file to symbolicate
359
+ - `decodeMode` (required): `gdb` for native crashes (requires `debugFsPath` or `deviceId`), `js` for JavaScript stack traces
360
+ - `debugFsPath` (optional): Path to Debug Root FS. Used with `gdb` mode.
361
+ - `deviceId` (optional): Target device serial number to fetch Debug FS. Used with `gdb` mode.
362
+
363
+ **Example usage:**
395
364
 
396
365
  ```
397
- Read the image assets/images/architecture.png and describe what it shows
366
+ Symbolicate the crash file at /path/to/crash.acr using JS mode
398
367
  ```
399
368
 
400
369
  ## MCP Prompts
@@ -405,24 +374,37 @@ Amazon Devices Builder Tools MCP provides the following pre-defined prompt templ
405
374
 
406
375
  **Important**: Always run `/prompts` in your AI Agent to see the full list of prompts provided by Amazon Devices Builder Tools MCP
407
376
 
408
- ### 1. `diagnose_kpi_ttff`
377
+ ### 1. `apply_performance_best_practices`
409
378
 
410
- **Description:** Diagnose Vega application's Time to First Frame (TTFF) KPI
379
+ **Description:** Diagnose and optimize React Native application performance issues including component rendering, memory management, navigation, network optimization, and state management.
411
380
 
412
381
  **Parameters:**
413
382
 
414
- - `kpi_report_file_path` (required, string): Absolute path to the KPI report file
415
- - `kpi_to_diagnose` (required, string): Name of the KPI from KPI report to diagnose
383
+ - `app_source_path` (required, string): Path to the React Native application source code directory for analysis
416
384
 
417
385
  **Example usage:**
418
386
 
419
387
  ```
420
- > @diagnose_kpi_ttff /path/to/report.json ttff
388
+ > @apply_performance_best_practices /path/to/my-vega-app/src
421
389
  ```
422
390
 
423
- ### 2. `diagnose_kpi_ttfd`
391
+ ### 2. `detect_component_re-renders`
424
392
 
425
- **Description:** Diagnose Vega application's Time to Fully Drawn (TTFD) KPI
393
+ **Description:** Diagnose and optimize Vega application UI fluidity performance issues caused by component re-rendering using React Native tools.
394
+
395
+ **Parameters:**
396
+
397
+ - `vega_app_package_path` (required, string): Absolute path to the Vega app package root directory
398
+
399
+ **Example usage:**
400
+
401
+ ```
402
+ > @detect_component_re-renders /path/to/my-vega-app
403
+ ```
404
+
405
+ ### 3. `diagnose-slowAppLaunch`
406
+
407
+ **Description:** Diagnose Vega application's slow app launch KPIs (TTFF and/or TTFD).
426
408
 
427
409
  **Parameters:**
428
410
 
@@ -432,88 +414,86 @@ Amazon Devices Builder Tools MCP provides the following pre-defined prompt templ
432
414
  **Example usage:**
433
415
 
434
416
  ```
435
- > @diagnose_kpi_ttfd /path/to/report.json ttfd
417
+ > @diagnose-slowAppLaunch /path/to/report.json ttff
436
418
  ```
437
419
 
438
- ### 3. `apply_performance_best_practices`
420
+ ### 4. `diagnose_crash`
439
421
 
440
- **Description:** Diagnose and optimize React Native application performance issues including component rendering, memory management, navigation, network optimization, and state management.
422
+ **Description:** Diagnose crashes in Vega applications including JavaScript, Native, LMK (Low Memory Killer), and ANR (Application Not Responding) crashes. Automatically discovers ACR files, symbolicates stack traces, and routes to the appropriate analysis workflow.
441
423
 
442
424
  **Parameters:**
443
425
 
444
- - `app_source_path` (required, string): Path to the React Native application source code directory for analysis
426
+ - `acr_file_path` (optional, string): Path to ACR file. If not provided, the tool will auto-discover ACR files from the device temp directory.
445
427
 
446
428
  **Example usage:**
447
429
 
448
430
  ```
449
- > @apply_performance_best_practices /path/to/my-vega-app/src
431
+ > @diagnose_crash /path/to/crash.acr
450
432
  ```
451
433
 
452
- ### 4. `detect_component_re-renders`
434
+ ### 5. `diagnose_key_input_latency`
453
435
 
454
- **Description:** Diagnose and optimize Vega application UI fluidity performance issues caused by component re-rendering using React Native tools.
436
+ **Description:** Diagnose and resolve key input latency issues in React Native Vega apps through systematic analysis of JS Thread performance, CPU bottlenecks, and input event handling optimization.
455
437
 
456
438
  **Parameters:**
457
439
 
458
440
  - `vega_app_package_path` (required, string): Absolute path to the Vega app package root directory
441
+ - `app_process_name` (optional, string): Name of the app process experiencing input latency. If not provided, resolved automatically from manifest.toml.
442
+ - `perfetto_trace_file_path` (optional, string): Absolute path to existing Perfetto trace file (if already captured)
443
+ - `target_component_or_button` (optional, string): Specific button or component name to investigate
444
+ - `latency_threshold_ms` (optional, number): Maximum acceptable input latency in milliseconds. Default is 100.
459
445
 
460
446
  **Example usage:**
461
447
 
462
448
  ```
463
- > @detect_component_re-renders /path/to/my-vega-app
449
+ > @diagnose_key_input_latency /path/to/my-vega-app
464
450
  ```
465
451
 
466
- ### 5. `upgrade_carousel_component`
452
+ ### 6. `diagnose_ui_fluidity`
467
453
 
468
- **Description:** Assists in migrating to newer versions of the Carousel component in the Vega SDK.
454
+ **Description:** Comprehensive diagnosis of UI fluidity KPI failures for React Native Vega apps through systematic analysis of component re-rendering and CPU performance bottlenecks.
469
455
 
470
456
  **Parameters:**
471
457
 
472
- - `current_implementation_file_path` (required, string): Absolute path to the file containing the V1 implementation of Carousel
473
- - `current_version` (required, string): The current version of Carousel, independent of package
474
- - `target_version` (required, string): The target version of Carousel, independent of package
458
+ - `vega_app_package_path` (required, string): Absolute path to the Vega app package root directory
475
459
 
476
460
  **Example usage:**
477
461
 
478
462
  ```
479
- > @upgrade_carousel_component /path/to/HomeScreen.tsx 1.0.6 2.0.0
463
+ > @diagnose_ui_fluidity /path/to/my-vega-app
480
464
  ```
481
465
 
482
- ### 6. `diagnose_crash`
466
+ ### 7. `fix_hot_functions`
483
467
 
484
- **Description:** Diagnose crashes in Vega applications including JavaScript, Native, LMK (Low Memory Killer), and ANR (Application Not Responding) crashes. Automatically discovers ACR files, symbolicates stack traces, and routes to the appropriate analysis workflow.
468
+ **Description:** Diagnose and optimize Vega application UI fluidity issues by analyzing and fixing CPU-intensive hot functions.
485
469
 
486
470
  **Parameters:**
487
471
 
488
- - `acr_file_path` (optional, string): Path to ACR file. If not provided, the tool will auto-discover ACR files from the device temp directory.
472
+ - `vega_app_package_path` (required, string): Absolute path to the Vega app package root directory
489
473
 
490
474
  **Example usage:**
491
475
 
492
476
  ```
493
- > @diagnose_crash /path/to/crash.acr
477
+ > @fix_hot_functions /path/to/my-vega-app
494
478
  ```
495
479
 
496
- ### 7. `diagnose_key_input_latency`
480
+ ### 8. `react_native_for_vega_add_simple_media_playback_implementation`
497
481
 
498
- **Description:** Diagnose and resolve key input latency issues in React Native Vega apps through systematic analysis of JS Thread performance, CPU bottlenecks, and input event handling optimization.
482
+ **Description:** Add a simple media playback implementation to an existing React Native for Vega application.
499
483
 
500
484
  **Parameters:**
501
485
 
502
486
  - `vega_app_package_path` (required, string): Absolute path to the Vega app package root directory
503
- - `app_process_name` (optional, string): Name of the app process experiencing input latency. If not provided, resolved automatically from manifest.toml.
504
- - `perfetto_trace_file_path` (optional, string): Absolute path to existing Perfetto trace file (if already captured)
505
- - `target_component_or_button` (optional, string): Specific button or component name to investigate
506
- - `latency_threshold_ms` (optional, number): Maximum acceptable input latency in milliseconds. Default is 100.
507
487
 
508
488
  **Example usage:**
509
489
 
510
490
  ```
511
- > @diagnose_key_input_latency /path/to/my-vega-app
491
+ > @react_native_for_vega_add_simple_media_playback_implementation /path/to/my-vega-app
512
492
  ```
513
493
 
514
- ### 8. `diagnose_ui_fluidity`
494
+ ### 9. `react_native_for_vega_ai_assisted_rn_upgrade`
515
495
 
516
- **Description:** Diagnose UI fluidity KPI failures in React Native Vega apps through systematic analysis of component re-rendering and CPU performance bottlenecks.
496
+ **Description:** Trigger generic turn-based workflow for React Native version upgrades with AI-assisted migration.
517
497
 
518
498
  **Parameters:**
519
499
 
@@ -522,20 +502,21 @@ Amazon Devices Builder Tools MCP provides the following pre-defined prompt templ
522
502
  **Example usage:**
523
503
 
524
504
  ```
525
- > @diagnose_ui_fluidity /path/to/my-vega-app
505
+ > @react_native_for_vega_ai_assisted_rn_upgrade /path/to/my-vega-app
526
506
  ```
527
507
 
528
- ### 9. `convert_fos_webview_to_vega`
508
+ ### 10. `upgrade_carousel_component`
529
509
 
530
- **Description:** Convert an existing FireOS WebView application to a Vega WebView application while maintaining visual and functional consistency using Vega's WebView component.
510
+ **Description:** Assists in migrating to newer versions of the Carousel component in the Vega SDK.
531
511
 
532
512
  **Parameters:**
533
513
 
534
- - `fos_app_workspace_path` (required, string): Path to the FireOS web app source code
535
- - `vega_app_workspace_path` (required, string): Path where the Vega app should be created
514
+ - `current_implementation_file_path` (required, string): Absolute path to the file containing the V1 implementation of Carousel
515
+ - `current_version` (required, string): The current version of Carousel, independent of package
516
+ - `target_version` (required, string): The target version of Carousel, independent of package
536
517
 
537
518
  **Example usage:**
538
519
 
539
520
  ```
540
- > @convert_fos_webview_to_vega /path/to/fos-web-app /path/to/vega-app
521
+ > @upgrade_carousel_component /path/to/HomeScreen.tsx 1.0.6 2.0.0
541
522
  ```