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 · SCANNED SEP 21

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

0 this week 83 Trust /100
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 Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability79
  • 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 34549 tokens (~55/item across 619 items; 619 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
  • Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
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 619 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
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
// .cursor/mcp.json
{
  "mcpServers": {
    "com-adbutler-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@adbutler/mcp-server"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-adbutler-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@adbutler/mcp-server"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add com-adbutler-mcp-server -- npx -y @adbutler/mcp-server
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-adbutler-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@adbutler/mcp-server"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-adbutler-mcp-server --command npx --arg -y --arg @adbutler/mcp-server
# ~/.hermes/config.yaml
mcp_servers:
  com-adbutler-mcp-server:
    command: "npx"
    args: ["-y", "@adbutler/mcp-server"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-adbutler-mcp-server": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@adbutler/mcp-server"
      ]
    }
  }
}
# add to Vellum
assistant mcp add com-adbutler-mcp-server -t stdio -c npx -a -y @adbutler/mcp-server
// mcp.json
{
  "mcpServers": {
    "com-adbutler-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@adbutler/mcp-server"
      ]
    }
  }
}
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.

  • 21 Sept 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.

  • 19 Sept 26 +1

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

  • 17 Sept 26 +1

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

  • 16 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 15 Sept 26 0
    • Stability: 0.97 → pass security
  • 14 Sept 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.

  • 12 Sept 26 +1

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

  • 10 Sept 26 +1

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

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 21 Sept 2026 · Analysed npm/@adbutler/mcp-server@2.4.2

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 →

Dependencies 96 packages
Packages resolved 96
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 619 exposed · ~34,549 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
test_sftp_connection ~69

Test an SFTP connection with the provided credentials

NameTypeReqDescription
hoststringSFTP host
passwordstringSFTP password
pathstringRemote path
portnumberSFTP port
usernamestringSFTP username

No output schema declared.

No examples provided.

unarchive_advertiser ~30

Restore an archived advertiser back to active status

NameTypeReqDescription
idnumberyesArchived advertiser ID

No output schema declared.

No examples provided.

unarchive_campaign ~29

Restore an archived standard campaign back to active status

NameTypeReqDescription
idnumberyesArchived campaign ID

No output schema declared.

No examples provided.

unarchive_channel ~28

Restore an archived channel back to active status

NameTypeReqDescription
idnumberyesArchived channel ID

No output schema declared.

No examples provided.

unarchive_contract ~28

Unarchive a contract (restore from archive)

NameTypeReqDescription
idnumberyesArchived contract ID

No output schema declared.

No examples provided.

unarchive_email_zone ~31

Restore an archived email zone back to active status

NameTypeReqDescription
idnumberyesArchived email zone ID

No output schema declared.

No examples provided.

unarchive_publisher ~29

Restore an archived publisher back to active status

NameTypeReqDescription
idnumberyesArchived publisher ID

No output schema declared.

No examples provided.

unarchive_zone ~29

Restore an archived standard zone back to active status

NameTypeReqDescription
idnumberyesArchived zone ID

No output schema declared.

No examples provided.

update_advertiser ~111

Update an existing advertiser

NameTypeReqDescription
can_add_ad_itemsbooleanWhether advertiser can submit advertisements for scheduling
can_change_passwordbooleanWhether advertiser can change password
emailstringContact email
idnumberyesAdvertiser ID
metadataobjectCustom metadata key-value pairs
namestringAdvertiser name
passwordstringPassword for advertiser portal (min 8 chars, must include upper, lower, number)

No output schema declared.

No examples provided.

update_audience ~60

Update an existing audience in a user database

NameTypeReqDescription
attributesobjectAttribute targets defining the audience
idnumberyesAudience ID
namestringAudience name
user_db_idnumberyesUser database ID

No output schema declared.

No examples provided.

update_audio_creative ~43

Update an existing audio creative

NameTypeReqDescription
descriptionstringCreative description
idnumberyesCreative ID
namestringCreative name

No output schema declared.

No examples provided.

update_beacon_signing_key ~42

Update an existing beacon signing key

NameTypeReqDescription
idnumberyesBeacon signing key ID
key_namestringBeacon signing key name

No output schema declared.

No examples provided.

update_bidder ~55

Update an existing bidder

NameTypeReqDescription
bid_urlstringBid endpoint URL
idnumberyesBidder ID
namestringBidder name
statusstringBidder status

No output schema declared.

No examples provided.

update_campaign ~117

Update an existing standard campaign

