Skip to main content
Glama
mcp-inspector.mdc6.54 kB
--- description: globs: alwaysApply: false --- Rule Name: mcp-inspector Description: Debugging and verifying the `macos-automator-mcp` server via the MCP Inspector, using Playwright for UI automation and direct terminal commands for server management. This rule prioritizes stability and detailed verification through Playwright's introspection capabilities. **Required Tools:** - `run_terminal_cmd` - `mcp_playwright_browser_navigate` - `mcp_playwright_browser_type` - `mcp_playwright_browser_click` - `mcp_playwright_browser_snapshot` - `mcp_playwright_browser_console_messages` - `mcp_playwright_browser_wait_for` **User Workspace Path Placeholder:** - The path to the `start.sh` script will be specified as `[WORKSPACE_PATH]/start.sh`. - The AI assistant executing this rule **MUST** replace `[WORKSPACE_PATH]` with the absolute path to the user's current project workspace (e.g., as found in the `<user_info>` context block during rule execution). - Example of a resolved path if the workspace is `/Users/username/Projects/my-mcp-project`: `/Users/username/Projects/my-mcp-project/start.sh`. --- **Main Flow:** **Phase 1: Start MCP Inspector Server** 1. **Kill Existing Inspector Processes:** * Action: Call `run_terminal_cmd`. * `command`: `pkill -f 'npx @modelcontextprotocol/inspector' || true` * `is_background`: `false` * Expected: Cleans up any lingering Inspector processes. 2. **Start New Inspector Process:** * Action: Call `run_terminal_cmd`. * `command`: `npx @modelcontextprotocol/inspector` * `is_background`: `true` * Expected: MCP Inspector starts in the background. 3. **Wait for Inspector Initialization:** * Action: Call `mcp_playwright_browser_wait_for`. * `time`: `10` (seconds) * Expected: Allows ample time for the Inspector server to be ready. This step requires an active Playwright page, so it's implicitly preceded by navigation in Phase 2 if the browser isn't already open. **Phase 2: Connect to Server via Playwright** 1. **Navigate to Inspector URL:** * Action: Call `mcp_playwright_browser_navigate`. * `url`: `http://127.0.0.1:6274` * Expected: Playwright opens the MCP Inspector web UI. * Snapshot: Take a snapshot (`mcp_playwright_browser_snapshot`) to confirm page load and identify initial form element references (`ref`). 2. **Fill Form (Command & Args only):** * **Set Command:** * Action: Call `mcp_playwright_browser_type`. * `element`: "Command textbox" (Obtain `ref` from snapshot). * `text`: `macos-automator-mcp` * **Set Arguments:** * Action: Call `mcp_playwright_browser_type`. * `element`: "Arguments textbox" (Obtain `ref` from snapshot). * `text`: `[WORKSPACE_PATH]/start.sh` (This placeholder MUST be replaced by the AI executing the rule with the absolute path to the user's current workspace). * *(Note: Environment Variables are skipped in this flow for simplicity and stability, as issues were previously observed when setting LOG_LEVEL=DEBUG during connection.)* 3. **Click "Connect":** * Action: Call `mcp_playwright_browser_click`. * `element`: "Connect button" (Obtain `ref` from snapshot). * Expected: Connection to the `macos-automator-mcp` server is established. * Snapshot: Take a snapshot. Verify connection status (e.g., text changes to "Connected") and check for initial server logs in the UI. **Phase 3: Interact with a Tool via Playwright** 1. **List Tools:** * Action: Call `mcp_playwright_browser_click`. * `element`: "List Tools button" (Obtain `ref` from the latest snapshot). * Expected: The list of available tools from the `macos-automator-mcp` server is displayed. * Snapshot: Take a snapshot. Verify tools like `execute_script` and `get_scripting_tips` are visible. 2. **Select 'get_scripting_tips' Tool:** * Action: Call `mcp_playwright_browser_click`. * `element`: "get_scripting_tips tool in list" (Obtain `ref` by identifying it in the snapshot's tool list). * Expected: The parameters form for `get_scripting_tips` is displayed in the right-hand panel. * Snapshot: Take a snapshot. Verify the right panel shows details for `get_scripting_tips` (e.g., its name, description, and parameter fields like 'searchTerm', 'listCategories', etc.). 3. **Execute 'get_scripting_tips' (default parameters):** * Action: Call `mcp_playwright_browser_click`. * `element`: "Run Tool button" (Obtain `ref` for the 'Run Tool' button specific to the `get_scripting_tips` form in the right panel from the snapshot). * Expected: The `get_scripting_tips` tool is executed with its default parameters. * Snapshot: Take a snapshot. **Phase 4: Verify Tool Execution and Logs in Playwright** 1. **Check for Results in UI:** * Action: Examine the latest snapshot. * Look for: The results of the `get_scripting_tips` call (e.g., a list of script categories if `listCategories` was implicitly true by default, or an empty result if no default search term was run). * The results should appear in the 'Result from tool' or a similarly named section within the right-hand panel where the tool's form was. 2. **Check Console Logs (Optional but Recommended):** * Action: Call `mcp_playwright_browser_console_messages`. * Expected: Review for any errors or relevant messages from the Inspector or the tool interaction. 3. **Check MCP Server Logs in UI:** * Action: Examine the latest snapshot. * Look for: Logs related to the `get_scripting_tips` tool execution in the main server log panel (usually bottom-left, titled "Error output from MCP server" or similar, but also shows general logs). **Troubleshooting Notes:** - If connection fails, check the `run_terminal_cmd` output for the Inspector to ensure it started correctly. - Check Playwright console messages for clues. - Ensure the `[WORKSPACE_PATH]` was correctly resolved and points to an existing `start.sh` script. - Element `ref` values can change. Always use the latest snapshot to get correct `ref` values before an interaction. - Shadow DOM: The MCP Inspector UI uses Shadow DOM extensively for the tool details and results panels. Playwright's default selectors should pierce Shadow DOM, but if issues arise with finding elements *within* the tool panel (right-hand side after selecting a tool), be mindful of this. The provided flow assumes Playwright's auto-piercing handles this sufficiently.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/steipete/Peekaboo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server