实测可用营销和社交搜索和网页
Desearch
39 tools: AI/web/X search, TikTok, Facebook, Instagram, YouTube, Reddit, Threads, People/Companies.
https://mcp.desearch.ai/mcpclaude mcp add --transport http mcp-desearch https://mcp.desearch.ai/mcpCursor 等客户端的配置
{
"mcpServers": {
"mcp-desearch": {
"type": "http",
"url": "https://mcp.desearch.ai/mcp"
}
}
}连接时它要:x-api-key
要注意
有会改数据的工具:2 个
服务方自己把这些工具标成了会删除或改写数据(destructiveHint),让智能体调用前先问你。
- 测试结果
- 实测可用:握手成功
- 工具
- 39 个工具
- 握手用时
- 1.4 秒
- 传输方式
- streamable-http · 2025-06-18
- 测试时间
- 2026 年 11 月 6 日
- 官方目录名称
io.github.Desearch-ai/mcp-desearchv0.9.0- 登记于
- 2026 年 11 月 5 日
- 更新于
- 2026 年 11 月 5 日
- 也能装到本机
- 1 个安装包
最近 1 次测试
| 时间 | 结果 | 用时 |
|---|---|---|
| 2026-11-06 12:26 UTC | 握手成功 | 1.4 秒 |
它列出的 39 个工具
“只读”和“会改数据”是服务方自己标的。带下划线的参数是必填的。
ai-search只读AI Search
AI search and analysis on web using Desearch AI
prompttoolsdate_filterstart_dateend_dateresult_typeinclude_domainsexclude_domainsmodelcompany-enrichCompany Enrich
Start a paid job billed to the user's Desearch balance: collect public contact data for companies you already know, by domain. Send 1-200 domains or URLs; each is reduced to its host without www., lowercased, and deduplicated, and the task reads every one. Returns a task_id at once, with the task's status and reserved_cost_usd. You get one company per domain with the same fields as company-search but no fit score (score is null). The task's count is the number of domains left after deduplication. Cost: the call reserves one company per domain sent at the Company Enrich per-company price at the time of the call (reserved_cost_usd; prices at https://desearch.ai/pricing). When the task ends you pay only for the companies it delivered (final_cost_usd; a minimum of 1; a task that delivers none is free) and the rest of the reservation, including duplicate domains, is returned. Data: Desearch reads public data only: each company's own website (its homepage and its contact, about, team, and im
domainsrolesinfer_emailsverify_emailsidempotency_keymetadatacompany-searchCompany Search
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 contact data. Returns a task_id at once, with the task's status and reserved_cost_usd. Cost: without max_cost_usd, the call reserves count companies at the Company Search per-company price at the time of the call (reserved_cost_usd; prices at https://desearch.ai/pricing). When the task ends you pay only for the companies it delivered (final_cost_usd; a minimum of 1 when it delivers any; a task that delivers none is free) and the rest of the reservation is returned. A company left out by min_score or require is not billed. Such a search stops once it costs more than the companies it found pay for (completion_reason cost_limit, coverage_limited: true). Search budget: with max_cost_usd the whole budget is reserved, and the search goes on until it delivers count or spends the budget. Its search effort is billed where the companies delivere
querycountmin_scoreexcludecountriesrequiremax_cost_usdcontinue_fromrolesinfer_emailsverify_emailsidempotency_keymetadatacompany-search-cancel会改数据Cancel Company Search
Cancel a Company Search or Company Enrich task. Free. The task stops for good; you pay only for the companies it already delivered (a task cancelled before it starts costs nothing) and the rest of the reservation is returned. A Company Search started with max_cost_usd pays for its search effort so far instead when that is more, up to its budget. Companies delivered so far stay readable for 30 days. This cannot be undone.
task_idcompany-search-pausePause Company Search
Pause a Company Search or Company Enrich task and return its updated status. Free: it charges and refunds nothing. A queued task pauses at once; a running one finishes its current batch first (status pausing, then paused). Pausing loses no data: the companies delivered so far stay readable with company-search-status, and the task keeps its progress. Billing does not change: the reservation made when the task started stays reserved while paused and is settled only when the task ends. Undo it with company-search-resume, which continues from where the task stopped with no new charge. Limit: a task paused for more than 7 days is cancelled by the API and can no longer be resumed; you then pay only for the companies already delivered, the rest of the reservation is returned, and the companies delivered stay readable for 30 days.
task_idcompany-search-resumeResume Company Search
Resume a paused Company Search or Company Enrich task and return its updated status. Free. The task continues from where it stopped, keeping the companies already delivered, with no new charge. Works only on a paused task, within 7 days of pausing; a task in any other state, including one the API cancelled after 7 days paused, returns 409. Poll company-search-status for the new companies.
task_idcompany-search-status只读Get Company Search Status
Status, progress, and cost of one Company Search or Company Enrich task, plus a page of the companies delivered so far: domain, name, url, location, fit score (null for Company Enrich) and why it matched, primary_email and primary_contact, public emails, phones, and social profiles with the page each came from (source_url), leaders with their roles, title, LinkedIn profile, and emails (each with its verification status; inferred ones with source: inferred and a confidence), contact_coverage, and enrichment (status partial or complete, and each stage: profile, contacts, people, email_patterns, email_check). Free: it reads a task you already started and runs no new search. Cost fields are reserved_cost_usd and, once the task ended, final_cost_usd. The data came from each company's own website, public web search, and public LinkedIn profiles. Companies arrive while the task runs and are filled in place by the later stages: pass the returned next_cursor as cursor to get only the companies
task_idcursorlimitinclude_companiescompany-search-tasks只读List Company Search Tasks
Your Company Search and Company Enrich tasks, newest first, with status, counts, cost, why each ended task stopped (completion_reason, coverage_limited), max_cost_usd and continue_from when a search set them, and the metadata labels set on company-search or company-enrich. Free; it lists your own tasks, not the companies they found (read those with company-search-status). People Search tasks are not listed here (see people-search-tasks). Use it to find a task_id (filter by type, status, or metadata to find the tasks of one campaign), or to see which tasks are still queued, running, or paused: a new task is refused while too many People Search and Company Search tasks are active.
typestatuslimitcursormetadataextract只读Extract Page Content
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 content; set full_page for every section, such as opening hours or fee tables. A js_required error means the page needs js: true; blocked means the site refused or showed a bot check. Preferred over web-crawl for new integrations. API docs: https://www.desearch.ai/docs/api-reference/get-web-extract
urlformatjswaitfull_pagefacebook只读Facebook
Read public Facebook data with Desearch. Set action and that action's arguments. search (query; optional count, cursor) and hashtag (tag; optional count, cursor) return Meta Ad Library ads that match, not organic posts. post (id): one public post. profile (profile_id): a page or profile by ID or public handle. profile_posts (profile_id; optional count, cursor): its posts. comments (post_id; optional count, cursor): a post's comments, about 10 per page. post and profile return the item itself. List actions return { results, next_cursor, next }. For the next page, call again with the same action and target and cursor set to next_cursor, unchanged; next_cursor is null on the last page. A cursor lasts 24 hours.
actionqueryidprofile_idpost_idtagcountcursorfetch只读Fetch Page
Read a public page as text. Pass a URL returned by search.
idinstagram只读Instagram
Read public Instagram data with Desearch. Set action and that action's arguments. search (query; optional count): profiles that match, one page with no cursor. media (id): one post by shortcode, numeric ID, or URL. profile (username): one profile. profile_posts (username; optional count, cursor): a user's posts. comments (shortcode; optional count, cursor): a post's comments. hashtag (tag; optional count, cursor): posts with a hashtag. media and profile return the item itself. List actions return { results, next_cursor, next }. For the next page, call again with the same action and target and cursor set to next_cursor, unchanged; next_cursor is null on the last page. A cursor lasts 24 hours.
actionqueryidusernameshortcodetagcountcursorpeople-profiles只读List People Found
Everyone your own People Searches found on one platform, one entry per person: their best-scoring result (name, handle, url, audience, location, fit score, why they matched, public contacts, and links) and the search that found them (found_by). Free: it reads only people your earlier searches found, runs no new search, and queries no outside source. That data came from public profiles and posts, with only the contacts each person lists publicly. Search by name, handle, bio, or location with q, filter by contact channels (has), audience, fit score, location, or verification, and sort by score, recent, or audience. People from searches that ended more than 30 days ago are left out.
platformqsortlimitcursorhasmin_audiencemax_audiencemin_scorelocationverifiedpeople-searchPeople Search
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 task_id at once, with the task's status and reserved_cost_usd. Cost: the call reserves count times the platform's per-person price at the time of the call (reserved_cost_usd; prices at https://desearch.ai/pricing). When the search ends you pay only for the people it delivered (final_cost_usd; a per-search minimum applies when it finds anyone; a search that finds no one is free) and the rest of the reservation is returned. Data: each person comes back with a fit score, why they matched, their audience, and only the contacts and links they list publicly. Desearch reads public data only. X: public posts and public profile fields (bio, followers, website, location). YouTube: public channel pages (About section, subscribers, country, links) and the creator's own website for publicly listed contact details. LinkedIn: public posts and public
platformquerycountmin_scoreexcludeidempotency_keymetadatamin_followersmax_followersmin_subscribersmax_subscribersverified_onlyrequire_contactcountrieskeywordsexclude_keywordspeople-search-cancel会改数据Cancel People Search
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. People found so far stay readable for 30 days. This cannot be undone.
task_idpeople-search-export只读Export People Found
The people your own People Searches found, as CSV or JSON Lines text: one search (task_id), or everyone found on one platform (platform, with the same q, sort, and filters as people-profiles). Free: it reads people your earlier searches found and runs no new search. The reply is a note with the row count, then the file text cut at a row boundary to max_rows rows and 50,000 characters; the note says how many rows were cut and where to get the whole file. CSV keeps its header row. The data came from public profiles and posts, with only the contacts each person lists publicly.
task_idplatformformatqsorthasmin_audiencemax_audiencemin_scorelocationverifiedmax_rowspeople-search-pausePause People Search
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 current batch first (status pausing, then paused). Pausing loses no data: the people found so far stay readable with people-search-status, and the search keeps its progress. Billing does not change: the reservation made when the search started stays reserved while paused and is settled only when the search ends. Undo it with people-search-resume, which continues from where the search stopped with no new charge. Limit: a search paused for more than 7 days is cancelled by the API and can no longer be resumed; you then pay only for the people already delivered, the rest of the reservation is returned, and the people found stay readable for 30 days.
task_idpeople-search-resumeResume People Search
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 new charge: the cost already spent is carried forward and the original reservation still covers it. Works only on a paused search, within 7 days of pausing; a search in any other state, including one the API cancelled after 7 days paused, returns 409. Poll people-search-status for the new people.
task_idpeople-search-status只读Get People Search Status
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 they matched, contacts, and links. Free: it reads a search you already started and runs no new search. Cost fields are reserved_cost_usd and, once the search ended, final_cost_usd. People come from public profiles and posts on the search's platform, with only the contacts they list publicly. People arrive while the search runs: pass the returned next_cursor as cursor on the next call to get only the people found since then. When done is true and has_more is false you have everyone the search found. An ended task has completion_reason (why it stopped), coverage_limited: true when a budget stopped it before count (more people may match), and warnings such as partial_enrichment (some profiles could not be read, so those people were scored on the search hit; they show enrichment: failed). Each person has fully_verified (every criterio
task_idcursorlimitinclude_peoplepeople-search-tasks只读List People Search Tasks
Your People Search tasks, newest first, with status, counts, cost, why each ended search stopped (completion_reason, coverage_limited), and the metadata labels set on people-search. Free; it lists your own tasks, not the people they found (read those with people-search-status or people-profiles). Use it to find a task_id (filter by metadata to find the searches of one campaign), or to see which searches are still queued, running, or paused: a new search is refused while too many are active.
platformstatuslimitcursormetadatareddit只读Reddit
Read public Reddit data with Desearch. Set action and that action's arguments. search (query; optional sort, timeframe, cursor): posts across all subreddits that match a keyword. subreddit (name): a subreddit's description, rules, and weekly activity; the name is case-sensitive ('AskReddit', not 'askreddit'). subreddit_posts (name; optional sort, timeframe, cursor): its posts. post (id): one post by ID or URL, without comments. comments (post_id; optional cursor): a post's comments as a tree, with the replies Reddit loaded alongside them. A post id from search or subreddit_posts can be passed to post or comments. subreddit and post return the item itself. List actions return { results, next_cursor, next }. For the next page, call again with the same action and target and cursor set to next_cursor, unchanged; next_cursor is null on the last page. A cursor lasts 24 hours.
actionquerysorttimeframenameidpost_idcursorsearch只读Search
Search the public web and return titles and links. Use fetch with a result URL to read the page.
querysearch-api只读Search API
Search the web with the Desearch Search API and return ranked pages, each with its title, URL, publication date when known, and the passage that best matches the query. Set page_text to add each page's full text. Returns { results, cost_usd, usage_count, service, currency }. Use search for titles and links only, and web-search for SERP-style snippets.
querymodecountstart_dateend_datehighlightspage_textthreads只读Threads
Read public Threads data with Desearch. Set action and that action's arguments. search (query; optional start_date, end_date): one page of posts that match a keyword. search_users (query): accounts that match a username or name. profile (username): one profile with bio, followers, and links. profile_posts (username): the account's latest public posts (Threads shows only the most recent ones). post (id): one post by URL or shortcode, with its replies (comments) and the author's own continuation posts (threadItems). profile and post return the item itself. List actions return { results, next_cursor, next }; Threads returns no further pages, so next_cursor is always null and no action takes a cursor.
actionquerystart_dateend_dateusernameidtiktok只读TikTok
Read public TikTok data with Desearch. Set action and that action's arguments. search (query; optional count, sort, cursor): videos that match a keyword. post (id): one video by its ID. profile (username): one profile. profile_posts (username; optional count, cursor): a user's videos. comments (video_id; optional count, cursor): a video's comments. hashtag (tag; optional count, cursor): videos with a hashtag. trending (optional region, count): trending videos for a region, one page. A video id from search can be passed to post or comments. post and profile return the item itself. List actions return { results, next_cursor, next }. For the next page, call again with the same action and target and cursor set to next_cursor, unchanged; next_cursor is null on the last page. A cursor lasts 24 hours.
actionquerysortidusernamevideo_idtagregioncountcursorweb-crawl只读Crawl Web Page (Legacy)
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 extract; this tool stays for parity with that route. Prefer extract for new integrations. API docs: https://www.desearch.ai/docs/guide/apis/extract-api
urlformatjswaitfull_pageweb-links-search只读Web Links Search
Search the web for links using Desearch. Only the web source is accepted.
prompttoolscountweb-search只读Web Search
SERP-style web search using Desearch. Returns ranked titles, links, and snippets.
querystartx-links-search只读X Links Search
AI search for X (Twitter) post links using Desearch. Returns links from posts that match the prompt.
promptcountx-post-by-id只读Get X Post by ID
Fetch a single X (Twitter) post by its ID.
idx-post-replies只读Get X Post Replies
Fetch replies to an X (Twitter) post, with an optional keyword query.
post_idcountqueryx-post-retweeters只读List X Post Retweeters
List users who retweeted an X (Twitter) post. Pass cursor to page through more users.
idcursorx-posts-by-urls只读Get X Posts by URLs
Fetch full X (Twitter) posts for a list of post URLs.
urlsx-posts-by-user只读Search X Posts by User
Search X (Twitter) posts by a specific user, with an optional keyword query.
userquerycountx-search只读X Search
Search X (Twitter) using Desearch AI. Optional filters narrow by user, date, language, verification, media, and engagement. Sort stays Top.
querycountuserstart_dateend_datelangverifiedblue_verifiedis_quoteis_videois_imagemin_retweetsmin_repliesmin_likesx-trends只读Get X Trends
Retrieve trending topics on X (Twitter) for a location by its WOEID using Desearch.
woeidcountx-user-posts只读Get X User Timeline
Retrieve a user's X (Twitter) timeline posts by username. Pass cursor to page through more posts.
usernamecursorx-user-replies只读Get X User Replies
Fetch posts and replies by an X (Twitter) user, with an optional keyword query.
usercountqueryyoutube只读YouTube
Read public YouTube data with Desearch. Set action and that action's arguments. search (query; optional type, upload_date, sort_by, duration, cursor): videos, Shorts, live streams, channels, and playlists that match a keyword; each result has a type. video (id): one video or Short by ID or URL, with its channel, counts, chapters, and caption languages. transcript (video_id; optional language): its captions as plain text and timestamped segments; a video without captions returns 404. comments (video_id; optional order, cursor): its top-level comments. channel (handle): one channel by handle or channel ID. channel_videos (handle; optional sort, cursor): the channel's videos. A video id from search or channel_videos can be passed to video, transcript, or comments. video, transcript, and channel return the item itself. List actions return { results, next_cursor, next }. For the next page, call again with the same action and target and cursor set to next_cursor, unchanged; next_cursor is nu
actionquerytypeupload_datesort_bydurationidvideo_idlanguageorderhandlesortcursor
测试只做握手和列出工具,没有调用任何工具。名称和说明是登记的人写的,原样展示,我们没有核实。