Flutter Inspector MCP Server
Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
PORT | No | Server port | 3334 |
LOG_LEVEL | No | Logging level (error, warn, info, debug) | info |
Schema
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
No resources |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
get_active_ports | Utility: Get list of ports where Flutter/Dart processes are listening. This is a local utility, not a Flutter RPC method. |
get_supported_protocols | Utility: Get supported protocols from a Flutter app. This is a VM service method, not a Flutter RPC. Connects to the default Flutter debug port (8181) unless specified otherwise. |
get_vm_info | Utility: Get VM information from a Flutter app. This is a VM service method, not a Flutter RPC. Connects to the default Flutter debug port (8181) unless specified otherwise. |
get_extension_rpcs | Utility: List all available extension RPCs in the Flutter app. This is a helper tool for discovering available methods. |
debug_dump_render_tree | RPC: Dump the render tree (ext.flutter.debugDumpRenderTree). Connects to the default Flutter debug port (8181) unless specified otherwise. |
debug_dump_layer_tree | RPC: Dump the layer tree (ext.flutter.debugDumpLayerTree). Connects to the default Flutter debug port (8181) unless specified otherwise. |
debug_dump_semantics_tree | RPC: Dump the semantics tree (ext.flutter.debugDumpSemanticsTreeInTraversalOrder). Connects to the default Flutter debug port (8181) unless specified otherwise. |
debug_dump_semantics_tree_inverse | RPC: Dump the semantics tree in inverse hit test order (ext.flutter.debugDumpSemanticsTreeInInverseHitTestOrder) |
debug_paint_baselines_enabled | RPC: Toggle baseline paint debugging (ext.flutter.debugPaintBaselinesEnabled). Connects to the default Flutter debug port (8181) unless specified otherwise. |
debug_dump_focus_tree | RPC: Dump the focus tree (ext.flutter.debugDumpFocusTree) |
debug_disable_physical_shape_layers | RPC: Toggle physical shape layers debugging (ext.flutter.debugDisablePhysicalShapeLayers) |
debug_disable_opacity_layers | RPC: Toggle opacity layers debugging (ext.flutter.debugDisableOpacityLayers). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_screenshot | RPC: Take a screenshot of the Flutter app (ext.flutter.inspector.screenshot). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_layout_explorer_node | RPC: Get layout explorer information for a widget (ext.flutter.inspector.getLayoutExplorerNode). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_track_rebuild_dirty_widgets | RPC: Track widget rebuilds to identify performance issues (ext.flutter.inspector.trackRebuildDirtyWidgets). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_set_selection_by_id | RPC: Set the selected widget by ID (ext.flutter.inspector.setSelectionById). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_parent_chain | RPC: Get the parent chain for a widget (ext.flutter.inspector.getParentChain). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_children_summary_tree | RPC: Get the children summary tree for a widget (ext.flutter.inspector.getChildrenSummaryTree). Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_children_details_subtree | RPC: Get the children details subtree for a widget (ext.flutter.inspector.getChildrenDetailsSubtree) |
inspector_get_root_widget_summary_tree | RPC: Get the root widget summary tree (ext.flutter.inspector.getRootWidgetSummaryTree) |
inspector_get_root_widget_summary_tree_with_previews | RPC: Get the root widget summary tree with previews from the Flutter app. This provides a hierarchical view of the widget tree with preview information. |
inspector_get_details_subtree | RPC: Get the details subtree for a widget. This provides detailed information about the widget and its descendants. Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_selected_widget | RPC: Get information about the currently selected widget in the Flutter app. Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_get_selected_summary_widget | RPC: Get summary information about the currently selected widget in the Flutter app. Connects to the default Flutter debug port (8181) unless specified otherwise. |
inspector_is_widget_creation_tracked | RPC: Check if widget creation tracking is enabled in the Flutter app. |
dart_io_socket_profiling_enabled | RPC: Enable or disable socket profiling. Connects to the default Flutter debug port (8181) unless specified otherwise. |
dart_io_http_enable_timeline_logging | RPC: Enable or disable HTTP timeline logging. Connects to the default Flutter debug port (8181) unless specified otherwise. |
dart_io_get_version | RPC: Get Flutter version information (ext.dart.io.getVersion) |
dart_io_get_open_files | RPC: Get list of currently open files in the Flutter app |
dart_io_get_open_file_by_id | RPC: Get details of a specific open file by its ID |
stream_listen | RPC: Subscribe to a Flutter event stream. This is a VM service method for event monitoring. Connects to the default Flutter debug port (8181) unless specified otherwise. |
dart_io_get_http_profile_request | RPC: Get details of a specific HTTP request from the profile |
flutter_core_invert_oversized_images | RPC: Toggle inverting of oversized images for debugging |
debug_allow_banner | RPC: Toggle the debug banner in the Flutter app |
flutter_core_did_send_first_frame_event | RPC: Check if the first frame event has been sent |
flutter_core_did_send_first_frame_rasterized_event | RPC: Check if the first frame has been rasterized |
flutter_core_platform_override | RPC: Override the platform for the Flutter app |
flutter_core_brightness_override | RPC: Override the brightness for the Flutter app |
flutter_core_time_dilation | RPC: Set the time dilation factor for animations in the Flutter app |
flutter_core_evict | RPC: Evict an asset from the Flutter app's cache |
flutter_core_profile_platform_channels | RPC: Enable or disable profiling of platform channels |
debug_disable_clip_layers | RPC: Toggle disabling of clip layers in the Flutter app |
debug_disable_physical_shape_layers | RPC: Toggle physical shape layers debugging (ext.flutter.debugDisablePhysicalShapeLayers) |
debug_disable_opacity_layers | RPC: Toggle opacity layers debugging (ext.flutter.debugDisableOpacityLayers) |
repaint_rainbow | RPC: Toggle repaint rainbow debugging (ext.flutter.repaintRainbow) |
inspector_structured_errors | RPC: Enable or disable structured error reporting in the Flutter app. |
inspector_show | RPC: Show specific widget details in the Flutter app inspector. |
inspector_widget_location_id_map | RPC: Get a mapping of widget IDs to their source code locations (ext.flutter.inspector.widgetLocationIdMap) |
inspector_track_repaint_widgets | RPC: Track widget repaints to identify rendering performance issues (ext.flutter.inspector.trackRepaintWidgets) |
inspector_dispose_all_groups | RPC: Dispose all inspector groups to free up memory (ext.flutter.inspector.disposeAllGroups) |
inspector_dispose_group | RPC: Dispose a specific inspector group to free up memory (ext.flutter.inspector.disposeGroup) |
inspector_is_widget_tree_ready | RPC: Check if the widget tree is ready for inspection (ext.flutter.inspector.isWidgetTreeReady) |
inspector_dispose_id | RPC: Dispose a specific widget ID to free up memory (ext.flutter.inspector.disposeId) |
inspector_set_pub_root_directories | RPC: Set the root directories for pub packages (ext.flutter.inspector.setPubRootDirectories) |
inspector_add_pub_root_directories | RPC: Add additional root directories for pub packages (ext.flutter.inspector.addPubRootDirectories) |
inspector_remove_pub_root_directories | RPC: Remove root directories from pub packages (ext.flutter.inspector.removePubRootDirectories) |
inspector_get_pub_root_directories | RPC: Get the list of root directories for pub packages (ext.flutter.inspector.getPubRootDirectories) |
layout_set_flex_fit | RPC: Set the flex fit property of a flex child widget (ext.flutter.inspector.setFlexFit) |
layout_set_flex_factor | RPC: Set the flex factor of a flex child widget (ext.flutter.inspector.setFlexFactor) |
layout_set_flex_properties | RPC: Set multiple flex properties of a flex child widget (ext.flutter.inspector.setFlexProperties) |
performance_profile_render_object_paints | RPC: Enable or disable profiling of render object paint operations (ext.flutter.profileRenderObjectPaints) |
performance_profile_render_object_layouts | RPC: Enable or disable profiling of render object layout operations (ext.flutter.profileRenderObjectLayouts) |