NameTypeReqDescription
advertisernumberAdvertiser ID
budgetobjectBudget limits
contractnumberContract ID
idnumberyesCampaign ID
metadataobjectCustom metadata key-value pairs
namestringCampaign name
roadblock_tagsstringRoadblock tag
scheduling_sourcestringScheduling level
targeting_sourcestringTargeting level
trusted_redirect_domainsarrayTrusted redirect domains

No output schema declared.

No examples provided.

update_campaign_assignment ~124

Update an existing campaign assignment

NameTypeReqDescription
activebooleanWhether assignment is active
data_key_targetnumberData Key Target ID
geo_targetnumberGeo Target ID
idnumberyesCampaign assignment ID
keywordsstringComma-separated keywords
keywords_match_methodstringKeyword matching method
list_targetnumberList Target ID
platform_targetnumberPlatform Target ID
schedulenumberSchedule ID
weightnumberRelative delivery weight

No output schema declared.

No examples provided.

update_catalog_ad_item ~100

Update an existing catalog ad item

NameTypeReqDescription
catalog_item_identifierstringUnique identifier for the catalog item
idnumberyesAd item ID
locationstringClick-through URL
metadataobjectCustom metadata key-value pairs
namestringAd item name
tracking_pixelstringThird-party tracking pixel URL
tracking_pixelsarrayArray of tracking pixel URLs

No output schema declared.

No examples provided.

update_catalog_zone ~114

Update an existing catalog zone

NameTypeReqDescription
advertiser_cost_typestringBilling model
auction_typestringAuction type
bid_floor_cpcnumberCPC bid floor
bid_floor_cpmnumberCPM bid floor
click_cooldown_periodnumberClick cooldown period in seconds
conversion_lookback_periodnumberConversion lookback period in seconds
idnumberyesCatalog zone ID
namestringZone name

No output schema declared.

No examples provided.

update_channel ~40

Update an existing channel

NameTypeReqDescription
idnumberyesChannel ID
namestringChannel name
prioritystringServing priority

No output schema declared.

No examples provided.

update_contact ~50

Update an existing contact

NameTypeReqDescription
emailstringContact email address
idnumberyesContact ID
namestringContact name
notesstringAdditional notes

No output schema declared.

No examples provided.

update_contract ~114

Update an existing contract

NameTypeReqDescription
advertisernumberAdvertiser ID
descriptionstringContract description
end_atstringContract end date (YYYY-MM-DD)
idnumberyesContract ID
namestringContract name
payment_due_datestringPayment due date (YYYY-MM-DD)
ratenumberContract rate
start_atstringContract start date (YYYY-MM-DD)
statusstringContract status

No output schema declared.

No examples provided.

update_contract_document ~43

Update an existing contract document

NameTypeReqDescription
contract_idnumberyesContract ID
idnumberyesDocument ID
namestringDocument name

No output schema declared.

No examples provided.

update_contract_template ~34

Update an existing contract template

NameTypeReqDescription
idnumberyesContract template ID
namestringTemplate name

No output schema declared.

No examples provided.

update_creative ~42

Update an existing image creative

NameTypeReqDescription
descriptionstringCreative description
idnumberyesCreative ID
namestringCreative name

No output schema declared.

No examples provided.

update_custom_html_ad_item ~172

Update an existing custom HTML ad item

NameTypeReqDescription
custom_htmlstringThe HTML content
expand_horizontal_directionstringHorizontal expand direction
expand_vertical_directionstringVertical expand direction
heightnumberAd height in pixels
html_content_belowstringHTML content below the ad item
idnumberyesAd item ID
locationstringClick-through URL
metadataobjectCustom metadata key-value pairs
namestringAd item name
tracking_pixelstringThird-party tracking pixel URL
tracking_pixelsarrayArray of tracking pixel URLs
trusted_redirect_domainsarrayTrusted redirect domains
widthnumberAd width in pixels

No output schema declared.

No examples provided.

update_custom_report ~149

Update an existing report configuration

NameTypeReqDescription
columnsarrayColumns to include
dateobjectDate configuration
exclude_campaign_ad_itemsbooleanExclude ad items in campaigns
exclude_channel_statsbooleanExclude stats from channel-served ads
exclude_publisher_ad_itemsbooleanExclude ad items directly in zones
filtersobjectFilter criteria
idnumberyesReport configuration ID
namestringReport name
periodstringData grouping period
require_channel_statsbooleanOnly include stats from channel-served ads
typestringReport type

No output schema declared.

No examples provided.

update_data_key ~46

Update an existing data key

NameTypeReqDescription
idnumberyesData key ID
namestringData key name
typestringData key value type

No output schema declared.

No examples provided.

update_data_key_target ~50

