duckduckgo

DuckDuckGo: The DuckDuckGo Search API is a tool that allows developers and businesses to integrate.

Should I use this

Quality & Safety

A
Description quality
97%
Schema completeness
98%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,629Tokens (tool definitions)
~2.3 KBTypical response size
Moderate attention impact (1.27% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "duckduckgo": {
      "url": "https://mcp.jojapi.com/duckduckgo"
    }
  }
}

Remote endpoints

https://mcp.jojapi.com/duckduckgostreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡get(q, region, safe_search, time, page)

DuckDuckGo web search: the organic results (url, title, plain and HTML snippet, result types, host, sublinks, date, site name, rating) and the other blocks of the same answer: ads, related searches, the knowledge panel, the AI answer when DuckDuckGo gives it inline, and the news, image and video strips. Blocks DuckDuckGo did not send are empty lists or null. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "region": {
      "type": "string",
      "title": "Region",
      "example": "us-en",
      "description": "A DuckDuckGo region code such as us-en, de-de or uk-en; wt-wt is no region."
    },
    "safe_search": {
      "type": "string",
      "enum": [
        "strict",
        "moderate",
        "off"
      ],
      "title": "Safe Search",
      "description": "DuckDuckGo's default is moderate."
    },
    "time": {
      "type": "string",
      "title": "Time",
      "example": "week",
      "description": "Only results from the past day, week, month or year, or from a date range YYYY-MM-DD..YYYY-MM-DD."
    },
    "page": {
      "type": "integer",
      "title": "Page",
      "example": 2,
      "description": "The results page, from 1. The first page holds 10 results, every later page 15; positions continue across pages."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟢get_news(q, region, safe_search, time, page)

DuckDuckGo News for a query, newest coverage first as DuckDuckGo orders it (title, url, excerpt, source, date, image). About 25 articles a page. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "region": {
      "type": "string",
      "title": "Region",
      "example": "us-en",
      "description": "A DuckDuckGo region code such as us-en, de-de or uk-en; wt-wt is no region."
    },
    "safe_search": {
      "type": "string",
      "enum": [
        "strict",
        "moderate",
        "off"
      ],
      "title": "Safe Search",
      "description": "DuckDuckGo's default is moderate."
    },
    "time": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month"
      ],
      "title": "Time",
      "description": "Only articles from the past day, week or month."
    },
    "page": {
      "type": "integer",
      "title": "Page",
      "description": "The results page, from 1."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟢get_images(q, region, safe_search, time, size, ...)

DuckDuckGo Images for a query (title, page url, image, thumbnail, width, height). Up to 100 images a page. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "region": {
      "type": "string",
      "title": "Region",
      "example": "us-en",
      "description": "A DuckDuckGo region code such as us-en, de-de or uk-en; wt-wt is no region."
    },
    "safe_search": {
      "type": "string",
      "enum": [
        "strict",
        "moderate",
        "off"
      ],
      "title": "Safe Search",
      "description": "DuckDuckGo's default is moderate."
    },
    "time": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month"
      ],
      "title": "Time",
      "description": "Only images from the past day, week or month."
    },
    "size": {
      "type": "string",
      "enum": [
        "small",
        "medium",
        "large",
        "wallpaper"
      ],
      "title": "Size"
    },
    "color": {
      "type": "string",
      "enum": [
        "color_only",
        "monochrome",
        "red",
        "orange",
        "yellow",
        "green",
        "blue",
        "purple",
        "pink",
        "brown",
        "black",
        "gray",
        "teal",
        "white"
      ],
      "title": "Color"
    },
    "type": {
      "type": "string",
      "enum": [
        "photo",
        "clipart",
        "gif",
        "transparent",
        "line"
      ],
      "title": "Type"
    },
    "layout": {
      "type": "string",
      "enum": [
        "square",
        "tall",
        "wide"
      ],
      "title": "Layout"
    },
    "license": {
      "type": "string",
      "enum": [
        "creative_commons",
        "public_domain",
        "share",
        "share_commercially",
        "modify",
        "modify_commercially"
      ],
      "title": "License",
      "description": "creative_commons is any Creative Commons license."
    },
    "page": {
      "type": "integer",
      "title": "Page",
      "description": "The results page, from 1."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟢get_videos(q, region, safe_search, time, duration, ...)

DuckDuckGo Videos for a query (title, url, description, duration, published, publisher, uploader, views, thumbnail). Up to 60 videos a page. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "region": {
      "type": "string",
      "title": "Region",
      "example": "us-en",
      "description": "A DuckDuckGo region code such as us-en, de-de or uk-en; wt-wt is no region."
    },
    "safe_search": {
      "type": "string",
      "enum": [
        "strict",
        "moderate",
        "off"
      ],
      "title": "Safe Search",
      "description": "DuckDuckGo's default is moderate."
    },
    "time": {
      "type": "string",
      "enum": [
        "day",
        "week",
        "month"
      ],
      "title": "Time",
      "description": "Only videos published in the past day, week or month."
    },
    "duration": {
      "type": "string",
      "enum": [
        "short",
        "medium",
        "long"
      ],
      "title": "Duration",
      "description": "short is under 5 minutes, medium 5 to 20, long over 20."
    },
    "resolution": {
      "type": "string",
      "enum": [
        "high",
        "standard"
      ],
      "title": "Resolution"
    },
    "license": {
      "type": "string",
      "enum": [
        "creative_commons",
        "youtube"
      ],
      "title": "License"
    },
    "page": {
      "type": "integer",
      "title": "Page",
      "description": "The results page, from 1."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟢get_autocomplete(q, region)

DuckDuckGo's search suggestions for a partial query. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "region": {
      "type": "string",
      "title": "Region",
      "example": "us-en",
      "description": "A DuckDuckGo region code such as us-en, de-de or uk-en; wt-wt is no region."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟡get_places(q, latitude, longitude)

DuckDuckGo's local results (its Places module and Maps tab): businesses and places with category, address, coordinates, phone, website, rating, review count, price level, opening hours, open now, amenities, photos, menu and sample reviews (rating, text, date). DuckDuckGo takes the listings from Tripadvisor or Yelp depending on the area; `source` names it. Name the place in the query ("coffee in berlin germany") or pass latitude and longitude; with neither, DuckDuckGo searches around the address the request leaves from, and a place name several countries share can resolve to the one nearest that address, so add the country. Billing per call: 1 Credits.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "title": "Search Query",
      "example": "nikola tesla",
      "description": "The search query."
    },
    "latitude": {
      "type": "number",
      "title": "Latitude",
      "example": 48.8566,
      "description": "Search around this point; give longitude with it. Results then carry their distance from it."
    },
    "longitude": {
      "type": "number",
      "title": "Longitude",
      "example": 2.3522,
      "description": "Search around this point; give latitude with it."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded1 tools
verifiedversion not recorded1 tools
verifiedversion not recorded1 tools