x_ads_list_ads_accounts
x ads list ads accounts
List the ads accounts the authenticated user can access Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idscom.getmcpadsPublished by getmcpads.comv1.1.1Updated Nov 2, 2026
X Ads MCP server: 25 read tools, 21 opt-in preview-first writes.
Local stdio MCP server that lets an assistant read X Ads accounts, campaigns, line items, targeting and performance, with optional preview-first write tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
Read campaigns and performance, inspect targeting and prepare changes for explicitly selected accounts.
[Release] [CI] [Smithery] [License: Apache 2.0] [Node]
Watch the film · What's new · Install · Tool reference · Try hosted getmcpads
[Watch the getmcpads film: every ad account in one conversation with your AI assistant]
The film shows hosted getmcpads with sample data. Its MCP Apps, from creative galleries and alerts to Google Sheets exports and bulk launches, belong to the hosted product. This repository provides the standalone native API tools.
25 read tools · 21 write tools, disabled by default.
Run locally with your own platform credentials and a client that supports stdio MCP, such as Claude Desktop, Claude Code or Cursor. Your requests go directly to the platform. For managed connections, including supported ChatGPT setups, use the hosted option.
v1.1.1: Zod 4 security update · October 26, 2026
zod to 4.6.7. Every Zod release before 4.6.6 is covered by the high-severity advisory GHSA-mrhx-c7xc-m3w5: validating an oversized constrained collection can exhaust memory, and no Zod 3 release carries the fix. npm audit --omit=dev reports no vulnerability again.server-card.json is regenerated with Zod 4's JSON Schema output, which spells some constraints differently.Earlier releases
Source synchronization: SOURCE_SYNC.md.
Requires Node.js 22.23.4, 24.22.1, 26.12.1 or a newer release. These carry the October 2026 security fixes, and the server prints a warning on stderr when it runs on an older one. CI covers Node 22, 24 and 26.
No breaking change. Configuration variables and accepted values are unchanged: X_ADS_ACCOUNT_IDS stays required and only true enables writes, as in 1.0. The rename tools are writes: they appear only with X_ADS_ENABLE_WRITES=true and need ads.write in X_ADS_SCOPES.
Read the current tool schemas before reusing saved arguments. Writes remain optional and require explicit confirmation. Hosted creative integrations and MCP Apps UI are outside this release.
This is a GitHub source release. npm and MCP Registry versions are published separately. The commands below select this exact version.
Configure your MCP client to run node with the absolute path to dist/cli.js and the platform credentials documented below.
Prefer a managed connection? Use X Ads with hosted getmcpads. Connect your account, select the data your assistant may access and use the hosted MCP connection. See the site for current features and plans.
Provide these environment variables through the client's secret configuration:
Obtain your token and Ads Project access using X's official setup guide.
Use ads.read for reporting, ads.write for campaign changes and media.write for uploads and media-library writes.
Setting X_ADS_SCOPES does not grant permissions. This package accepts a token; it does not run an OAuth browser flow or persist rotating refresh tokens. When the token expires, renew it securely and restart the server.
Writes preview by default. Review the exact account, target and parameters before repeating the call with confirm: true.
Campaigns and line items are created paused. Activation can spend advertising budget. Media uploads can consume X API credits and are limited to 4 MB.
Do not retry a write automatically when its result is uncertain. Read the account and reconcile it first.
Selected-account checks apply before dispatch and filter account discovery responses. Unknown arguments are rejected.
Native pagination, attribution and monetary _micro fields are preserved. A micro unit is one millionth of the account currency.
This server exposes a reviewed subset of the official API. It does not automatically expose new upstream tools.
Native media reads and writes are included. Hosted creative galleries, visual editors and MCP Apps UI are excluded.
Use tools/list or server-card.json for exact schemas and the official API reference for provider details.
getmcpads for X Ads manages the hosted connection and account selection. Hosted and source releases can differ. Contact: [email protected].
All tests run offline with synthetic responses. No live account is changed.
Every tool is listed below. See server-card.json for complete parameter and output schemas.
Disabled by default. Calls preview unless explicitly confirmed. Check the configuration and exact schema before use.
Apache License 2.0. See NOTICE.
Meta Ads · Google Ads · Google Analytics 4 · Google Search Console · TikTok Ads · Pinterest Ads
Maintained by Emmanuel at getmcpads. Questions: [email protected].
Source: README.md at commit 5790b87
x ads list ads accounts
List the ads accounts the authenticated user can access Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idsx ads list campaigns
List campaigns for an account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursorsort_byaccount_idrequiredwith_draftcampaign_idswith_deletedwith_total_countfunding_instrument_idsx ads get campaign
Get a single campaign by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idrequiredcampaign_idrequiredwith_deletedx ads list funding instruments
List funding instruments (payment sources) for an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
countcursorsort_byaccount_idrequiredwith_deletedwith_total_countfunding_instrument_idsx ads list line items
List line items (ad groups) for an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursorsort_byaccount_idrequiredwith_draftcampaign_idswith_deletedline_item_idswith_total_countfunding_instrument_idsx ads get line item
Get a single line item by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idrequiredline_item_idrequiredwith_deletedx ads list promoted posts
List promoted posts (promoted tweets) for an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
countcursorsort_byaccount_idrequiredwith_deletedline_item_idswith_total_countpromoted_tweet_idsx ads list targeting criteria
List targeting criteria for an ads account's line items Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
langcountcursorsort_byaccount_idrequiredwith_deletedline_item_idsrequiredwith_total_counttargeting_criterion_idsx ads list account posts
List posts (tweets) usable for promotion by an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
countcursoruser_idtrim_usertweet_idsaccount_idrequiredtweet_typerequiredtimeline_typeinclude_mentions_and_repliesx ads list web event tags
List the website conversion event tags (pixels) in an ads account; a tag's id is what a conversion line item takes as its primary_web_event_tag Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
countcursorsort_byaccount_idrequiredwith_deletedwith_total_countweb_event_tag_idsx ads list line item placements
List valid placement combinations per line item product type Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
product_typex ads get account stats
Get synchronous analytics (impressions, engagements, spend) for an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
entityrequiredend_timerequiredplacementrequiredaccount_idrequiredentity_idsrequiredstart_timerequiredgranularityrequiredmetric_groupsrequiredx ads get active entities
List which ads entities had metrics change in a time window (use before requesting account stats) Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
entityrequiredend_timerequiredaccount_idrequiredstart_timerequiredcampaign_idsline_item_idsfunding_instrument_idsx ads get campaign reach
Get reach and average-frequency metrics for campaigns Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
end_timerequiredaccount_idrequiredstart_timerequiredcampaign_idsrequiredx ads search targeting interests
Search targetable interest categories by name. Use this to find the targeting_value IDs required by add_targeting_criterion for INTEREST-type criteria. Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursorx ads search targeting locations
Search targetable locations by name. Use this to find the targeting_value IDs required by add_targeting_criterion for LOCATION-type criteria. Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursorcountry_codelocation_typex ads list cards
List the cards in an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursorsort_bycard_idscard_urisaccount_idrequiredcard_typeswith_deletedwith_total_countinclude_legacy_cardsx ads get card
Get a single card by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
card_idrequiredaccount_idrequiredwith_deletedx ads list media library
List the media library objects in an ads account Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
qcountcursoraccount_idrequiredmedia_typex ads get media library item
Get a single media library object by media key Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
media_keyrequiredaccount_idrequiredx ads get promoted post
Get a single promoted post by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idrequiredwith_deletedpromoted_tweet_idrequiredx ads get targeting criterion
Get a single targeting criterion by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
langaccount_idrequiredwith_deletedtargeting_criterion_idrequiredx ads list post previews
Get rendered HTML previews for published or scheduled posts Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
user_idtweet_idsrequiredaccount_idrequiredtweet_typerequiredx ads get web event tag
Get a single website conversion event tag by ID Native X fields and pagination are preserved; monetary fields ending in _micro are millionths of the account currency.
account_idrequiredwith_deletedweb_event_tag_idrequiredx ads get media upload status
Read processing status of an upload owned by the connected X user. Media uploads are user-owned until registered in the selected account's media library.
media_idrequiredaccount_idrequired90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
git clone --branch v1.1.1 --depth 1 https://github.com/get-mcp-ads/x-ads-mcp-server.gitcd x-ads-mcp-servernpm cinpm run buildnpm run typechecknpm run lintnpm run buildnpm testnpm run catalog