Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

AdButler

NPM · @ADBUTLER/MCP-SERVER · 3 COMPONENTS

Manage AdButler campaigns, zones, ad items, VAST, and reports from Claude, ChatGPT, and Cursor.

+1 this week 78 Trust /100

Last scanned (19 hours ago)

Scores higher than 60% of npm servers

Category Marketing and SEO

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security81
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects zod 3.25.76, a direct dependency. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • 30 of 93 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability80
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 36354 tokens (~57/item across 628 items; 628 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 105 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_advertiser" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 628 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
What we tested

Checks we ran (16)

  • Malware scan
  • Known CVEs
  • Install scripts
  • Dependency health
  • Source repository
  • Provenance
  • License
  • Maintenance
  • Security disclosure
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • Judged manipulation
  • MCP protocol

Does not apply to this package (2)

  • Endpoint SecurityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.
  • Transport & ReachabilityScored on hosted endpoints only. A package has no live endpoint of its own for us to probe.

The score does not measure everything. What the score does not measure →

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 9 Nov 26 +5
    • Source repository: unverified → pass ▲ security
  • 8 Nov 26 −5
    • Provenance: pass → unverified ▼ security
  • 6 Nov 26 0
    • Stability: 0.97 → pass security
  • 5 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 3 Nov 26 −1
    • Stability: pass → 0.90 functional
  • 28 Oct 26 0
    • Stability: 0.97 → pass security
  • 27 Oct 26 0
    • Stability: pass → 0.97 functional
  • 24 Oct 26 −5
    • CVE-2023-54404 affects this package: high ▼ security
    • Known CVEs: pass → fail ▼ security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 10 Nov 2026 · Analysed npm/@adbutler/mcp-server@2.8.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-mrhx-c7xc-m3w5 CVE-2023-54404 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 93 packages
Packages resolved 93
Stale 30
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 628 exposed · ~36,354 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
update_ortb_native_image_asset ~94

Update an existing image asset for an ORTB native template

NameTypeReqDescription
hnumber–Height
hminnumber–Min height
idnumberyesImage asset ID
template_idnumberyesORTB native template ID
typenumber–Image asset type
wnumber–Width
wminnumber–Min width

No output schema declared.

No examples provided.

update_ortb_native_template ~60

Update an existing OpenRTB native template

NameTypeReqDescription
html_templatestring–HTML template for rendering the native ad
idnumberyesORTB native template ID
namestring–ORTB native template name

No output schema declared.

No examples provided.

update_ortb_native_title_asset ~59

Update an existing title asset for an ORTB native template

NameTypeReqDescription
idnumberyesTitle asset ID
lennumber–Max length of title
template_idnumberyesORTB native template ID

No output schema declared.

No examples provided.

update_placement ~232

Update an existing placement

NameTypeReqDescription
activeboolean–Whether placement is active
advertisementobject–Advertisement object with id and type
channelnumber–Channel ID (mutually exclusive with zone)
contextual_segmentsarray–Array of contextual segment IDs
costobject–Pricing model
data_key_target_idnumber–Data Key Target ID
geo_targetnumber–Geotarget ID
idnumberyesPlacement ID
keywordsstring–Comma-separated keywords
keywords_match_methodstring–Keyword matching method
list_targetnumber–List Target ID
payoutobject–Publisher payout configuration
platform_targetnumber–Platform target ID
prioritystring–Serving priority level
schedulenumber–Schedule ID
serve_methodstring–Serving system
share_of_voicenumber–Share of voice percentage
weightnumber–Relative delivery weight
zoneobject–Zone object (mutually exclusive with channel)

No output schema declared.

No examples provided.

update_platform_target ~60

Update an existing platform target

NameTypeReqDescription
device_targetsarray–List of device patterns to target
idnumberyesPlatform target ID
namestring–Platform target name
platformstring–Preset platform target

No output schema declared.

No examples provided.

update_pmp_deal ~82

Update an existing PMP deal

NameTypeReqDescription
audience_targetnumber–Audience target ID
bid_floornumber–Bid floor
geo_targetnumber–Geo target ID
idnumberyesPMP deal ID
namestring–PMP deal name
whitelist_seatsarray–Seat IDs with access

No output schema declared.

No examples provided.

update_postal_code_target ~71

Update an existing postal code target

NameTypeReqDescription
idnumberyesPostal code target ID
inclusiveboolean–If true, inclusion target; if false, exclusion target
labelstring–Postal code target name
locationsarray–Array of locations grouped by country

No output schema declared.

No examples provided.

update_product_catalog ~44

Update an existing product catalog

NameTypeReqDescription
catalog_idnumberyesCatalog ID
namestring–Catalog name
publisher_idnumberyesPublisher ID

No output schema declared.

No examples provided.

update_product_catalog_item ~106

Update an existing product catalog item

NameTypeReqDescription
catalog_idnumberyesCatalog ID
categorystring–Item category
descriptionstring–Item description
identifierstringyesUnique identifier for the catalog item
image_urlstring–Item image URL
namestring–Item name
pricestring–Item price
publisher_idnumberyesPublisher ID
urlstring–Item URL

No output schema declared.

No examples provided.

update_product_source ~62

Update an existing product source

NameTypeReqDescription
namestring–Source name
publisher_idnumberyesPublisher ID
source_idnumberyesSource ID
typestring–Source type
urlstring–Source URL

No output schema declared.

No examples provided.

update_product_source_target ~61

Update an existing product source target

NameTypeReqDescription
namestring–Source target name
publisher_idnumberyesPublisher ID
source_idnumber–Source ID to target
source_target_idnumberyesSource target ID

No output schema declared.

No examples provided.

update_publisher ~155

Update an existing publisher

NameTypeReqDescription
can_admin_accountboolean–Grant administrator privileges
can_approve_adsboolean–Allow publisher to approve/deny ad items
can_change_passwordboolean–Whether publisher can change password
can_view_wordpress_keyboolean–Allow publisher to view WordPress key
default_payoutobject–Default payout configuration
domainstring–Publisher domain
emailstring–Contact email
idnumberyesPublisher ID
metadataobject–Custom metadata key-value pairs
namestring–Publisher name
seller_typestring–Seller type
timezonestring–Timezone

No output schema declared.

No examples provided.

update_report_schedule ~56

Update a report schedule

NameTypeReqDescription
frequencystring–Schedule frequency
recipientsarray–Array of recipient objects
report_config_idnumberyesReport configuration ID
schedule_idnumberyesSchedule ID

No output schema declared.

No examples provided.

update_rich_media_ad_item ~151

Update an existing rich media ad item

NameTypeReqDescription
creativenumber–Rich media creative ID
expand_horizontal_directionstring–Horizontal expand direction
expand_vertical_directionstring–Vertical expand direction
html_content_belowstring–HTML content below the ad item
idnumberyesAd item ID
locationstring–Click-through URL
metadataobject–Custom metadata key-value pairs
namestring–Ad item name
tracking_pixelstring–Third-party tracking pixel URL
tracking_pixelsarray–Array of tracking pixel URLs
trusted_redirect_domainsarray–Trusted redirect domains

No output schema declared.

No examples provided.

update_rich_media_creative ~46

Update an existing rich media creative

NameTypeReqDescription
descriptionstring–Creative description
idnumberyesCreative ID
namestring–Creative name

No output schema declared.

No examples provided.

update_role ~287

Update an existing role

NameTypeReqDescription
can_assign_campaigns_directlyboolean–Can assign campaigns directly
can_manage_admin_api_accessboolean–Can manage API keys
can_manage_biddersboolean–Can manage bidders
can_manage_billingboolean–Can manage billing
can_manage_contractsboolean–Can manage contracts
can_manage_data_keysboolean–Can manage data keys
can_manage_linksboolean–Can manage tracking links
can_manage_mediaboolean–Can manage creatives
can_manage_native_ad_templatesboolean–Can manage native templates
can_manage_product_dbboolean–Can manage product catalogs
can_manage_programmaticboolean–Can manage programmatic
can_manage_self_serveboolean–Can manage Self-Serve
can_manage_targetsboolean–Can manage targets
can_manage_ticketsboolean–Can manage tickets
can_manage_usersboolean–Can manage users
idnumberyesRole ID
is_default_roleboolean–Auto-assign to new users
namestring–Role name
publisher_accessstring–Publisher access level
publisher_access_listarray–Publisher IDs for specific access
statistics_accessstring–Statistics access level

No output schema declared.

No examples provided.

update_schedule ~293

Update an existing schedule

NameTypeReqDescription
day_cap_limitnumber–Daily cap limit
day_cap_typestring–Daily cap type
day_parting_idnumber–Day parting ID for time-of-day targeting
delivery_methodstring–Delivery pacing: "default" (ASAP) or "smooth" (evenly distributed)
end_atstring–End date/time in ISO-8601 format
end_at_timezonestring–IANA timezone for end_at
end_datestring–End date (YYYY-MM-DD HH:MM:SS) — deprecated, use end_at
idnumberyesSchedule ID
per_user_view_limitnumber–Per-user view frequency cap
per_user_view_periodnumber–Days before per-user view counter resets
quota_lifetimenumber–Total quota amount (views or clicks, not per thousand)
quota_typestring–Quota measurement type
start_atstring–Start date/time in ISO-8601 format
start_at_timezonestring–IANA timezone for start_at
start_datestring–Start date (YYYY-MM-DD HH:MM:SS) — deprecated, use start_at
under_delivery_behaviourstring–Whether to keep serving until quota met or stop on end date

No output schema declared.

No examples provided.

update_sftp_connection ~86

Update an existing SFTP connection

NameTypeReqDescription
hoststring–SFTP host
idnumberyesSFTP connection ID
namestring–Connection name
passwordstring–SFTP password
pathstring–Remote path
portnumber–SFTP port
usernamestring–SFTP username

No output schema declared.

No examples provided.

update_signature_request ~35

Update an existing signature request

NameTypeReqDescription
contract_idnumberyesContract ID
idnumberyesSignature request ID

No output schema declared.

No examples provided.

update_signature_request_recipient ~68

Update a recipient for a signature request

NameTypeReqDescription
contract_idnumberyesContract ID
emailstring–Recipient email
namestring–Recipient name
recipient_idnumberyesRecipient ID
request_idnumberyesSignature request ID

No output schema declared.

No examples provided.

update_trusted_redirect_domain ~45

Update an existing trusted redirect domain

NameTypeReqDescription
domainstring–Trusted redirect domain (e.g. example.com)
idnumberyesTrusted redirect domain ID

No output schema declared.

No examples provided.

update_user_attribute ~66

Update an existing user attribute in a user database

NameTypeReqDescription
idnumberyesUser attribute ID
labelstring–Descriptive label for the field
typestring–Data type of the field
user_db_idnumberyesUser database ID

No output schema declared.

No examples provided.

update_video_creative ~43

Update an existing video creative

NameTypeReqDescription
descriptionstring–Creative description
idnumberyesCreative ID
namestring–Creative name

No output schema declared.

No examples provided.

update_zone ~366

Update an existing standard zone

NameTypeReqDescription
ad_size_filterobject–Ad size filter (dynamic zones only)
allow_demand_sourcesboolean–Allow requests to demand endpoints
allowed_root_native_templatesarray–Allowed root native template IDs
api_frameworksarray–Supported API frameworks
auction_tie_breakstring–Tie-breaking method
bid_floornumber–Default bid floor
burn_in_hoursnumber–Hours before eCPM confidence
burn_in_impressionsnumber–Impressions before eCPM confidence
dimensionsstring–Zone dimensions type
ecpm_testing_allowancenumber–Percentage for eCPM recalculation
heightnumber–Zone height in pixels
iab_categoriesarray–IAB category descriptors
idnumberyesZone ID
metadataobject–Custom metadata key-value pairs
min_payoutnumber–Minimum payout per impression (CPM)
namestring–Zone name
optimization_strategystring–Zone optimization strategy
pmp_dealsarray–Allowed PMP Deal IDs
private_auctionboolean–Ignore non-deal bids in auction
publishernumber–Publisher ID
refresh_frequencynumber–Interval in seconds for serving new ads
refresh_limitnumber–Total times zone will refresh
responsivestring–Size behavior
rtb_placement_idstring–OpenRTB tagid identifier
serve_priority_orderstring–Priority order
unique_deliveryboolean–Serve unique ads on each zone
widthnumber–Zone width in pixels

No output schema declared.

No examples provided.

update_zone_ortb_native_ad ~73

Update an existing ORTB native ad for a standard zone

NameTypeReqDescription
idnumberyesORTB native ad ID
namestring–ORTB native ad name
template_idnumber–ORTB native template ID
zone_idnumberyesStandard zone ID

No output schema declared.

No examples provided.

validate_beacon_signing_key ~30

Validate a beacon signing key

NameTypeReqDescription
keystring–Beacon signing key to validate

No output schema declared.

No examples provided.

vast_archive_campaign ~34

Archive a VAST campaign (soft-delete, can be restored later)

NameTypeReqDescription
idnumberyesVAST campaign ID

No output schema declared.

No examples provided.

vast_archive_channel ~34

Archive a VAST channel (soft-delete, can be restored later)

NameTypeReqDescription
idnumberyesVAST channel ID

No output schema declared.

No examples provided.

vast_archive_zone ~34

Archive a VAST zone (soft-delete, can be restored later)

NameTypeReqDescription
idnumberyesVAST zone ID

No output schema declared.

No examples provided.

vast_create_ad_item ~54

Create a new VAST ad item

NameTypeReqDescription
activeboolean–Whether ad item is active
locationstringyesVAST tag URL or media location
namestringyesAd item name

No output schema declared.

No examples provided.

vast_create_campaign ~50

Create a new VAST campaign

NameTypeReqDescription
advertisernumberyesAdvertiser ID
contractnumber–Contract ID (requires Contract Management add-on)
namestringyesCampaign name

No output schema declared.

No examples provided.

vast_create_campaign_assignment ~65

Create a VAST campaign assignment (assign an ad item to a campaign)

NameTypeReqDescription
activeboolean–Whether to actively serve ads (defaults to true)
ad_itemnumberyesVAST ad item ID
campaignnumberyesVAST campaign ID

No output schema declared.

No examples provided.

vast_create_channel ~34

Create a new VAST channel

NameTypeReqDescription
descriptionstring–Channel description
namestringyesChannel name

No output schema declared.

No examples provided.

vast_create_channel_zone_assignment ~44

Assign a VAST zone to a VAST channel

NameTypeReqDescription
channelnumberyesVAST channel ID
zonenumberyesVAST zone ID

No output schema declared.

No examples provided.

vast_create_companion ~48

Create a new VAST companion

NameTypeReqDescription
heightnumber–Companion height in pixels
namestringyesCompanion name
widthnumber–Companion width in pixels

No output schema declared.

No examples provided.

vast_create_linear_media ~67

Create a new VAST linear media

NameTypeReqDescription
bitratenumber–Bitrate in kbps
durationnumber–Duration in seconds
mime_typestring–MIME type (e.g. video/mp4)
namestringyesLinear media name

No output schema declared.

No examples provided.

vast_create_non_linear_media ~61

Create a new VAST non-linear media

NameTypeReqDescription
heightnumber–Height in pixels
mime_typestring–MIME type
namestringyesNon-linear media name
widthnumber–Width in pixels

No output schema declared.

No examples provided.

vast_create_placement ~241

Create a new VAST placement (assign a VAST ad item or campaign to a VAST zone or channel)

NameTypeReqDescription
activeboolean–Whether placement is active (defaults to true)
advertisementobjectyesAdvertisement object with id and type
channelnumber–VAST channel ID (required if zone not set; mutually exclusive with zone)
costobject–Pricing model: fixed_cost OR cpm/cpc/cpa
data_key_target_idnumber–Data Key Target ID (Enterprise only)
max_frequencynumber–Frequency cap limit
max_frequency_periodnumber–Days before frequency counter resets
max_frequency_typestring–Event type to count for frequency capping
payoutobject–Publisher payout configuration
prioritynumber–Priority level (sponsorship, standard, network, bulk, house)
schedulenumberyesVAST schedule ID
serve_methodstring–Serving system: weight-based or auction-based
zonenumber–VAST zone ID (required if channel not set; mutually exclusive with channel)

No output schema declared.

No examples provided.

vast_create_schedule ~157

Create a new VAST schedule for time-based ad delivery

NameTypeReqDescription
day_parting_idnumber–Day parting ID for time-of-day targeting
delivery_methodstring–Delivery pacing: "default" (ASAP) or "smooth" (evenly distributed)
end_datestring–End date (YYYY-MM-DD HH:MM:SS), null for indefinite
geo_targetnumber–Geotarget ID (0 = no targeting)
quota_lifetimenumber–Total quota amount (views or clicks, not per thousand)
quota_typestring–Quota measurement type
start_datestring–Start date (YYYY-MM-DD HH:MM:SS)

No output schema declared.

No examples provided.

vast_create_tracking ~62

Create a new VAST tracking entry

NameTypeReqDescription
eventstring–Tracking event type (e.g. start, firstQuartile, midpoint, thirdQuartile, complete)
namestringyesTracking name
urlstring–Tracking URL

No output schema declared.

No examples provided.

vast_create_zone ~117

Create a new VAST zone

NameTypeReqDescription
default_vast_ad_itemnumber–Default VAST ad item ID (mutually exclusive with default_vast_campaign)
default_vast_campaignnumber–Default VAST campaign ID (mutually exclusive with default_vast_ad_item)
metadataobject–Custom metadata key-value pairs
namestringyesZone name
publishernumberyesPublisher ID
serve_priority_orderstring–Priority order for serving: "weight" or "auction"

No output schema declared.

No examples provided.

vast_delete_ad_item ~29

Delete a VAST ad item

NameTypeReqDescription
idnumberyesVAST ad item ID

No output schema declared.

No examples provided.

vast_delete_archived_campaign ~32

Permanently delete an archived VAST campaign

NameTypeReqDescription
idnumberyesArchived VAST campaign ID

No output schema declared.

No examples provided.

vast_delete_archived_channel ~32

Permanently delete an archived VAST channel

NameTypeReqDescription
idnumberyesArchived VAST channel ID

No output schema declared.

No examples provided.

vast_delete_archived_zone ~32

Permanently delete an archived VAST zone

NameTypeReqDescription
idnumberyesArchived VAST zone ID

No output schema declared.

No examples provided.

vast_delete_campaign ~26

Delete a VAST campaign

NameTypeReqDescription
idnumberyesVAST campaign ID

No output schema declared.

No examples provided.

vast_delete_campaign_assignment ~29

Delete a VAST campaign assignment

NameTypeReqDescription
idnumberyesVAST campaign assignment ID

No output schema declared.

No examples provided.

vast_delete_channel ~26

Delete a VAST channel

NameTypeReqDescription
idnumberyesVAST channel ID

No output schema declared.

No examples provided.

vast_delete_channel_zone_assignment ~35

Remove a VAST zone from a VAST channel

NameTypeReqDescription
idnumberyesVAST channel zone assignment ID

No output schema declared.

No examples provided.

vast_delete_companion ~27

Delete a VAST companion

NameTypeReqDescription
idnumberyesVAST companion ID

No output schema declared.

No examples provided.

Install

How do I install the AdButler MCP server?

AdButler runs locally as an npm package, launched with npx -y @adbutler/mcp-server. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @adbutler/mcp-server

# add to Claude Code
claude mcp add com-adbutler-mcp-server -- npx -y @adbutler/mcp-server
Common questions

What is the AdButler MCP server?

AdButler is an MCP server listed in the public MCP registry as com.adbutler/mcp-server. Manage AdButler campaigns, zones, ad items, VAST, and reports from Claude, ChatGPT, and Cursor. This page covers its npm package (@adbutler/mcp-server).

Is the AdButler MCP server safe to use?

AdButler scores 78 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 10 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the AdButler MCP server expose?

AdButler exposes 628 tools: list_advertisers, get_advertiser, create_advertiser, update_advertiser, delete_advertiser, and 623 more. Their descriptions and schemas cost roughly 36,354 tokens of context every time the server is loaded.

Is the AdButler MCP server still maintained?

AdButler is still listed as active in the MCP registry. We last reached this channel on 10 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the AdButler MCP server under?

AdButler declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

What did VerifyMCP test on the AdButler MCP server?

VerifyMCP ran 16 checks on AdButler, covering Malware scan, Known CVEs, Install scripts, Dependency health and 12 more. Endpoint Security and Transport & Reachability do not apply to an npm package, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.