Update an existing data key target

NameTypeReqDescription
idnumberyesData key target ID
namestringData key target name
targetstringJSON formatted target logic

No output schema declared.

No examples provided.

update_data_list ~36

Update an existing data list

NameTypeReqDescription
idnumberyesData list ID
labelstringData list label/name

No output schema declared.

No examples provided.

update_day_parting ~103

Update an existing day parting rule

NameTypeReqDescription
idnumberyesDay parting ID
is_templatebooleanIf true, shown in UI when creating/editing schedules
namestringDay parting name
rangesobjectObject mapping day names (monday-sunday) to arrays of time ranges
use_member_timezonebooleanIf true, use account timezone; if false, use viewer timezone

No output schema declared.

No examples provided.

update_demand_endpoint ~203

Update an existing demand endpoint

NameTypeReqDescription
allowed_sizesarrayAllowed zone sizes
bid_floornumberDefault CPM bid floor
default_parametersobjectDefault parameters
demand_sourcenumberDemand Source ID
filter_typestringZone filtering type
filtered_vast_zonesarrayVAST zone IDs for filter list
filtered_zonesarrayZone IDs for filter list
geo_targetnumberGeo target ID
idnumberyesDemand endpoint ID
markup_percentnumberMarkup percent
namestringDemand endpoint name
native_json_encodedbooleanWhether native JSON should be encoded
prioritystringServing priority
revenue_sharenumberRevenue share percentage
statusstringWhether to send bid requests
supported_formatsarraySupported ad formats

No output schema declared.

No examples provided.

update_demand_source ~108

Update an existing demand source

NameTypeReqDescription
idnumberyesDemand source ID
namestringDemand source name
spend_limitnumberSpend limit amount
spend_limit_endstringSpend limit end date (ISO-8601)
spend_limit_periodstringSpend limit reset interval
spend_limit_startstringSpend limit start date (ISO-8601)
statusstringWhether to send bid requests

No output schema declared.

No examples provided.

update_email_zone ~119

Update an existing email zone

NameTypeReqDescription
auction_tie_breakstringTie-breaking method
heightnumberZone height in pixels
idnumberyesEmail zone ID
metadataobjectCustom metadata key-value pairs
namestringZone name
publishernumberPublisher ID
rotate_timerobjectPeriod after which user sees a new ad
uid_rotatebooleanServe different ads per user
widthnumberZone width in pixels

No output schema declared.

No examples provided.

update_event_log_upload_config ~96

Update an existing event log upload configuration

NameTypeReqDescription
connection_idnumberSFTP connection ID to use for upload
enabledbooleanWhether the upload configuration is enabled
formatstringLog file format
frequencystringUpload frequency (e.g. "daily", "hourly")
idnumberyesUpload configuration ID
namestringConfiguration name

No output schema declared.

No examples provided.

update_geo_target ~85

Update an existing geo target

NameTypeReqDescription
areasarrayArray of geographic areas
idnumberyesGeo target ID
inclusivebooleanIf true, target users IN these areas; if false, EXCLUDE
namestringGeo target name
rangenumberRadius range
unitstringDistance unit

No output schema declared.

No examples provided.

update_image_ad_item ~184

Update an existing image ad item

NameTypeReqDescription
creativenumberImage creative ID
creative_urlstringURL to image file
heightnumberAd height in pixels
html_alt_textstringAlt text for the image
html_content_belowstringHTML content below the ad item
html_targetstringWindow/frame for destination URL
idnumberyesAd item ID
locationstringClick-through URL
metadataobjectCustom metadata key-value pairs
namestringAd item name
tracking_pixelstringThird-party tracking pixel URL
tracking_pixelsarrayArray of tracking pixel URLs
trusted_redirect_domainsarrayTrusted redirect domains
widthnumberAd width in pixels

No output schema declared.

No examples provided.

update_list_target ~62

Update an existing list target

NameTypeReqDescription
data_listnumberData list ID
idnumberyesList target ID
inclusivebooleanIf true, inclusion; if false, exclusion
labelstringList target name

No output schema declared.

No examples provided.

update_manager ~328

Update an existing manager

