{"schema_version":"silentcritique.assured-context.v0.1","resource_type":"assured_context_pack","generated_at":"2026-08-11T23:28:40.017Z","snapshot_cursor":"scac_2ccb730d385060af2f424a52","subject":{"slug":"duckduckgo-mcp","name":"DuckDuckGo Search MCP Server","type":"mcp_server","vendor":"nickclyde (community)","canonical_url":"https://github.com/nickclyde/duckduckgo-mcp-server","verdict_url":"https://silentcritique.com/verdicts/duckduckgo-mcp"},"request":{"task":null,"task_adaptation_applied":false,"task_adaptation_notice":"v0.1 carries the task with the full bounded snapshot; it does not yet filter or rerank evidence for that task.","freshness_required_hours":null,"freshness_requirement_met":null},"assessment":{"claim_tested":"Can the public DuckDuckGo MCP server run a live web search and fetch page content over MCP without any API key?","summary":"The DuckDuckGo Search MCP server passed a real smoke test: a live search returned relevant ranked results and page fetch returned readable content with character accounting. The score is moderate because the server scrapes DuckDuckGo without an official API, so reliability and continued operation depend on a third party that has not agreed to serve it.","score":74,"score_label":"Working keyless search, unofficial upstream","verdict_status":"published","strengths":["Worked with zero configuration and no API key in the tested run.","Result formatting is structured enough for an agent to cite URLs.","Content fetch reports how much of the page was returned, which limits silent truncation."],"failure_modes":["Scraping-based search can be rate limited or blocked upstream without notice, and results may differ from an official API.","Fetched page content enters the agent context unfiltered, which is a prompt-injection path the host must handle.","One search and one fetch were probed; pagination, regions, and error paths were not."],"dissent":["The reliability reviewer withheld points because the upstream is unofficial and can break silently.","The harness reviewer noted the tested happy path worked exactly as documented."],"improvement_path":["Document rate-limit behavior and failure modes when DuckDuckGo blocks requests.","Offer an option to sanitize or annotate fetched content before it reaches the model context."]},"evidence":{"mode":"dated_public_smoke_test","methodology_version":"sc-agent-trust-v0.1","tested_at":"2026-07-03","published_at":"2026-07-03","updated_at":"2026-07-03","evaluator_panel":["Protocol harness","Reliability reviewer","Operator skeptic"],"test_setup":["Started duckduckgo-mcp-server==0.5.0 over MCP stdio via uvx.","Used the official MCP client SDK to list tools, search for \"model context protocol\" with max_results 3, and fetch https://example.com/.","Stored the full tool-call evidence in evidence/trust5/2026-07-03-mcp-pilot.json."],"observations":[{"label":"Two tools discovered","detail":"The server exposes search(query, max_results, region) and fetch_content(url, ...), a compact surface for web retrieval.","source_reference":"evidence/trust5/2026-07-03-mcp-pilot.json","source_is_public_url":false},{"label":"Live search returned relevant results","detail":"The query returned 3 results led by modelcontextprotocol.io, each with URL and summary.","source_reference":"evidence/trust5/2026-07-03-mcp-pilot.json","source_is_public_url":false},{"label":"Page fetch returned readable content","detail":"fetch_content on example.com returned extracted text with an explicit character-range note (139 of 139 characters shown).","source_reference":"evidence/trust5/2026-07-03-mcp-pilot.json","source_is_public_url":false}],"limitations":["This was an unsolicited smoke test of the public package, not a source audit.","Live results depend on DuckDuckGo availability at test time."]},"freshness":{"tier":"fresh","label":"Recently verified","detail":"Evidence captured 39 days ago.","age_days":39,"age_hours":959,"live_monitoring":false,"interpretation":"This is a dated snapshot. It is not a claim about current live behavior."},"rights_and_reliance":{"source_licences_verified":false,"usage_rights":"not_asserted","reliance":"decision_support_only","notice":"Verify source rights and re-test material claims before autonomous high-impact action."},"reply_and_corrections":{"status":"unclaimed","body":"No vendor reply has been requested or published as of 2026-07-03. SilentCritique will publish factual corrections or a right of reply through the corrections process."},"links":{"self":"/api/assurance/subjects/duckduckgo-mcp","changes":"/api/assurance/subjects/duckduckgo-mcp/changes?cursor=scac_2ccb730d385060af2f424a52","methodology":"https://silentcritique.com/methodology","corrections":"https://silentcritique.com/corrections-and-reply"}}