
Duchamp
io.github.duchamp-app由 GitHub 账号 duchamp-app 发布v0.10.0更新于 Oct 24, 2026
Competitor ad research for coding agents: long-running ads, keyframes and transcripts over MCP.
概览
Duchamp 是面向竞品广告研究的远程 MCP 服务器,让编码助手搜索长期投放的广告、查看关键帧与转录文本并比较品牌。
- 可以做什么
- 搜索并打开已观测广告(含长期投放广告),获取文案、关键帧、语音转录和落地页,并按细分领域或广告主页查找重复素材与钩子库。拆解和比较广告主:品牌结构、落地页、付费合作方、创意更新速度与域名查询。管理收藏库:保存广告、标签和链接,创建看板,更新备注、标签和评分,导出看板为 JSON 或 CSV。根据广告、标签、页面或看板生成参考性迁移简报。读取自有 Meta 广告账户表现:工作区、洞察、时间序列、创意和广告报告。读取和管理营销项目。
- 适用场景
- 适合需要竞品或市场广告研究的场景:查找已投放 90 天以上的广告、挖掘钩子与优惠、比较广告主,或把收藏广告整理成简报。也适合在竞品研究之外查看自有 Meta 广告表现。
- 运行要求
- 远程 Streamable HTTP 端点 duchamp.app/api/mcp,通过 OAuth 登录免费 Duchamp 账户,无需 API 密钥。收藏库、团队看板、Performance 和营销工具各自需要在网站上单独授权该应用。Performance 需要连接自己的 Meta 广告账户(只读)。需要网络访问。
安装
在 SourceWeft 中
- 打开 控制台中的 Duchamp,将其添加到工作区。
- 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
- 为需要使用其工具的对话启用该服务。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
交给智能体安装
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.duchamp-app%2Fduchamp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。其他 MCP 客户端
把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。
{
"mcpServers": {
"duchamp": {
"type": "http",
"url": "https://duchamp.app/api/mcp"
}
}
}README
Duchamp — ad research for coding agents
Duchamp is an ad-research tool for Claude Code, Codex, and Cursor. It finds the ads curated advertisers have kept running for 90+ days, and you save, compare, and pull the research materials into your agent, on the web or over one remote MCP server: https://duchamp.app/api/mcp.
Call search_ads first, then get_ad or get_brand_anatomy. Creative files, ad copy, keyframes, and transcripts need the signed-in account. Lists and counts on the site are public. A reference prompt from compose_transfer_brief is a reference. It does not promise the same look or the same outcome. The original ad stays a link (duchamp_url). get_ad returns timestamped keyframes, the speech transcript, full body copy, the landing URL, and observed numbers, plus a stored AI analysis when one exists (format, hook, 15 emotional drivers, persona, creative targeting, product category, first product appearance — filled by a nightly batch, Foreplay-style). Treat the analysis as a reference and check it against the materials; search_ads can filter by its fields. Product facts passed to compose_transfer_brief are not stored. Saved items, boards, and watched advertiser pages are stored for the signed-in user. Those tools need a separate per-app opt-in on duchamp.app/saved/connect.
38 tools are registered: 26 ad-research tools, 6 Performance tools, 2 label tools, and 4 marketing workspace tools. The table below is that set.
Performance (your own Meta ad accounts, read only): connect an ad account on duchamp.app/performance, group accounts into workspaces (one per client or brand), then allow the app on duchamp.app/performance/connect. list_workspaces → get_performance_insights with a workspace_id or account_ids (group by ad name, copy, creative, landing page, headline, campaign, ad set, account, workspace or Audience Segment — New Audience, Engaged Audience, Existing Customer, sorted by the workspace's campaign-name rules or Duchamp's defaults; by a Meta breakdown at account level — country, age, gender, platform, placement, Meta customer segment; or compare rule groups) → get_performance_timeseries / get_performance_creative / get_performance_ad. Scores (hook, watch, click, convert, viral) are percentiles among every ad (or group) of the workspace in the same period — they are not an industry benchmark. Numbers use the ad set attribution setting and impression-time reporting unless you pick a window with attr_click (1d, 7d, 28d) and attr_view (none, 1d) — Meta no longer returns 7-day or 28-day view. Besides spend, ROAS, CPA, CTR and video rates there are website and Shop purchases, landing page views, add to cart, checkout, leads, drop-off rates and your custom conversions (cc_<id>_total, _value, _cost, _roas, listed by get_performance_metrics with a workspace_id).
Team boards (read only): list_boards with scope: "team" or "all" adds the team's boards (marked scope: "team"); pass board_scope: "team" to get_board, export_board and compose_transfer_brief, and use list_saved with scope: "team" for teammates' shared ads. This needs a separate team access per app on duchamp.app/saved/connect, and only teammates who turned on AI sharing appear — no notes, saved titles, link items or comments.
- Website: duchamp.app · English overview: duchamp.app/en
- Connect page: duchamp.app/mcp
- MCP endpoint:
https://duchamp.app/api/mcp(Streamable HTTP, OAuth 2.1 with a free Duchamp account, no API key) - For AI readers: llms.txt · llms-full.txt
What you get
Do not invent numbers, dates, prices, or reviews. Transcripts are raw speech-to-text and can mishear names. A person should check what the agent concludes.
Connect in one line
The script finds Claude Code and Codex, registers the server, and opens your browser to sign in with a free Duchamp account. There is no token to copy.
Manual setup
Claude Code
Then in a new session run /mcp, choose duchamp and press Authenticate.
Codex
Cursor — add to .cursor/mcp.json, then press Connect next to duchamp in Cursor's MCP settings:
Any other MCP client — add a remote server named Duchamp with transport Streamable HTTP and URL https://duchamp.app/api/mcp. The first connection opens a browser for OAuth.
Plugin install (skills + agent)
The plugin adds eleven skills (nine active, two paused) and a judge agent on top of the MCP server.
Claude Code:
Codex:
Then sign in once: Claude Code /mcp → duchamp → Authenticate; Codex codex mcp login duchamp.
ads-research: find working ads, open one ad with its materials, break down an advertiser, compare your page, and keep a saved library. This is the skill to use.- Research skill packs — workflows the agent runs end to end. Say "use the skill on …":
evergreen-hunt: ads that ran 90+ days in a niche, clustered by hook, with transcripts for the strongest.weekly-competitor-sweep: your watched advertisers' last 7 days as a Slack-ready Monday brief.creative-test-autopsy: what one advertiser is testing now vs what it keeps scaling.board-to-brief: a named board turned into a production brief with three angles grounded in the saved ads.hook-mining: a hook bank for a niche and format, ranked by how long the ads ran.domain-war-room: a competitor's domain turned into its ads, hooks, landing pages, paid partners and attack angles.angle-theft-detector: your winning creatives from Performance (your own Meta ad accounts) matched to lookalike ads from other advertisers, with how crowded each angle is.
connect-extension: install and connect the Duchamp Chrome extension (opens the Chrome Web Store page in your Chrome, you click Add and Connect), then confirm the first save from the Meta Ad Library.makeandlaunch-kit: paused. They call tools that are not registered. Do not call those tools. Useads-research.visual-judgeagent (Claude Code): a fresh-context reviewer. Themakeskill that used to call it is paused.
Everything runs on your own Claude Code or Codex subscription.
Tools
The ad research tools are not on a daily fetch meter. 38 tools are in the table.
Example prompts
First prompts (replace the [ ] parts):
- Brand snapshot — "Using the Duchamp MCP, look up [advertiser name or homepage] (find_advertisers_by_domain for a homepage, or facets.pages of search_ads for a name). Show the 6 newest live ads with search_ads (page_id, status active, sort recent, all true) and link each duchamp_url. Then 3 bullets: formats, offers, the most common angle."
- UGC script rewrite — "search_ads for live selfie-style video ads in [niche], pick the longest-running, pull its transcript with get_ad and rewrite it as a 30-second script for [your product]. Keep the structure, change the words."
- Offer scan — "search_ads for live ads in [niche] and list every offer (discounts, bundles, free shipping, guarantees, trials), ranked by how often they appear, with one ad for each of the top 3."
- Format mix check — "Count live ads in [niche] by medium (video, image, carousel) with search_ads, show the longest-running example of each and the under-used format."
- Ad copy swipe — "Find 10 image ads in [niche] that ran 90+ days with search_ads, pull their copy with get_ad and rewrite the best 5 for [your product]."
More:
- "Find long-running ads in my niche with search_ads. List the advertiser, days running, and duchamp_url. Do not invent impression counts or revenue."
- "Open this ad with get_ad, then get_brand_anatomy for the advertiser. Read the keyframes and transcript, then tell me the hook and the offer. Link duchamp_url."
- "Watch my page with watch_brand and is_mine true, watch a competitor, then compare_brands. At most four pages."
How it works
- Check the connection with
get_connection_status. If the saved library is not allowed for this app, open the link it returns before saving. - Search with
search_ads. - Open one ad with
get_ad, or one advertiser withget_brand_anatomy. - Compare with
compare_brands(at most four page ids) or save with the library tools after the saved-library opt-in. - Hand off with
compose_transfer_briefwhen the user asks. It is a reference prompt. It does not promise the same ad.
Limits & account
- Sign in with a free Duchamp account on the first connection (OAuth in your browser). No API key.
- The ad-research tools are not counted toward a daily limit.
- Pro is listed at $19/month or $190/year (5 competitor pages of your own collected daily, unlimited MCP). Once payments open, Free keeps search unlimited and opens 10 ads a day over MCP. Payments are not open yet, so everything is free with no limits for now. See duchamp.app/en/pricing.
- Items appear on their release date. Ids not listed on the site are not available.
Privacy
Duchamp stores your account, usage records, saved items, boards, and watched advertiser pages. If you connect an ad account to Performance, Duchamp stores that account's ad metadata and daily performance numbers (and an encrypted read-only access token) for your account only — never in the public library or a team — and deletes them when you turn the account off, disconnect, or remove the app in Facebook settings. Performance numbers go to an AI app only after you allow that app on the Performance connect page. Product facts passed to compose_transfer_brief are not stored. Your rendered files stay on your machine. Duchamp does not call a model on your requests. Speech transcripts are made once per video when it is collected. Duchamp does not reproduce the ad. Signed-in ad research can include creative URLs on Duchamp's mirror. Reference labels do not include creative files.
What Duchamp does not do:
- No generation of human faces, human likenesses, face swaps, deepfakes, or synthetic voices. Duchamp does not create synthetic media of real people.
- No voice cloning, no audio or music generation, no adult content, no AI companion or relationship features.
- Templates: no display or re-hosting of other people's posts or accounts. Templates carry no original wording, images, or account names.
- Ads research: signed-in callers get creative URLs on Duchamp's mirror. Inline images in tool results are low-resolution previews for the agent. When showing the user, link
duchamp_url. Reference labels still do not include creative files. Duchamp does not reproduce the ad. - No scheduling or publishing. Performance reads only ad accounts you connect yourself (Meta, read only, ads_read) for performance reports. No server-side content generation. No engagement automation, and no access to any account the user does not own.
- No aggregation or resale of personal data, and no performance guarantees.
Rights in the original posts stay with their rights holders. To ask for a template to be taken down, write to [email protected] with the original URL.
Links
- duchamp.app · English overview · Connect · Pricing
- llms.txt · llms-full.txt
- Company: Notique, Seoul · Contact: [email protected]
License
MIT. See LICENSE.
来源:README.md,提交 e572508
工具
0版本历史
5- v0.10.0最新Oct 24, 2026
- v0.9.1Oct 20, 2026
- v0.9.0Oct 19, 2026
- v0.8.0Oct 17, 2026
- v0.4.0Oct 17, 2026
评分
已满足适用检查项的 85%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通必需25 分
- 已声明认证方式必需10 分
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分