zhsama/duckduckgo-mcp-server
[ tools: 1 ][ checks: 11 ][ latency: 4ms ]
85/100(B)
npx -y duckduckgo-mcp-server
check breakdown
✓Tools exposed — Server exposed 1 tool.
• duckduckgo_web_search
✓Input schemas valid — All tools have a valid JSON-Schema input definition.
✓Input schema quality — Input schemas are well-typed and documented.
!Output schemas — No tools declare an outputSchema.
→ Optional: declare outputSchema for tools with structured results so agents can validate/parse output reliably.
✓Duplicate tool names — All tool names are unique.
✓Tool naming — All tool names use spec-legal characters.
✓Descriptions — Every tool and parameter is clearly described.
!Tool annotations — Annotation coverage 0% (0/5 hint fields set).
• duckduckgo_web_search: no annotations at all
→ 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 titles — 1 of 1 tool(s) have no title.
• duckduckgo_web_search: 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 instructions — No 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 latency — tools/list responded in 4ms.
add the badge
Paste into your README:
[](https://scoremcp.dev/servers/duckduckgo-mcp)