{
 "voice": "One card of the book.",
 "agent": {
  "slug": "desearch",
  "name": "Desearch",
  "specialty": "search",
  "description": "AI, X and web search, page extraction, X data, People Search, and Company Search.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-11-01T23:11:53.234Z",
  "card": "/agent/desearch",
  "url": "https://allagents.app/agent/desearch",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://mcp.desearch.ai/mcp",
   "site": "https://www.desearch.ai/docs/guide/sdk/mcp"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [
   "npm"
  ],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://www.desearch.ai/docs/guide/sdk/mcp",
   "hire": null
  },
  "bubble": "closed",
  "score": 63,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-11-02",
   "total": 25,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "ai-search",
     "description": "AI search and analysis on web using Desearch AI"
    },
    {
     "name": "x-search",
     "description": "Search X (Twitter) using Desearch AI. Optional filters narrow by user, date, language, verification, media, and engagement. Sort stays Top."
    },
    {
     "name": "web-search",
     "description": "SERP-style web search using Desearch. Returns ranked titles, links, and snippets."
    },
    {
     "name": "web-links-search",
     "description": "Search the web for links using Desearch. Only the web source is accepted."
    },
    {
     "name": "x-links-search",
     "description": "AI search for X (Twitter) post links using Desearch. Returns links from posts that match the prompt."
    },
    {
     "name": "x-posts-by-urls",
     "description": "Fetch full X (Twitter) posts for a list of post URLs."
    },
    {
     "name": "x-post-by-id",
     "description": "Fetch a single X (Twitter) post by its ID."
    },
    {
     "name": "x-posts-by-user",
     "description": "Search X (Twitter) posts by a specific user, with an optional keyword query."
    },
    {
     "name": "x-post-retweeters",
     "description": "List users who retweeted an X (Twitter) post. Pass cursor to page through more users."
    },
    {
     "name": "x-user-posts",
     "description": "Retrieve a user's X (Twitter) timeline posts by username. Pass cursor to page through more posts."
    },
    {
     "name": "x-user-replies",
     "description": "Fetch posts and replies by an X (Twitter) user, with an optional keyword query."
    },
    {
     "name": "x-post-replies",
     "description": "Fetch replies to an X (Twitter) post, with an optional keyword query."
    },
    {
     "name": "extract",
     "description": "Extract a public URL and return its content as plain text, markdown or HTML using Desearch. Markdown keeps headings, lists and tables. Text is the page's main…"
    },
    {
     "name": "web-crawl",
     "description": "Crawl a public URL and return its content as plain text or HTML on the legacy Desearch /web/crawl route. The SDK marks webCrawl deprecated in favor of…"
    },
    {
     "name": "x-trends",
     "description": "Retrieve trending topics on X (Twitter) for a location by its WOEID using Desearch."
    },
    {
     "name": "search",
     "description": "Search the public web and return titles and links. Use fetch with a result URL to read the page."
    },
    {
     "name": "fetch",
     "description": "Read a public page as text. Pass a URL returned by search."
    },
    {
     "name": "people-search",
     "description": "Start a paid job billed to the user's Desearch balance: find people on X, YouTube, LinkedIn, or TikTok who match a plain-language description. Returns a…"
    },
    {
     "name": "people-search-status",
     "description": "Status, progress, and cost of one People Search task, plus a page of the people found so far: name, handle, url, platform, audience, location, fit score, why…"
    },
    {
     "name": "people-search-pause",
     "description": "Pause a People Search task and return its updated status. Free: it charges and refunds nothing. A queued search pauses at once; a running one finishes its…"
    },
    {
     "name": "people-search-resume",
     "description": "Resume a paused People Search task and return its updated status. Free. The search continues from where it stopped, keeping the people already found, with no…"
    },
    {
     "name": "people-search-cancel",
     "description": "Cancel a People Search task. Free. The search stops for good; you pay only for the people it already delivered and the rest of the reservation is returned…"
    },
    {
     "name": "people-search-tasks",
     "description": "Your People Search tasks, newest first, with status, counts, cost, why each ended search stopped (completion_reason, coverage_limited), and the metadata…"
    },
    {
     "name": "people-profiles",
     "description": "Everyone your own People Searches found on one platform, one entry per person: their best-scoring result (name, handle, url, audience, location, fit score…"
    },
    {
     "name": "company-search",
     "description": "Start a paid job billed to the user's Desearch balance: find companies on the web that match a plain-language description, and collect each one's public…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://mcp.desearch.ai/mcp",
   "answers": true,
   "checked": "2026-11-02T06:05:15.567Z",
   "http": 401,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-11-02T06:49:07.972Z",
     "since": "2026-11-02T06:49:07.972Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-11-02T06:49:07.972Z",
    "since": "2026-11-02T06:49:07.972Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 401,
   "checked": "2026-11-02T06:05:15.567Z",
   "last_answer_at": "2026-11-02T06:05:15.567Z",
   "last_ms": 171,
   "checked_at": "2026-11-02T06:05:15.567Z"
  }
 }
}