servers / adbutler

AdButler MCP server

communitystreamable_httpremotedestructive capablehealthy

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


01Tools · 622
ToolRiskSide effectsApproval
update_rich_media_creative
Update an existing rich media creative
writetrueunknown
create_video_creative
Create a new video creative. The API uses multipart file upload.
writetrueunknown
list_video_creatives
List all video creatives
readfalseunknown
delete_video_creative
Delete a video creative
destructivetruetrue
update_audio_creative
Update an existing audio creative
writetrueunknown
draft_save_campaign
Save/publish a draft campaign (converts draft to live campaign)
writetrueunknown
list_data_keys
List all data keys (custom key-value targeting variables)
readfalseunknown
get_data_key
Get details of a specific data key
readfalseunknown
create_data_key
Create a new data key for custom targeting
writetrueunknown
get_data_key_target
Get details of a specific data key target
readfalseunknown
update_data_key
Update an existing data key
writetrueunknown
delete_data_key
Delete a data key
destructivetruetrue
list_data_key_targets
List all data key targets (targeting rules using data key values)
readfalseunknown
create_data_key_target
Create a new data key target (targeting rule)
writetrueunknown
update_data_key_target
Update an existing data key target
writetrueunknown
replace_contract_document_file_from_template
Replace a contract document file from a template
unknownunknownunknown
delete_data_key_target
Delete a data key target
destructivetruetrue
list_contract_document_file_revisions
List file revisions for a contract document
readfalseunknown
list_day_partings
List all day parting rules (time-of-day targeting)
readfalseunknown
delete_day_parting
Delete a day parting rule
destructivetruetrue
get_day_parting
Get details of a specific day parting rule
readfalseunknown
list_geo_targets
List all geo targets (geographic targeting rules)
readfalseunknown
update_video_creative
Update an existing video creative
writetrueunknown
create_audio_creative
Create a new audio creative. The API uses multipart file upload.
writetrueunknown
list_audio_creatives
List all audio creatives
readfalseunknown
delete_audio_creative
Delete an audio creative
destructivetruetrue
get_contract_document_file_revision
Get a specific file revision for a contract document
readfalseunknown
create_product_catalog
Create a new product catalog for a publisher
writetrueunknown
vast42_list_resources
List all VAST 4.2 resources
readfalseunknown
update_creative
Update an existing image creative
writetrueunknown
download_contract_document_file_revision
Download a file revision for a contract document
unknownunknownunknown
vast42_create_resource
Create a VAST 4.2 resource
writetrueunknown
create_day_parting
Create a new day parting rule for time-of-day targeting. Ranges is an object with day names as keys and arrays of time range strings (e.g. "09:00:00-17:00:00") as values.
writetrueunknown
update_day_parting
Update an existing day parting rule
writetrueunknown
get_geo_target
Get details of a specific geo target
readfalseunknown
vast42_update_resource
Update a VAST 4.2 resource
writetrueunknown
vast42_list_icons
List all VAST 4.2 icons
readfalseunknown
vast42_get_icon
Get a single VAST 4.2 icon
readfalseunknown
delete_beacon_signing_key
Delete a beacon signing key
destructivetruetrue
create_trusted_redirect_domain
Create a new trusted redirect domain
writetrueunknown
validate_beacon_signing_key
Validate a beacon signing key
unknownunknownunknown
draft_create_campaign
Create a new draft standard campaign. Fields go inside a "draft" object wrapper.
writetrueunknown
draft_list_ad_items
List all draft ad items across all types
readfalseunknown
draft_get_image_ad_item
Get details of a specific draft image ad item
readfalseunknown
draft_delete_image_ad_item
Delete a draft image ad item
destructivetruetrue
vast42_delete_icon
Delete a VAST 4.2 icon
destructivetruetrue
list_signature_request_recipients
List all recipients for a signature request
readfalseunknown
delete_signature_request_recipient
Delete a recipient from a signature request
destructivetruetrue
get_signature_request_recipient
Get a specific recipient for a signature request
readfalseunknown
vast42_create_icon_click_fallback_image
Create a VAST 4.2 icon click fallback image
writetrueunknown
update_signature_request_recipient
Update a recipient for a signature request
writetrueunknown
cancel_signature_request
Cancel a signature request
destructivetruetrue
get_manager
Get details of a specific manager by ID
readfalseunknown
resend_signature_request
Resend a signature request
unknownunknownunknown
list_managers
List all managers in your AdButler account
readfalseunknown
delete_manager
Delete a manager
destructivetruetrue
get_vast_report
Get VAST video advertising report
readfalseunknown
get_conversion_details_report
Get conversion details report
readfalseunknown
get_demand_source_report
Get demand source statistics report
readfalseunknown
get_display_platform_estimate
Get display platform estimate statistics
readfalseunknown
get_placement_forecast
Get placement forecast report
readfalseunknown
get_vast_platform_estimate
Get VAST platform estimate statistics
readfalseunknown
get_display_forecast
Get display forecast report
readfalseunknown
vast42_list_closed_caption_files
List all VAST 4.2 closed caption files
readfalseunknown
vast42_list_universal_ad_ids
List all VAST 4.2 universal ad IDs
readfalseunknown
vast42_create_interactive_creative_file
Create a VAST 4.2 interactive creative file
writetrueunknown
vast42_update_universal_ad_id
Update a VAST 4.2 universal ad ID
writetrueunknown
get_geo_summary_report
Get geographic summary report
readfalseunknown
get_display_channel_forecast
Get display channel forecast report
readfalseunknown
get_auction_placements_report
Get auction placement statistics report
readfalseunknown
get_vast_forecast
Get VAST forecast report
readfalseunknown
get_vast_channel_forecast
Get VAST channel forecast report
readfalseunknown
get_vast_auction_placements_report
Get VAST auction placements report
readfalseunknown
list_custom_reports
List all saved report configurations
readfalseunknown
delete_custom_report
Delete a report configuration
destructivetruetrue
get_vast_geo_summary_report
Get VAST geographic summary report
readfalseunknown
vast42_get_placement
Get a single VAST 4.2 placement
readfalseunknown
get_live_website_preview
Get live website preview URL
readfalseunknown
get_manual_tracking_links
Generate manual tracking links for an ad item
unknownunknownunknown
vast42_delete_placement
Delete a VAST 4.2 placement
destructivetruetrue
get_custom_report
Get details of a specific report configuration
readfalseunknown
list_vast_custom_reports
List all VAST report data
readfalseunknown
vast42_create_campaign_assignment
Create a VAST 4.2 campaign assignment
writetrueunknown
draft_create_rich_media_ad_item
Create a new draft rich media ad item
writetrueunknown
draft_list_custom_html_ad_items
List all draft custom HTML ad items
readfalseunknown
draft_get_custom_html_ad_item
Get details of a specific draft custom HTML ad item
readfalseunknown
create_custom_report
Create a new report configuration
writetrueunknown
get_vast_custom_report
Get a specific VAST report
readfalseunknown
list_all_generated_reports
List all generated reports across all configurations
readfalseunknown
list_all_report_schedules
List all report schedules across all configurations
readfalseunknown
get_report_schedule
Get a specific report schedule
writetrueunknown
list_report_generated
List generated reports for a specific report configuration
readfalseunknown
list_report_schedules
List schedules for a specific report configuration
readfalseunknown
create_report_schedule
Create a new report schedule
writetrueunknown
delete_report_schedule
Delete a report schedule
destructivetruetrue
list_report_schedule_generated
List generated reports for a specific schedule
writetrueunknown
get_report_schedule_generated
Get a specific generated report from a schedule
writetrueunknown
serve_ad
Request ad delivery for a zone. Returns the ad(s) that would be served, useful for verifying ad setup. Uses POST /adserve.
writetrueunknown
create_advertiser
Create a new advertiser
writetrueunknown
get_audio_creative
Get details of a specific audio creative
readfalseunknown
replace_image_creative_file
Replace the file on an image creative
unknownunknownunknown
replace_rich_media_creative_file
Replace the file on a rich media creative
unknownunknownunknown
get_placement
Get details of a specific placement
readfalseunknown
replace_video_creative_file
Replace the file on a video creative
unknownunknownunknown
replace_audio_creative_file
Replace the file on an audio creative
unknownunknownunknown
list_placements
List all placements (assignments of ad items to zones)
readfalseunknown
get_ad
Retrieve an ad via GET request. Same parameters as serve_ad but uses GET instead of POST.
writetrueunknown
vast_list_ad_items
List all VAST ad items
readfalseunknown
vast_create_ad_item
Create a new VAST ad item
writetrueunknown
vast_update_ad_item
Update an existing VAST ad item
writetrueunknown
vast_delete_ad_item
Delete a VAST ad item
destructivetruetrue
draft_create_catalog_ad_item
Create a new draft catalog ad item
writetrueunknown
vast_get_campaign
Get details of a specific VAST campaign
readfalseunknown
vast_create_campaign
Create a new VAST campaign
writetrueunknown
vast_archive_campaign
Archive a VAST campaign (soft-delete, can be restored later)
destructivetruetrue
vast_update_campaign
Update an existing VAST campaign
writetrueunknown
vast_list_archived_campaigns
List all archived VAST campaigns
readfalseunknown
vast_delete_campaign
Delete a VAST campaign
destructivetruetrue
vast_get_archived_campaign
Get details of a specific archived VAST campaign
readfalseunknown
vast_delete_archived_campaign
Permanently delete an archived VAST campaign
destructivetruetrue
vast_unarchive_campaign
Restore an archived VAST campaign back to active status
readfalseunknown
vast_list_channels
List all VAST channels
readfalseunknown
vast_get_channel
Get details of a specific VAST channel
readfalseunknown
vast_delete_channel
Delete a VAST channel
destructivetruetrue
vast_get_archived_channel
Get details of a specific archived VAST channel
readfalseunknown
vast_create_channel
Create a new VAST channel
writetrueunknown
vast_archive_channel
Archive a VAST channel (soft-delete, can be restored later)
destructivetruetrue
vast_delete_archived_channel
Permanently delete an archived VAST channel
destructivetruetrue
vast_update_channel
Update an existing VAST channel
writetrueunknown
vast_list_archived_channels
List all archived VAST channels
readfalseunknown
vast_unarchive_channel
Restore an archived VAST channel back to active status
readfalseunknown
vast_create_channel_zone_assignment
Assign a VAST zone to a VAST channel
writetrueunknown
vast_list_channel_zone_assignments
List all VAST channel zone assignments
readfalseunknown
vast_update_channel_zone_assignment
Update a VAST channel zone assignment
writetrueunknown
create_geo_target
Create a new geo target for geographic targeting. Areas is an array of objects with continent, country (2-letter code), region, city fields.
writetrueunknown
update_geo_target
Update an existing geo target
writetrueunknown
delete_geo_target
Delete a geo target
destructivetruetrue
vast_get_channel_zone_assignment
Get details of a specific VAST channel zone assignment
readfalseunknown
list_postal_code_targets
List all postal code targets
readfalseunknown
get_postal_code_target
Get details of a specific postal code target
readfalseunknown
list_list_targets
List all list targets (allowlist/blocklist targeting)
readfalseunknown
vast_delete_channel_zone_assignment
Remove a VAST zone from a VAST channel
destructivetruetrue
create_postal_code_target
Create a new postal code target
writetrueunknown
vast_list_zones
List all VAST zones
readfalseunknown
vast_get_zone
Get details of a specific VAST zone
readfalseunknown
draft_update_catalog_ad_item
Update an existing draft catalog ad item
writetrueunknown
draft_delete_catalog_ad_item
Delete a draft catalog ad item
destructivetruetrue
update_postal_code_target
Update an existing postal code target
writetrueunknown
delete_postal_code_target
Delete a postal code target
destructivetruetrue
get_list_target
Get details of a specific list target
readfalseunknown
draft_list_campaign_assignments
List all draft campaign assignments
readfalseunknown
create_list_target
Create a new list target (inclusion/exclusion using a data list)
writetrueunknown
get_platform_target
Get details of a specific platform target
readfalseunknown
update_list_target
Update an existing list target
writetrueunknown
create_platform_target
Create a new platform target for device/OS/browser targeting
writetrueunknown
delete_list_target
Delete a list target
destructivetruetrue
draft_get_campaign_assignment
Get details of a specific draft campaign assignment
readfalseunknown
list_platform_targets
List all platform targets (device/OS/browser targeting)
readfalseunknown
draft_create_custom_html_ad_item
Create a new draft custom HTML ad item
writetrueunknown
update_platform_target
Update an existing platform target
writetrueunknown
delete_platform_target
Delete a platform target
destructivetruetrue
list_data_targets
List all data targets
readfalseunknown
get_event_logs
Get event logs for account activity (changes, logins, etc.)
readfalseunknown
remove_list_target_usages
Remove all usages of a list target
destructivetruetrue
get_click_details_report
Get click details report
readfalseunknown
vast_create_zone
Create a new VAST zone
writetrueunknown
list_user_dbs
List all user databases in your AdButler account
readfalseunknown
draft_update_custom_html_ad_item
Update an existing draft custom HTML ad item
writetrueunknown
draft_delete_custom_html_ad_item
Delete a draft custom HTML ad item
destructivetruetrue
create_user_db
Create a new user database
writetrueunknown
list_user_attributes
List all user attributes in a user database
readfalseunknown
create_user_attribute
Create a new user attribute in a user database
writetrueunknown
draft_list_native_ad_items
List all draft native ad items
readfalseunknown
draft_get_native_ad_item
Get details of a specific draft native ad item
readfalseunknown
get_display_report
Get display advertising report with impressions, clicks, and CTR
readfalseunknown
update_user_attribute
Update an existing user attribute in a user database
writetrueunknown
vast_update_zone
Update an existing VAST zone
writetrueunknown
vast_delete_zone
Delete a VAST zone
destructivetruetrue
vast_get_archived_zone
Get details of a specific archived VAST zone
readfalseunknown
vast_archive_zone
Archive a VAST zone (soft-delete, can be restored later)
destructivetruetrue
list_advertisers
List all advertisers in your AdButler account
readfalseunknown
delete_advertiser
Delete an advertiser
destructivetruetrue
unarchive_advertiser
Restore an archived advertiser back to active status
readfalseunknown
create_campaign
Create a new standard campaign
writetrueunknown
get_advertiser
Get details of a specific advertiser by ID
readfalseunknown
archive_advertiser
Archive an advertiser (soft-delete, can be restored later)
destructivetruetrue
list_all_campaigns
List all campaigns across all types
readfalseunknown
update_campaign
Update an existing standard campaign
writetrueunknown
get_archived_campaign
Get details of a specific archived standard campaign
readfalseunknown
get_campaign_eligible_zones
Get eligible zones for a campaign
readfalseunknown
get_campaign_assignment
Get details of a specific campaign assignment
readfalseunknown
list_channels
List all channels
readfalseunknown
delete_channel
Delete a channel
destructivetruetrue
vast_list_archived_zones
List all archived VAST zones
readfalseunknown
vast_unarchive_zone
Restore an archived VAST zone back to active status
readfalseunknown
vast_delete_archived_zone
Permanently delete an archived VAST zone
destructivetruetrue
vast_list_placements
List all VAST placements (assignments of VAST ad items to VAST zones)
readfalseunknown
vast_get_placement
Get details of a specific VAST placement
readfalseunknown
list_audiences
List all audiences in a user database
readfalseunknown
update_advertiser
Update an existing advertiser
writetrueunknown
get_archived_advertiser
Get details of a specific archived advertiser
readfalseunknown
get_campaign
Get details of a specific standard campaign
readfalseunknown
archive_campaign
Archive a standard campaign (soft-delete, can be restored later)
destructivetruetrue
unarchive_campaign
Restore an archived standard campaign back to active status
readfalseunknown
campaign_bulk_delete_catalog_ad_items
Bulk delete catalog ad items from a campaign
destructivetruetrue
update_campaign_assignment
Update an existing campaign assignment
writetrueunknown
list_archived_advertisers
List all archived advertisers
readfalseunknown
list_campaigns
List all standard campaigns
readfalseunknown
delete_campaign
Delete a standard campaign
destructivetruetrue
delete_archived_campaign
Permanently delete an archived standard campaign
destructivetruetrue
list_archived_campaigns
List all archived standard campaigns
readfalseunknown
get_campaign_conversion_tag
Get conversion tag for a campaign
readfalseunknown
list_campaign_assignments
List all campaign assignments (ad items assigned to campaigns)
readfalseunknown
delete_campaign_assignment
Delete a campaign assignment
destructivetruetrue
get_audience
Get details of a specific audience in a user database
readfalseunknown
draft_update_campaign_assignment
Update an existing draft campaign assignment
writetrueunknown
draft_delete_campaign_assignment
Delete a draft campaign assignment
destructivetruetrue
create_contract
Create a new contract
writetrueunknown
draft_get_placement
Get details of a specific draft placement
readfalseunknown
draft_delete_placement
Delete a draft placement
destructivetruetrue
update_contract
Update an existing contract
writetrueunknown
delete_contract
Delete a contract
destructivetruetrue
delete_archived_contract
Permanently delete an archived contract
destructivetruetrue
list_archived_contracts
List all archived contracts
readfalseunknown
get_archived_contract
Get details of a specific archived contract
readfalseunknown
campaign_bulk_create_catalog_ad_items
Bulk create catalog ad items in a campaign
writetrueunknown
create_campaign_assignment
Create a new campaign assignment (assign an ad item to a campaign)
writetrueunknown
get_channel
Get details of a specific channel
readfalseunknown
create_channel
Create a new channel
writetrueunknown
list_archived_channels
List all archived channels
readfalseunknown
list_channel_zone_assignments
List all channel zone assignments
readfalseunknown
list_all_zones
List all zones across all types (standard, email, catalog)
readfalseunknown
update_zone
Update an existing standard zone
writetrueunknown
update_channel
Update an existing channel
writetrueunknown
get_archived_channel
Get details of a specific archived channel
readfalseunknown
get_channel_zone_assignment
Get details of a specific channel zone assignment
readfalseunknown
list_zones
List all standard zones
readfalseunknown
archive_channel
Archive a channel (soft-delete, can be restored later)
destructivetruetrue
unarchive_channel
Restore an archived channel back to active status
readfalseunknown
delete_channel_zone_assignment
Remove a zone from a channel
destructivetruetrue
update_placement
Update an existing placement
writetrueunknown
delete_archived_channel
Permanently delete an archived channel
destructivetruetrue
create_channel_zone_assignment
Assign a zone to a channel
writetrueunknown
get_zone
Get details of a specific standard zone
readfalseunknown
get_zone_tag
Get the ad serving tag (embed code) for a zone
readfalseunknown
create_zone
Create a new standard zone. Set dimensions to "dynamic" for a dynamic zone (width/height must be 0), or "fixed" (default) for a fixed-size zone.
writetrueunknown
get_zone_conversion_tag
Get the conversion tracking tag for a standard zone
readfalseunknown
get_archived_zone
Get details of a specific archived standard zone
readfalseunknown
delete_placement
Delete a placement (remove an ad item from a zone)
destructivetruetrue
delete_zone
Delete a standard zone
destructivetruetrue
get_placement_conversion_tag
Get conversion tracking tag for a placement
readfalseunknown
get_native_template
Get details of a specific native template
readfalseunknown
generate_bulk_zone_tags
Generate ad serving tags for multiple zones at once
unknownunknownunknown
unarchive_zone
Restore an archived standard zone back to active status
readfalseunknown
list_contract_templates
List all contract templates
readfalseunknown
archive_zone
Archive a standard zone (soft-delete, can be restored later)
destructivetruetrue
list_email_zones
List all email zones
readfalseunknown
delete_email_zone
Delete an email zone
destructivetruetrue
list_archived_email_zones
List all archived email zones
readfalseunknown
get_catalog_zone
Get details of a specific catalog zone
readfalseunknown
get_catalog_zone_tag
Get the ad serving tag for a catalog zone
readfalseunknown
get_contract_template
Get details of a specific contract template
readfalseunknown
list_archived_zones
List all archived standard zones
readfalseunknown
get_email_zone
Get details of a specific email zone
readfalseunknown
get_email_zone_tag
Get the ad serving tag for an email zone
readfalseunknown
get_archived_email_zone
Get details of a specific archived email zone
readfalseunknown
create_catalog_zone
Create a new catalog zone for product/retail ad serving
writetrueunknown
list_publishers
List all publishers in your AdButler account
readfalseunknown
create_email_zone
Create a new email zone for serving ads in email newsletters
writetrueunknown
get_email_zone_conversion_tag
Get the conversion tracking tag for an email zone
readfalseunknown
unarchive_email_zone
Restore an archived email zone back to active status
readfalseunknown
update_catalog_zone
Update an existing catalog zone
writetrueunknown
get_publisher
Get details of a specific publisher
readfalseunknown
archive_publisher
Archive a publisher (soft-delete, can be restored later)
destructivetruetrue
delete_audience
Delete an audience from a user database
destructivetruetrue
create_contract_template
Create a new contract template. Requires name, file, attributes (JSON string), email_subject, and email_body.
writetrueunknown
update_email_zone
Update an existing email zone
writetrueunknown
archive_email_zone
Archive an email zone
destructivetruetrue
list_catalog_zones
List all catalog zones (for product/retail ad serving)
readfalseunknown
delete_catalog_zone
Delete a catalog zone
destructivetruetrue
create_publisher
Create a new publisher
writetrueunknown
list_archived_publishers
List all archived publishers
readfalseunknown
list_image_ad_items
List all image ad items
readfalseunknown
update_publisher
Update an existing publisher
writetrueunknown
get_archived_publisher
Get details of a specific archived publisher
readfalseunknown
get_image_ad_item
Get details of a specific image ad item
readfalseunknown
delete_publisher
Delete a publisher
destructivetruetrue
unarchive_publisher
Restore an archived publisher back to active status
readfalseunknown
vast_update_placement
Update an existing VAST placement
writetrueunknown
list_ad_items
List all ad items (banners) across all types (image, custom HTML, rich media, native, catalog)
readfalseunknown
update_image_ad_item
Update an existing image ad item
writetrueunknown
get_custom_html_ad_item
Get details of a specific custom HTML ad item
readfalseunknown
get_custom_html_ad_item_conversion_tag
Get conversion tracking tag for a custom HTML ad item
readfalseunknown
vast_delete_placement
Delete a VAST placement
destructivetruetrue
create_image_ad_item
Create a new image ad item (banner)
writetrueunknown
vast_get_campaign_assignment
Get details of a specific VAST campaign assignment
readfalseunknown
delete_image_ad_item
Delete an image ad item
destructivetruetrue
create_custom_html_ad_item
Create a new custom HTML ad item
writetrueunknown
list_rich_media_ad_items
List all rich media ad items
readfalseunknown
delete_rich_media_ad_item
Delete a rich media ad item
destructivetruetrue
get_image_ad_item_conversion_tag
Get conversion tracking tag for an image ad item
readfalseunknown
update_custom_html_ad_item
Update an existing custom HTML ad item
writetrueunknown
get_rich_media_ad_item
Get details of a specific rich media ad item
readfalseunknown
get_rich_media_ad_item_conversion_tag
Get conversion tracking tag for a rich media ad item
readfalseunknown
list_custom_html_ad_items
List all custom HTML ad items
readfalseunknown
delete_custom_html_ad_item
Delete a custom HTML ad item
destructivetruetrue
create_rich_media_ad_item
Create a new rich media ad item
writetrueunknown
list_native_ad_items
List all native ad items
readfalseunknown
delete_native_ad_item
Delete a native ad item
destructivetruetrue
update_contract_template
Update an existing contract template
writetrueunknown
update_rich_media_ad_item
Update an existing rich media ad item
writetrueunknown
get_native_ad_item
Get details of a specific native ad item
readfalseunknown
get_native_ad_item_conversion_tag
Get conversion tracking tag for a native ad item
readfalseunknown
update_catalog_ad_item
Update an existing catalog ad item
writetrueunknown
list_creatives
List all image creatives
readfalseunknown
delete_contract_template
Delete a contract template
destructivetruetrue
create_native_ad_item
Create a new native ad item using a native template
writetrueunknown
list_catalog_ad_items
List all catalog ad items
readfalseunknown
delete_catalog_ad_item
Delete a catalog ad item
destructivetruetrue
update_native_ad_item
Update an existing native ad item
writetrueunknown
get_catalog_ad_item
Get details of a specific catalog ad item
readfalseunknown
convert_native_to_image
Convert a native ad item to an image ad item
unknownunknownunknown
create_creative
Create a new image creative. The API uses multipart file upload — pass the media group ID and file attributes.
writetrueunknown
get_rich_media_creative
Get details of a specific rich media creative
readfalseunknown
bulk_upload_replace_user_db
Bulk upload to replace all user data in a user database
writetrueunknown
vast_create_campaign_assignment
Create a VAST campaign assignment (assign an ad item to a campaign)
writetrueunknown
vast_list_schedules
List all VAST schedules
readfalseunknown
vast_delete_campaign_assignment
Delete a VAST campaign assignment
destructivetruetrue
list_contract_documents
List all documents for a contract
readfalseunknown
create_catalog_ad_item
Create a new catalog ad item
writetrueunknown
list_all_creatives
List all creatives across all types (image, rich media, video, audio)
readfalseunknown
get_contract_document
Get details of a specific contract document
readfalseunknown
create_contract_document
Create a new document for a contract
writetrueunknown
update_contract_document
Update an existing contract document
writetrueunknown
vast_create_schedule
Create a new VAST schedule for time-based ad delivery
writetrueunknown
delete_contract_document
Delete a contract document
destructivetruetrue
vast_update_schedule
Update an existing VAST schedule
writetrueunknown
vast_list_companions
List all VAST companions
readfalseunknown
vast_update_companion
Update an existing VAST companion
writetrueunknown
vast_get_companion
Get details of a specific VAST companion
readfalseunknown
vast_delete_companion
Delete a VAST companion
destructivetruetrue
vast_get_linear_media
Get details of a specific VAST linear media
readfalseunknown
list_contract_payments
List all payments for a contract
readfalseunknown
get_contract_payment
Get details of a specific contract payment
readfalseunknown
create_contract_payment
Create a new payment for a contract
writetrueunknown
vast_list_linear_media
List all VAST linear media
readfalseunknown
delete_contract_payment
Delete a contract payment
destructivetruetrue
list_signature_requests
List all signature requests for a contract
readfalseunknown
vast_update_linear_media
Update an existing VAST linear media
writetrueunknown
vast_get_non_linear_media
Get details of a specific VAST non-linear media
readfalseunknown
vast_delete_linear_media
Delete a VAST linear media
destructivetruetrue
vast_create_non_linear_media
Create a new VAST non-linear media
writetrueunknown
vast_list_tracking
List all VAST tracking entries
readfalseunknown
vast_delete_non_linear_media
Delete a VAST non-linear media
destructivetruetrue
vast_create_tracking
Create a new VAST tracking entry
writetrueunknown
get_signature_request
Get details of a specific signature request
readfalseunknown
list_data_lists
List all data lists in your AdButler account
readfalseunknown
update_data_list
Update an existing data list
writetrueunknown
bulk_upload_remove_data_list
Bulk remove entries from a data list
destructivetruetrue
get_beacon_signing_key
Get details of a specific beacon signing key by ID
readfalseunknown
delete_creative
Delete an image creative
destructivetruetrue
draft_create_native_ad_item
Create a new draft native ad item
writetrueunknown
get_creative
Get details of a specific image creative
readfalseunknown
list_rich_media_creatives
List all rich media creatives
readfalseunknown
delete_rich_media_creative
Delete a rich media creative
destructivetruetrue
draft_update_native_ad_item
Update an existing draft native ad item
writetrueunknown
draft_delete_native_ad_item
Delete a draft native ad item
destructivetruetrue
draft_list_catalog_ad_items
List all draft catalog ad items
readfalseunknown
vast_update_tracking
Update an existing VAST tracking entry
writetrueunknown
get_vast_zone_tags
Get VAST zone serving tags
readfalseunknown
get_vast_campaign_conversion_tag
Get conversion tracking tag for a VAST campaign
readfalseunknown
get_contract
Get details of a specific contract
readfalseunknown
get_vast_zone_conversion_tag
Get VAST zone conversion tracking tag
readfalseunknown
get_vast_placement_conversion_tag
Get conversion tracking tag for a VAST placement
readfalseunknown
draft_get_catalog_ad_item
Get details of a specific draft catalog ad item
readfalseunknown
create_signature_request
Create a new signature request for a contract
writetrueunknown
archive_contract
Archive a contract (soft-delete, can be restored later)
destructivetruetrue
get_contract_active_signature_request
Get the active signature request for a contract
readfalseunknown
create_native_template
Create a new native ad template with HTML and variable placeholders
writetrueunknown
list_schedules
List all schedules (time-based delivery rules for ad items)
readfalseunknown
get_schedule
Get details of a specific schedule
writetrueunknown
update_schedule
Update an existing schedule
writetrueunknown
create_rich_media_creative
Create a new rich media creative. The API uses multipart file upload (ZIP for HTML5).
writetrueunknown
get_video_creative
Get details of a specific video creative
readfalseunknown
delete_schedule
Delete a schedule
destructivetruetrue
list_media_groups
List all media groups (collections of creatives)
readfalseunknown
delete_media_group
Delete a media group
destructivetruetrue
get_media_group
Get details of a specific media group
readfalseunknown
create_media_group
Create a new media group
writetrueunknown
update_media_group
Update an existing media group
writetrueunknown
create_placement
Create a new placement (assign an ad item or campaign to a zone or channel)
writetrueunknown
list_native_templates
List all native ad templates
readfalseunknown
delete_native_template
Delete a native template
destructivetruetrue
update_native_template
Update an existing native template. Variables uses add/remove format for updates.
destructivetruetrue
create_schedule
Create a new schedule for time-based ad delivery. Schedules are automatically linked to ad items via placements.
writetrueunknown
update_custom_report
Update an existing report configuration
writetrueunknown
create_vast_custom_report
Create a new VAST report configuration
writetrueunknown
get_report_generated
Get a specific generated report
readfalseunknown
update_report_schedule
Update a report schedule
writetrueunknown
revoke_report_schedule_historical_access
Revoke historical access for a report schedule
destructivetruetrue
vast_get_ad_item
Get details of a specific VAST ad item
readfalseunknown
vast_list_campaigns
List all VAST campaigns
readfalseunknown
vast_create_placement
Create a new VAST placement (assign a VAST ad item or campaign to a VAST zone or channel)
writetrueunknown
vast_list_campaign_assignments
List all VAST campaign assignments
readfalseunknown
vast_update_campaign_assignment
Update a VAST campaign assignment
writetrueunknown
vast_get_schedule
Get details of a specific VAST schedule
writetrueunknown
vast_delete_schedule
Delete a VAST schedule
destructivetruetrue
vast_create_companion
Create a new VAST companion
writetrueunknown
vast_list_media
List all VAST media (linear and non-linear)
readfalseunknown
vast_create_linear_media
Create a new VAST linear media
writetrueunknown
vast_list_non_linear_media
List all VAST non-linear media
readfalseunknown
vast_update_non_linear_media
Update an existing VAST non-linear media
writetrueunknown
vast_get_tracking
Get details of a specific VAST tracking entry
readfalseunknown
vast_delete_tracking
Delete a VAST tracking entry
destructivetruetrue
get_vast_ad_item_conversion_tag
Get conversion tracking tag for a VAST ad item
readfalseunknown
list_contracts
List all contracts
readfalseunknown
update_signature_request
Update an existing signature request
writetrueunknown
delete_signature_request
Delete a signature request
destructivetruetrue
get_contract_assigned_campaigns
Get campaigns assigned to a contract
readfalseunknown
unarchive_contract
Unarchive a contract (restore from archive)
destructivetruetrue
create_contract_document_from_template
Create a contract document from a template
writetrueunknown
replace_contract_document_file
Replace the file on a contract document
unknownunknownunknown
create_manager
Create a new manager
writetrueunknown
list_roles
List all roles in your AdButler account
readfalseunknown
update_role
Update an existing role
writetrueunknown
get_contact
Get details of a specific contact by ID
readfalseunknown
delete_contact
Delete a contact
destructivetruetrue
get_demand_source
Get details of a specific demand source by ID
readfalseunknown
delete_demand_source
Delete a demand source
destructivetruetrue
create_demand_endpoint
Create a new demand endpoint
writetrueunknown
list_pmp_deals
List all PMP deals in your AdButler account
readfalseunknown
update_pmp_deal
Update an existing PMP deal
writetrueunknown
get_ortb_native_template
Get details of a specific OpenRTB native template by ID
readfalseunknown
delete_ortb_native_template
Delete an OpenRTB native template
destructivetruetrue
update_manager
Update an existing manager
writetrueunknown
get_role
Get details of a specific role by ID
readfalseunknown
delete_role
Delete a role
destructivetruetrue
create_contact
Create a new contact
writetrueunknown
get_contact_report_schedules
List report schedules for a contact
readfalseunknown
create_demand_source
Create a new demand source
writetrueunknown
list_demand_endpoints
List all demand endpoints in your AdButler account
readfalseunknown
update_demand_endpoint
Update an existing demand endpoint
writetrueunknown
get_pmp_deal
Get details of a specific PMP deal by ID
readfalseunknown
delete_pmp_deal
Delete a PMP deal
destructivetruetrue
create_ortb_native_template
Create a new OpenRTB native template
writetrueunknown
create_role
Create a new role with permission settings
writetrueunknown
list_contacts
List all contacts in your AdButler account
readfalseunknown
update_contact
Update an existing contact
writetrueunknown
list_demand_sources
List all demand sources in your AdButler account
readfalseunknown
update_demand_source
Update an existing demand source
writetrueunknown
get_demand_endpoint
Get details of a specific demand endpoint by ID
readfalseunknown
delete_demand_endpoint
Delete a demand endpoint
destructivetruetrue
create_pmp_deal
Create a new PMP deal
writetrueunknown
list_ortb_native_templates
List all OpenRTB native templates in your AdButler account
readfalseunknown
update_ortb_native_template
Update an existing OpenRTB native template
writetrueunknown
get_user_db
Get details of a specific user database by ID
readfalseunknown
get_user_attribute
Get details of a specific user attribute in a user database
readfalseunknown
delete_user_attribute
Delete a user attribute from a user database
destructivetruetrue
draft_create_schedule
Create a new draft schedule
writetrueunknown
create_audience
Create a new audience in a user database
writetrueunknown
get_user
Get a single user from a user database
readfalseunknown
add_user_list_attribute_values
Add values to a list attribute for a user
writetrueunknown
get_data_list
Get details of a specific data list by ID
readfalseunknown
delete_data_list
Delete a data list
destructivetruetrue
bulk_upload_replace_data_list
Bulk replace all entries in a data list
readfalseunknown
create_beacon_signing_key
Create a new beacon signing key
writetrueunknown
list_trusted_redirect_domains
List all trusted redirect domains in your AdButler account
readfalseunknown
update_trusted_redirect_domain
Update an existing trusted redirect domain
writetrueunknown
draft_list_campaigns
List all draft standard campaigns
readfalseunknown
draft_update_campaign
Update an existing draft standard campaign
writetrueunknown
draft_get_ad_item
Get a draft ad item of any type by ID
readfalseunknown
draft_create_image_ad_item
Create a new draft image ad item
writetrueunknown
draft_list_rich_media_ad_items
List all draft rich media ad items
readfalseunknown
draft_update_rich_media_ad_item
Update an existing draft rich media ad item
writetrueunknown
update_audience
Update an existing audience in a user database
writetrueunknown
create_user
Create a new user in a user database
writetrueunknown
remove_user_list_attribute_values
Remove values from a list attribute for a user
destructivetruetrue
create_data_list
Create a new data list
writetrueunknown
bulk_upload_add_data_list
Bulk add entries to a data list
writetrueunknown
list_beacon_signing_keys
List all beacon signing keys in your AdButler account
readfalseunknown
update_beacon_signing_key
Update an existing beacon signing key
writetrueunknown
get_trusted_redirect_domain
Get details of a specific trusted redirect domain by ID
readfalseunknown
delete_trusted_redirect_domain
Delete a trusted redirect domain
destructivetruetrue
draft_get_campaign
Get details of a specific draft standard campaign
readfalseunknown
draft_delete_campaign
Delete a draft standard campaign
destructivetruetrue
draft_list_image_ad_items
List all draft image ad items
readfalseunknown
draft_update_image_ad_item
Update an existing draft image ad item
writetrueunknown
draft_get_rich_media_ad_item
Get details of a specific draft rich media ad item
readfalseunknown
draft_delete_rich_media_ad_item
Delete a draft rich media ad item
destructivetruetrue
draft_create_campaign_assignment
Create a new draft campaign assignment
writetrueunknown
draft_list_placements
List all draft placements
readfalseunknown
draft_update_placement
Update an existing draft placement
writetrueunknown
draft_get_schedule
Get details of a specific draft schedule
writetrueunknown
draft_delete_schedule
Delete a draft schedule
destructivetruetrue
get_product_catalog
Get details of a specific product catalog
readfalseunknown
search_product_catalog_items
Search for items in a product catalog
readfalseunknown
update_product_catalog_item
Update an existing product catalog item
writetrueunknown
get_product_source
Get details of a specific product source
readfalseunknown
delete_product_source
Delete a product source
destructivetruetrue
get_product_source_target
Get details of a specific product source target
readfalseunknown
delete_product_source_target
Delete a product source target
destructivetruetrue
create_bidder
Create a new bidder
writetrueunknown
list_sftp_connections
List all SFTP connections in your AdButler account
readfalseunknown
draft_create_placement
Create a new draft placement
writetrueunknown
draft_list_schedules
List all draft schedules
readfalseunknown
draft_update_schedule
Update an existing draft schedule
writetrueunknown
list_product_catalogs
List all product catalogs for a publisher
readfalseunknown
update_product_catalog
Update an existing product catalog
writetrueunknown
create_product_catalog_item
Create a new item in a product catalog
writetrueunknown
list_product_sources
List all product sources for a publisher
readfalseunknown
update_product_source
Update an existing product source
writetrueunknown
list_product_source_targets
List all product source targets for a publisher
readfalseunknown
update_product_source_target
Update an existing product source target
writetrueunknown
get_bidder
Get details of a specific bidder by ID
readfalseunknown
delete_bidder
Delete a bidder
destructivetruetrue
create_sftp_connection
Create a new SFTP connection
writetrueunknown
get_product_catalog_item
Get details of a specific product catalog item
readfalseunknown
bulk_upload_product_catalog
Bulk upload items to a product catalog
writetrueunknown
create_product_source
Create a new product source for a publisher
writetrueunknown
bulk_create_product_sources
Bulk create product sources for a publisher
writetrueunknown
create_product_source_target
Create a new product source target for a publisher
writetrueunknown
list_bidders
List all bidders in your AdButler account
readfalseunknown
update_bidder
Update an existing bidder
writetrueunknown
get_sftp_connection
Get details of a specific SFTP connection by ID
readfalseunknown
delete_sftp_connection
Delete an SFTP connection
destructivetruetrue
get_event_log_upload_config
Get details of a specific event log upload configuration
writetrueunknown
delete_event_log_upload_config
Delete an event log upload configuration
destructivetruetrue
vast42_list_ads
List all VAST 4.2 ad items
readfalseunknown
vast42_update_ad
Update a VAST 4.2 ad item
writetrueunknown
vast42_get_creative
Get a single VAST 4.2 creative
readfalseunknown
vast42_delete_creative
Delete a VAST 4.2 creative
destructivetruetrue
update_sftp_connection
Update an existing SFTP connection
writetrueunknown
list_event_log_upload_configs
List all event log upload configurations
writetrueunknown
update_event_log_upload_config
Update an existing event log upload configuration
writetrueunknown
get_event_log_upload_log
Get details of a specific event log upload log entry
writetrueunknown
vast42_create_ad
Create a VAST 4.2 ad item
writetrueunknown
vast42_list_creatives
List all VAST 4.2 creatives
readfalseunknown
vast42_update_creative
Update a VAST 4.2 creative
writetrueunknown
vast42_get_linear
Get a single VAST 4.2 linear media
readfalseunknown
vast42_delete_linear
Delete a VAST 4.2 linear media
destructivetruetrue
vast42_create_non_linear
Create a VAST 4.2 non-linear media
writetrueunknown
vast42_list_companions
List all VAST 4.2 companions
readfalseunknown
vast42_update_companion
Update a VAST 4.2 companion
writetrueunknown
vast42_get_media_file
Get a single VAST 4.2 media file
readfalseunknown
vast42_delete_media_file
Delete a VAST 4.2 media file
destructivetruetrue
vast42_create_mezzanine
Create a VAST 4.2 mezzanine
writetrueunknown
test_sftp_connection
Test an SFTP connection with the provided credentials
unknownunknownunknown
create_event_log_upload_config
Create a new event log upload configuration
writetrueunknown
list_event_log_upload_logs
List all event log upload logs
writetrueunknown
vast42_get_ad
Get a single VAST 4.2 ad item
readfalseunknown
vast42_delete_ad
Delete a VAST 4.2 ad item
destructivetruetrue
vast42_create_creative
Create a VAST 4.2 creative
writetrueunknown
vast42_list_linears
List all VAST 4.2 linear media
readfalseunknown
vast42_update_linear
Update a VAST 4.2 linear media
writetrueunknown
vast42_get_non_linear
Get a single VAST 4.2 non-linear media
readfalseunknown
vast42_delete_non_linear
Delete a VAST 4.2 non-linear media
destructivetruetrue
vast42_create_companion
Create a VAST 4.2 companion
writetrueunknown
vast42_list_media_files
List all VAST 4.2 media files
readfalseunknown
vast42_update_media_file
Update a VAST 4.2 media file
writetrueunknown
vast42_get_mezzanine
Get a single VAST 4.2 mezzanine
readfalseunknown
vast42_delete_mezzanine
Delete a VAST 4.2 mezzanine
destructivetruetrue
vast42_create_linear
Create a VAST 4.2 linear media
writetrueunknown
vast42_list_non_linears
List all VAST 4.2 non-linear media
readfalseunknown
vast42_update_non_linear
Update a VAST 4.2 non-linear media
writetrueunknown
vast42_get_companion
Get a single VAST 4.2 companion
readfalseunknown
vast42_delete_companion
Delete a VAST 4.2 companion
destructivetruetrue
vast42_create_media_file
Create a VAST 4.2 media file
writetrueunknown
vast42_list_mezzanines
List all VAST 4.2 mezzanines
readfalseunknown
vast42_update_mezzanine
Update a VAST 4.2 mezzanine
writetrueunknown
vast42_get_resource
Get a single VAST 4.2 resource
readfalseunknown
vast42_delete_resource
Delete a VAST 4.2 resource
destructivetruetrue
vast42_create_icon
Create a VAST 4.2 icon
writetrueunknown
vast42_list_icon_click_fallback_images
List all VAST 4.2 icon click fallback images
readfalseunknown
vast42_update_icon_click_fallback_image
Update a VAST 4.2 icon click fallback image
writetrueunknown
vast42_get_closed_caption_file
Get a single VAST 4.2 closed caption file
readfalseunknown
vast42_delete_closed_caption_file
Delete a VAST 4.2 closed caption file
destructivetruetrue
vast42_update_icon
Update a VAST 4.2 icon
writetrueunknown
vast42_get_icon_click_fallback_image
Get a single VAST 4.2 icon click fallback image
readfalseunknown
vast42_delete_icon_click_fallback_image
Delete a VAST 4.2 icon click fallback image
destructivetruetrue
vast42_create_closed_caption_file
Create a VAST 4.2 closed caption file
writetrueunknown
vast42_list_interactive_creative_files
List all VAST 4.2 interactive creative files
readfalseunknown
vast42_update_interactive_creative_file
Update a VAST 4.2 interactive creative file
writetrueunknown
vast42_get_universal_ad_id
Get a single VAST 4.2 universal ad ID
readfalseunknown
vast42_delete_universal_ad_id
Delete a VAST 4.2 universal ad ID
destructivetruetrue
vast42_create_placement
Create a VAST 4.2 placement
writetrueunknown
vast42_list_campaign_assignments
List all VAST 4.2 campaign assignments
readfalseunknown
vast42_update_campaign_assignment
Update a VAST 4.2 campaign assignment
writetrueunknown
get_ortb_native_data_asset
Get details of a specific data asset for an ORTB native template
readfalseunknown
delete_ortb_native_data_asset
Delete a data asset from an ORTB native template
destructivetruetrue
create_ortb_native_image_asset
Create a new image asset for an ORTB native template
writetrueunknown
vast42_update_closed_caption_file
Update a VAST 4.2 closed caption file
writetrueunknown
vast42_get_interactive_creative_file
Get a single VAST 4.2 interactive creative file
readfalseunknown
vast42_delete_interactive_creative_file
Delete a VAST 4.2 interactive creative file
destructivetruetrue
vast42_create_universal_ad_id
Create a VAST 4.2 universal ad ID
writetrueunknown
vast42_list_placements
List all VAST 4.2 placements
readfalseunknown
vast42_update_placement
Update a VAST 4.2 placement
writetrueunknown
vast42_get_campaign_assignment
Get a single VAST 4.2 campaign assignment
readfalseunknown
vast42_delete_campaign_assignment
Delete a VAST 4.2 campaign assignment
destructivetruetrue
create_ortb_native_data_asset
Create a new data asset for an ORTB native template
writetrueunknown
list_ortb_native_image_assets
List all image assets for an ORTB native template
readfalseunknown
update_ortb_native_image_asset
Update an existing image asset for an ORTB native template
writetrueunknown
get_ortb_native_title_asset
Get details of a specific title asset for an ORTB native template
readfalseunknown
delete_ortb_native_title_asset
Delete a title asset from an ORTB native template
destructivetruetrue
list_ortb_native_data_assets
List all data assets for an ORTB native template
readfalseunknown
update_ortb_native_data_asset
Update an existing data asset for an ORTB native template
writetrueunknown
get_ortb_native_image_asset
Get details of a specific image asset for an ORTB native template
readfalseunknown
delete_ortb_native_image_asset
Delete an image asset from an ORTB native template
destructivetruetrue
create_ortb_native_title_asset
Create a new title asset for an ORTB native template
writetrueunknown
list_zone_ortb_native_ads
List all ORTB native ads for a standard zone
readfalseunknown
update_zone_ortb_native_ad
Update an existing ORTB native ad for a standard zone
writetrueunknown
describe_adbutler_api
Get the full schema (parameters, request body shape, response shape) for one AdButler API endpoint. Use after search_adbutler_api to understand exactly what to send when you call it.
writetrueunknown
create_trial_account
Create a free AdButler trial account. Use this when the user does NOT have an AdButler account yet. Collects their info and creates the account. After calling this, the user must check their email for a verification code, then call verify_trial_email to complete setup.
writetrueunknown
list_ortb_native_title_assets
List all title assets for an ORTB native template
readfalseunknown
update_ortb_native_title_asset
Update an existing title asset for an ORTB native template
writetrueunknown
get_zone_ortb_native_ad
Get details of a specific ORTB native ad for a standard zone
readfalseunknown
delete_zone_ortb_native_ad
Delete an ORTB native ad from a standard zone
destructivetruetrue
call_adbutler_api
Call any AdButler API endpoint directly. Use this only when no specific tool wraps the endpoint you need. The session's configured API key is used automatically — do NOT pass an api_key argument. Substitute path placeholders via path_params: e.g. path="/campaigns/{id}", path_params={ "id": 123 } → /campaigns/123.
unknownunknownunknown
verify_trial_email
Verify a trial account email with the verification code sent to the user. Call this after create_trial_account. The user must provide the code from their email. On success, the API key is automatically configured.
unknownunknownunknown
create_zone_ortb_native_ad
Create a new ORTB native ad for a standard zone
writetrueunknown
search_adbutler_api
Find AdButler API endpoints by keyword when no specific tool matches what you need. Returns matching endpoints with their HTTP method, path, and a brief summary. Use this when the user asks about a concept that is a *field* rather than a resource — e.g. 'priority', 'pacing', 'frequency cap', 'metadata', 'tracking pixel' — and you can't find a tool that handles it. Then call describe_adbutler_api on the most promising hit, then call_adbutler_api to invoke it.
writetrueunknown
setup_api_key
Configure AdButler with an existing API key. Use this if the user already has an AdButler account and API key.
unknownunknownunknown
resend_verification_code
Resend the email verification code for a trial account. Use this if the user did not receive the code or it expired.
unknownunknownunknown

02Install & source
https://mcp.adbutler.com/mcp
remote_url
https://mcp.adbutler.com/sse
remote_url

03Access granted
Publish a post · writeRead calendar · writeMonitoring & logs · writeQuery a database · destructiveGenerate images · writeManage tasks & tickets · destructiveProcess payments · destructiveUpdate a CRM · writeSchedule a meeting · write

The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.


05Provenance & freshness
sourcesOfficial MCP Registry [p1]
last_checked2026-07-07 02:54Z
next_check2026-07-09 02:41Z
cadenceevery 48h
verifiedtools_list:passed handshake:passed metadata:passed
index_statusindex8 unique facts >= 5

06Badge

Add the “as seen on MCPExplorer” badge to your README. AdButler MCP — as seen on mcpexplorer.com

[![AdButler MCP — as seen on mcpexplorer.com](https://mcpexplorer.com/badge/adbutler.svg)](https://mcpexplorer.com/servers/adbutler)

Next step

This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.

Explore loadouts →