← all servers

chrome_devtools

v1.6.0 · 29 tools · source

[ tools: 29 ][ checks: 11 ][ latency: 14ms ]
84/100(B)
npx -y chrome-devtools-mcp@latest

check breakdown

Tools exposedServer exposed 29 tools.
• click
• close_page
• drag
• emulate
• evaluate_script
• fill
• fill_form
• get_console_message
• get_network_request
• handle_dialog
• hover
• lighthouse_audit
• list_console_messages
• list_network_requests
• list_pages
• navigate_page
• new_page
• performance_analyze_insight
• performance_start_trace
• performance_stop_trace
• press_key
• resize_page
• select_page
• take_heapsnapshot
• take_screenshot
• take_snapshot
• type_text
• upload_file
• wait_for
Input schemas validAll tools have a valid JSON-Schema input definition.
!Input schema quality38 schema-quality issue(s) across 29 tool(s).
click: inputSchema.additionalProperties is not set to false (extra args pass through silently)
close_page: inputSchema.additionalProperties is not set to false (extra args pass through silently)
drag: inputSchema.additionalProperties is not set to false (extra args pass through silently)
emulate: no "required" array (which params are mandatory?)
emulate: inputSchema.additionalProperties is not set to false (extra args pass through silently)
evaluate_script: inputSchema.additionalProperties is not set to false (extra args pass through silently)
fill: inputSchema.additionalProperties is not set to false (extra args pass through silently)
fill_form: inputSchema.additionalProperties is not set to false (extra args pass through silently)
get_console_message: inputSchema.additionalProperties is not set to false (extra args pass through silently)
get_network_request: no "required" array (which params are mandatory?)
get_network_request: inputSchema.additionalProperties is not set to false (extra args pass through silently)
handle_dialog: inputSchema.additionalProperties is not set to false (extra args pass through silently)
hover: inputSchema.additionalProperties is not set to false (extra args pass through silently)
lighthouse_audit: no "required" array (which params are mandatory?)
lighthouse_audit: inputSchema.additionalProperties is not set to false (extra args pass through silently)
list_console_messages: no "required" array (which params are mandatory?)
list_console_messages: inputSchema.additionalProperties is not set to false (extra args pass through silently)
list_network_requests: no "required" array (which params are mandatory?)
list_network_requests: inputSchema.additionalProperties is not set to false (extra args pass through silently)
navigate_page: no "required" array (which params are mandatory?)
navigate_page: inputSchema.additionalProperties is not set to false (extra args pass through silently)
new_page: inputSchema.additionalProperties is not set to false (extra args pass through silently)
performance_analyze_insight: inputSchema.additionalProperties is not set to false (extra args pass through silently)
performance_start_trace: no "required" array (which params are mandatory?)
performance_start_trace: inputSchema.additionalProperties is not set to false (extra args pass through silently)
performance_stop_trace: no "required" array (which params are mandatory?)
performance_stop_trace: inputSchema.additionalProperties is not set to false (extra args pass through silently)
press_key: inputSchema.additionalProperties is not set to false (extra args pass through silently)
resize_page: inputSchema.additionalProperties is not set to false (extra args pass through silently)
select_page: inputSchema.additionalProperties is not set to false (extra args pass through silently)
take_heapsnapshot: inputSchema.additionalProperties is not set to false (extra args pass through silently)
take_screenshot: no "required" array (which params are mandatory?)
take_screenshot: inputSchema.additionalProperties is not set to false (extra args pass through silently)
take_snapshot: no "required" array (which params are mandatory?)
take_snapshot: inputSchema.additionalProperties is not set to false (extra args pass through silently)
type_text: inputSchema.additionalProperties is not set to false (extra args pass through silently)
upload_file: inputSchema.additionalProperties is not set to false (extra args pass through silently)
wait_for: inputSchema.additionalProperties is not set to false (extra args pass through silently)
Declare `required` for every schema that has properties, so agents know which params are mandatory.
Give every property a `description` and a concrete `type` (avoid bare `{}` placeholders).
Set `additionalProperties: false` on the top-level inputSchema so models can't silently pass extra, unvalidated arguments.
!Output schemasNo tools declare an outputSchema.
Optional: declare outputSchema for tools with structured results so agents can validate/parse output reliably.
Duplicate tool namesAll tool names are unique.
Tool namingAll tool names use spec-legal characters.
!Descriptions6 description issue(s) found.
click: description adds nothing beyond the tool name ("Clicks on the provided element")
drag: description adds nothing beyond the tool name ("Drag an element onto another element")
hover: description adds nothing beyond the tool name ("Hover over the provided element")
list_pages: description adds nothing beyond the tool name ("Get a list of pages open in the browser.")
resize_page.width: parameter description very short ("Page width")
resize_page.height: parameter description very short ("Page height")
Descriptions are the model's only guide to when/how to call a tool — treat them as prompt engineering.
Describe every tool and every parameter, including units, formats, and constraints.
Each tool's description should say something the name doesn't, and should be unique to that tool.
!Tool annotationsAnnotation coverage 20% (29/145 hint fields set).
Some tools set a few hints but not all of title/readOnlyHint/destructiveHint/idempotentHint/openWorldHint.
Add annotations: title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint.
These let clients gate risky calls and give agents/users a friendly display name — optional but valuable.
!Tool titles29 of 29 tool(s) have no title.
• click: no top-level title (or annotations.title)
• close_page: no top-level title (or annotations.title)
• drag: no top-level title (or annotations.title)
• emulate: no top-level title (or annotations.title)
• evaluate_script: no top-level title (or annotations.title)
• fill: no top-level title (or annotations.title)
• fill_form: no top-level title (or annotations.title)
• get_console_message: no top-level title (or annotations.title)
• get_network_request: no top-level title (or annotations.title)
• handle_dialog: no top-level title (or annotations.title)
• hover: no top-level title (or annotations.title)
• lighthouse_audit: no top-level title (or annotations.title)
• list_console_messages: no top-level title (or annotations.title)
• list_network_requests: no top-level title (or annotations.title)
• list_pages: no top-level title (or annotations.title)
• navigate_page: no top-level title (or annotations.title)
• new_page: no top-level title (or annotations.title)
• performance_analyze_insight: no top-level title (or annotations.title)
• performance_start_trace: no top-level title (or annotations.title)
• performance_stop_trace: no top-level title (or annotations.title)
• press_key: no top-level title (or annotations.title)
• resize_page: no top-level title (or annotations.title)
• select_page: no top-level title (or annotations.title)
• take_heapsnapshot: no top-level title (or annotations.title)
• take_screenshot: no top-level title (or annotations.title)
• take_snapshot: no top-level title (or annotations.title)
• type_text: no top-level title (or annotations.title)
• upload_file: no top-level title (or annotations.title)
• wait_for: no top-level title (or annotations.title)
Declare a top-level `title` on each tool — it gives clients a friendly display name distinct from the machine-readable `name`.
`annotations.title` (the older location) is also accepted, but the top-level `title` field is now the spec-preferred place for it.
!Server instructionsNo top-level instructions declared.
Declare instructions to guide agents on when/how to use this server.
Return a non-empty `instructions` string in your InitializeResult — most SDKs let you set this alongside serverInfo.
Handshake + list latencytools/list responded in 14ms.

add the badge

Paste into your README:

[![scoremcp](https://scoremcp.dev/badge/chrome-devtools-mcp)](https://scoremcp.dev/servers/chrome-devtools-mcp)
[ scoremcp v0.4.0 ] [ 35 servers indexed ] [ static · side-effect-free ]