NameTypeReqDescription
can_assign_campaigns_directlybooleanCan assign campaigns directly
can_manage_admin_api_accessbooleanCan manage API keys
can_manage_biddersbooleanCan manage bidders
can_manage_billingbooleanCan manage billing
can_manage_contractsbooleanCan manage contracts
can_manage_data_keysbooleanCan manage data keys
can_manage_linksbooleanCan manage tracking links
can_manage_mediabooleanCan manage creatives and media groups
can_manage_native_ad_templatesbooleanCan manage native templates
can_manage_product_dbbooleanCan manage product catalogs
can_manage_programmaticbooleanCan manage programmatic
can_manage_self_servebooleanCan manage Self-Serve
can_manage_targetsbooleanCan manage targets
can_manage_ticketsbooleanCan manage tickets
can_manage_usersbooleanCan manage users
emailstringManager email address
idnumberyesManager ID
is_enabledbooleanWhether the manager account is enabled
namestringManager name
notesstringNotes about the manager
passwordstringLogin password
positionstringManager position
publisher_accessstringPublisher access level
publisher_access_listarrayPublisher IDs for specific access
statistics_accessstringStatistics access level

No output schema declared.

No examples provided.

update_media_group ~35

Update an existing media group

NameTypeReqDescription
idnumberyesMedia group ID
namestringMedia group name

No output schema declared.

No examples provided.

update_native_ad_item ~120

Update an existing native ad item

NameTypeReqDescription
idnumberyesAd item ID
locationstringClick-through URL
metadataobjectCustom metadata key-value pairs
namestringAd item name
templatenumberNative template ID
tracking_pixelstringThird-party tracking pixel URL
tracking_pixelsarrayArray of tracking pixel URLs
trusted_redirect_domainsarrayTrusted redirect domains
variablesobjectTemplate variables as key-value pairs

No output schema declared.

No examples provided.

update_native_template ~67

Update an existing native template. Variables uses add/remove format for updates.

NameTypeReqDescription
idnumberyesNative template ID
namestringTemplate name
raw_htmlstringHTML template content with variable placeholders
variablesobjectVariables to add/remove

No output schema declared.

No examples provided.

update_ortb_native_data_asset ~67

Update an existing data asset for an ORTB native template

NameTypeReqDescription
idnumberyesData asset ID
lennumberMax length
template_idnumberyesORTB native template ID
typenumberData asset type

No output schema declared.

No examples provided.

update_ortb_native_image_asset ~94

Update an existing image asset for an ORTB native template

NameTypeReqDescription
hnumberHeight
hminnumberMin height
idnumberyesImage asset ID
template_idnumberyesORTB native template ID
typenumberImage asset type
wnumberWidth
wminnumberMin width

No output schema declared.

No examples provided.

update_ortb_native_template ~60

Update an existing OpenRTB native template

NameTypeReqDescription
html_templatestringHTML template for rendering the native ad
idnumberyesORTB native template ID
namestringORTB 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
lennumberMax length of title
template_idnumberyesORTB native template ID

No output schema declared.

No examples provided.

update_placement ~232

Update an existing placement

NameTypeReqDescription
activebooleanWhether placement is active
advertisementobjectAdvertisement object with id and type
channelnumberChannel ID (mutually exclusive with zone)
contextual_segmentsarrayArray of contextual segment IDs
costobjectPricing model
data_key_target_idnumberData Key Target ID
geo_targetnumberGeotarget ID
idnumberyesPlacement ID
keywordsstringComma-separated keywords
keywords_match_methodstringKeyword matching method
list_targetnumberList Target ID
payoutobjectPublisher payout configuration
platform_targetnumberPlatform target ID
prioritystringServing priority level
schedulenumberSchedule ID
serve_methodstringServing system
share_of_voicenumberShare of voice percentage
weightnumberRelative delivery weight
zoneobjectZone object (mutually exclusive with channel)

No output schema declared.

No examples provided.

update_platform_target ~60

Update an existing platform target

NameTypeReqDescription
device_targetsarrayList of device patterns to target
idnumberyesPlatform target ID
namestringPlatform target name
platformstringPreset platform target

No output schema declared.

No examples provided.

update_pmp_deal ~82

Update an existing PMP deal

NameTypeReqDescription
audience_targetnumberAudience target ID
bid_floornumberBid floor
geo_targetnumberGeo target ID
idnumberyesPMP deal ID
namestringPMP deal name
whitelist_seatsarraySeat 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
inclusivebooleanIf true, inclusion target; if false, exclusion target
labelstringPostal code target name
locationsarrayArray 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
namestringCatalog 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
categorystringItem category
descriptionstringItem description
identifierstringyesUnique identifier for the catalog item
image_urlstringItem image URL
namestringItem name
pricestringItem price
publisher_idnumberyesPublisher ID
urlstringItem URL

No output schema declared.

No examples provided.

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 83 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 21 September 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 619 tools: list_advertisers, get_advertiser, create_advertiser, update_advertiser, delete_advertiser, and 614 more. Their descriptions and schemas cost roughly 34,549 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 21 September 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.