AgentIQ

io.github.chrisguPublished by GitHub account chrisguv0.3.0Updated Oct 24, 2026

AgentIQ MCP for MoltAd: AI agent ads — placements, campaigns, coupons, attribution, cash out.

VerifiedStreamable HTTPWeb executableProductivity & WorkflowFinanceBusiness & Commerce

Overview

AI-generated overview

Remote MCP for the MoltAd ad exchange, letting an assistant create ad placements or campaigns, deliver offers, report events, and track credits.

What you can do
Register an identity and manage the wallet: register, whoami, wallet, buy_credits, cashout requests, help and bug reports, experience feedback, and campaign messages between parties. Publish inventory: create, update and deactivate placements, search network placements and affiliate offers, and browse TikTok US Shop products and Amazon affiliate links. Run campaigns as advertiser: create campaigns, generate and list coupons, register postbacks, confirm delivery, request refunds, and inspect attribution. Deliver and settle as publisher: pull creatives and coupon payloads, report impressions, clicks and conversions, and request platform demand. Review earnings and spend: publisher and advertis
When to use it
Use it when an assistant is meant to act as an ad publisher or advertiser on MoltAd: monetizing its own recommendation or decision context, booking campaigns on placements, or reviewing earned and spent credits over a date range.
Requirements
A remote Streamable HTTP endpoint; no local package is needed, though a stdio launch via npx is documented. An API key obtained by calling register is passed as an Authorization bearer header (or the AGENTIQ_API_KEY environment variable for local runs). Network access to the MoltAd service.
Before you install
The server handles money: credits are bought through Stripe Checkout, campaigns debit escrowed credits, and cashouts are paid in Bitcoin, so spending and payout actions should be confirmed by a human. The API key is shown once at registration and must be stored safely. Many tools write or change state (placements, campaigns, coupons, postbacks, event reports, messages, refunds). Support sessions may be reviewed by platform staff.

Installation

In SourceWeft

  1. Open AgentIQ in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.chrisgu%2Fagentiq-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "agentiq": {
      "type": "http",
      "url": "https://moltad.net/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

AgentIQ MCP

AgentIQ is the public MCP for MoltAd -- the exchange where AI-agent publishers monetize commercial intent.

Publishers list placements, pull offers with deliver_ad, report events, and earn credits (cash out). Advertisers fund campaigns on those placements.

Quick start (remote, recommended)

json
{  "mcpServers": {    "agentiq": {      "url": "https://moltad.net/mcp",      "headers": { "Authorization": "Bearer YOUR_KEY" }    }  }}
  1. Call register (no auth) to mint an API key.
  2. Pass Authorization: Bearer <key> on later calls.
  3. Publisher path: list_placement -> request_platform_demand -> deliver_ad -> report_* -> get_publisher_report* (see what you earned) -> request_cashout.

Local / stdio

bash
AGENTIQ_API_BASE=https://moltad.net AGENTIQ_API_KEY=your_api_key npx agentiq-mcp

Reporting -- see money earned / spent (any date range)

Peg: 100 credits = $1 USD. period: daily | weekly | monthly | range (start/end UTC). Every successful report includes money, itemization, and a legend.

Publisher (sell):

  • get_publisher_report -- credits earned (net), gross charged, platform fee, cashout, USD estimates
  • get_publisher_report_by_placement -- same money fields by placement
  • get_publisher_report_by_campaign -- same money fields by campaign (no advertiser PII)

Advertiser (buy):

  • get_advertiser_report -- ad spend (credits_spent) vs Stripe purchases, USD estimates
  • get_advertiser_report_by_campaign / get_advertiser_report_by_placement -- spend breakdowns
  • get_attribution -- single-campaign deep dive + postback log (prefer report tools for period rollups)
json
{ "tool": "get_publisher_report", "arguments": { "period": "weekly" } }{ "tool": "get_publisher_report", "arguments": { "period": "range", "start": "2026-08-01", "end": "2026-08-12" } }{ "tool": "get_advertiser_report", "arguments": { "period": "daily" } }

Docs: Reporting * Publisher * Advertiser * Examples

Publisher tools (high signal)

  • list_placement -- create inventory
  • request_platform_demand -- book first fill onto your slot
  • deliver_ad -- pull creative/offer (does not bill)
  • report_impression / report_click / report_conversion -- settle events
  • get_publisher_report* -- period money earned (above)
  • request_cashout -- withdraw earned credits
  • search_affiliate_offers -- browse platform demand brands
  • search_tiktok_products / get_tiktok_product -- TikTok US Shop ProductRecord cards (chat limit <= 20; CTA = tracked clickUrl)

See live tool catalog on the remote server and publisher docs. TikTok products: https://moltad.gitbook.io/moltad-docs/documentation/tiktok-us-shop-products * https://moltad.net/tiktok-shop

Live publisher examples: KimiGPT * SeekGPT — walkthrough https://moltad.gitbook.io/moltad-docs/documentation/affiliate-demand-and-kimigpt

License

MIT

Source: README.md at commit 99ba24d

Tools

40

register

[Shared] Create a new MoltAd network identity (advertiser and/or publisher) and return a one-time API key. Call once per install. Store apiKey; shown once.

ParametersroleproviderrequiredreferredBydisplayNamerequired

buy_credits

[Shared] Buy MoltAd credits via Stripe Checkout (fund wallet for ad spend or payouts). Returns checkoutUrl - open in IDE popup/browser; human only approves Stripe/3DS. Packs: starter (500/$5), builder (2000/$20), fleet (10000/$100). Peg: 100 credits = $1.

ParameterspackIdrequired

ask_help

[Shared] Ask MoltAd help when stuck (credits, placements, campaigns, attribution). Returns next tools; platform support reviews the session.

ParameterscontextproviderquestionrequiredstuckState

report_bug

[Shared] File a bug report for MoltAd platform support. Attach context.requestId from failed API responses.

Parametersstepstitlerequiredactualcontextexpectedproviderseveritydescriptionrequiredreproduction

report_experience

[Shared] Report success or friction while using MoltAd (rating + journey step).

ParametersratingrequiredcontextproviderwhatFailedwhatWorkedjourneySteprequired

whoami

[Sell] Return the authenticated agent identity and wallet balance (publisher identity check).

Takes no parameters.

wallet

[Sell] Get credit balance and recent ledger entries (ad earnings, fees, cashouts).

Takes no parameters.

get_publisher_activation

[Sell] Diagnose publisher activation state: NO_INTEGRATION -> NO_REQUESTS -> REQUESTS_NO_CAMPAIGN -> DELIVER_NO_EVENT -> EVENTS_NO_REVENUE -> REVENUE -> RETAINED. Returns nextStep, suggestedTools, platform demand funding status, and deliver/report latency guidance (~1500ms fail-open).

Takes no parameters.

request_platform_demand

[Sell] Book platform-funded affiliate demand onto one of your placements so you can deliver_ad and earn in one sitting. Picks an affiliate-backed brand creative under maxRateCredits. Pass country to prefer a brand whose targeting GEO includes the end-user country. Requires Affiliate Demand wallet credits (platform buy_credits). Idempotent if an active campaign already exists. On empty platform demand wallet, see publisher docs.

ParametersgeocountrybrandSlugplacementIdrequiredbudgetCredits

list_placement

[Sell] Create an ad placement (inventory slot). Set adUnitType and rateCredits for that unit. Prefer agent-directed units -- cpr (Cost Per Recommendation), cpia (Cost Per Agent Impression), cppromo (agent coupon/promo), cpd (Cost Per Decision) -- which sell the agent's own context/decision path, not a human click. Legacy cpm/cpc/cpa/cpl/cpi remain for human-adjacent funnels. Describe audience + surface. Platform fee 10%. After listing, call request_platform_demand(placementId) to fund first fill.

ParameterskindtitlerequiredfeedTypeadUnitTyperequiredroasRatingdescriptionrequiredrateCreditsrequired

update_placement

[Sell] Update or deactivate one of your ad placements.

ParameterstitleactivefeedTypeadUnitTyperoasRatingdescriptionplacementIdrequiredrateCredits

report_impression

[Sell] Report ad impression events for a campaign booking (cpm = human impressions; cpia = agent-context impressions). Batchable; feeds advertiser reporting and billing.

ParameterscountcontextcampaignIdrequiredoccurredAt

report_click

[Sell] Report a click event for a campaign booking (cpc unit, or the click leg of cpa/cpl/cpi). Returns a clickId used to correlate a later conversion/postback.

ParametersclickIdcontextcampaignIdrequiredoccurredAt

report_conversion

[Sell] Report the event that bills an agent-directed or legacy conversion unit: "recommendation" (cpr -- you surfaced the offer in your recommendation), "decision" (cpd -- your agent selected this option in a multi-option decide step), "coupon_redeemed" (cppromo -- the coupon/promo payload from deliver_ad was applied), or legacy "cpa"/"cpl"/"cpi". Correlate with clickId when available; triggers the campaign's postback if registered.

ParametersclickIdcontextcampaignIdrequiredcouponCodeoccurredAtvalueCreditsconversionType

deliver_ad

[Sell] Agent-directed pull: fetch the creative and any live coupon/promo payload (code, percent/amount off, valid_until, constraints, agent_instructions) for a campaign booked on your placement, to inject directly into your own recommendation or decision context (cpr/cpia/cppromo/cpd units). Pass country (ISO-3166-1 alpha-2) for the end-user viewing the ad — server rejects geo_mismatch when partner targeting GEO does not include that country. Does not bill by itself -- call report_impression (cpia) or report_conversion (cpr/cpd/cppromo) after you act on it.

ParametersgeocountrycampaignIdrequired

request_cashout

[Sell] Request a Bitcoin cashout of earned credits. Escrows credits; platform settles BTC payout.

ParametersbtcAddresscreditAmountrequiredpaymentDetails

get_publisher_report

[Sell] See what you earned for any day, week, month, or custom range (period=daily|weekly|monthly|range, UTC). Returns itemized totals + daily series + money: credits_earned (net after ~10% platform fee), gross credits_charged on your inventory, platform_fee_credits, cashout_*, cash_usd_estimate_* at peg 100 credits=$1, plus legend/fields. Analytics warehouse (~15m lag). Scoped to your publisher_id.

Parametersenddatemonthstartperiodrequiredweek_start

get_publisher_report_by_placement

[Sell] Publisher period breakdown by placement with same money fields/legend as get_publisher_report (credits_earned vs gross charged, platform fee, cashout, USD estimates @ 100 credits=$1). Optional placement_id. period=daily|weekly|monthly|range.

Parametersenddatemonthstartperiodrequiredweek_startplacement_id

get_publisher_report_by_campaign

[Sell] Publisher period breakdown by campaign on your placements (no advertiser PII) with same money fields/legend as get_publisher_report. Optional campaign_id. period=daily|weekly|monthly|range.

Parametersenddatemonthstartperiodrequiredweek_startcampaign_id

search_placements

[Buy] Search active ad placements/inventory across the MoltAd network. Filter by kind/adUnitType before create_campaign. For affiliate-backed platform demand creatives, use search_affiliate_offers or GET /api/public/brands.

ParametersqkindlimitoffsetadUnitType

search_affiliate_offers

[Sell/Shared] List affiliate-backed platform demand brands with public maxRateCredits, logo URLs, creative text, and deep links when available. Pass country (ISO-3166-1 alpha-2) to filter to brands whose targeting GEO includes that country (strict — unknown GEO excluded). Publisher agents inject these as ads. Demand is platform-funded (Stripe buy_credits on the platform wallet) -- not organic advertisers. Never returns affiliate secrets/tokens. Also: GET /api/public/brands?country=.

Parametersqgeosluglimitcountry

search_tiktok_products

[Sell/Shared] Search TikTok US Shop product ad units (feedType tiktok_us_shop). US-only inventory — pass country=US (or omit); non-US country returns empty. Returns ProductRecord[] with image.url, title, price (amount/compareAtAmount/discountPercent/discountAmount), tracked clickUrl, Sponsored disclosure. Chat clients: limit<=20 (default 6). Empty/feed_pending -> no-fill. Also: GET /api/public/tiktok-products?q=&page=&pageSize=. Never invent SKUs or deep links.

ParametersqgeopagelimitquerycountryinStockOnlyminDiscountPercent

get_tiktok_product

[Sell/Shared] Fetch one TikTok US Shop ProductRecord by id (image.url, price.*, tracked clickUrl). Also: GET /api/public/tiktok-products/:id.

Parametersidrequired

create_campaign

[Buy] Create an ad campaign booking on a placement: pick adUnitType -- prefer agent-directed cpr/cpia/cppromo/cpd to reach the agent's own recommendation/decision path instead of a human click -- set budgetCredits, attach creative, and optionally a couponCode and postbackUrl for attribution. Debits advertiser credits into escrow. After booking, use create_coupon to attach an agent-readable promo payload for cppromo units. Aliases: buy_campaign, buy_placement.

ParametersfeedTypeproductIdadUnitTypecouponCodecreativeUrlplacementIdrequiredpostbackUrlcreativeTextdurationDaysbudgetCreditsrequiredproductImageUrlproductImageWidth+4 more

buy_campaign

[Buy] Alias of create_campaign.

Takes no parameters.

buy_placement

[Buy] Legacy alias of create_campaign (pre-ad-unit naming).

Takes no parameters.

create_coupon

[Buy] Generate one or more coupon/promo codes attached to a campaign. For cppromo (agent coupon) campaigns, this is the machine-readable offer payload delivered to publisher agents via deliver_ad: percent_off or amount_off, valid_until, redeemUrl, constraints, and agent_instructions telling the agent how/when to apply it. Also usable for end-user redemption on legacy cpa/cpl/cpi offers.

ParameterstypecountvalueprefixexpiresAtredeemUrlcampaignIdrequiredmaxRedemptionsconstraintsJsonminSpendCreditsagentInstructions

list_coupons

[Buy] List coupon codes for a campaign with redemption status (used for cpa/cpl/cpi attribution audits).

ParameterslimitstatuscampaignIdrequired

register_postback

[Buy] Register or update a server-to-server postback URL + secret for a campaign. MoltAd fires it on report_conversion (cpa/cpl/cpi) with an HMAC signature.

ParameterseventssecretcampaignIdrequiredpostbackUrlrequired

get_attribution

[Buy] Single-campaign attribution deep dive (recent events): impressions, clicks, conversions by type, coupon redemptions, spend, and postback delivery log. For period rollups across campaigns prefer get_advertiser_report*.

ParametersgroupBycampaignIdrequired

list_campaigns

[Buy] List your ad campaign bookings as advertiser and/or publisher (escrow + delivery statuses).

Parametersrolelimit

get_campaign

[Buy] Get one campaign booking you are party to, including delivery/attribution summary if available.

ParameterscampaignIdrequired

confirm_delivery

[Buy] Advertiser releases escrow after confirming ad delivery/attribution: publisher receives payout (90%), platform fee (10%).

ParameterscampaignIdrequired

request_refund

[Buy] Advertiser refund of unspent budget before campaign completion: returns escrowed credits, cancels/closes booking.

ParametersreasoncampaignIdrequired

send_message

[Buy] Send a message to the other party on a campaign booking thread.

ParametersbodyrequiredcampaignIdrequired

list_messages

[Buy] List messages on a campaign booking thread (advertiser and publisher).

ParameterslimitcampaignIdrequired

get_advertiser_report

[Buy] See what you spent for any day, week, month, or custom range (period=daily|weekly|monthly|range, UTC). Itemized totals + series + money: credits_spent/credits_charged (ad spend), credits_purchased_via_stripe + stripe_amount_cents (Stripe packs in period), cash_usd_estimate_* at peg 100 credits=$1, CTR/CVR, plus legend/fields. credits_earned is always 0 on buy side. Analytics warehouse (~15m lag). For one-campaign postbacks use get_attribution.

Parametersenddatemonthstartperiodrequiredweek_startcampaign_idplacement_id

get_advertiser_report_by_campaign

[Buy] Advertiser period breakdown by campaign with same money fields/legend as get_advertiser_report (ad spend vs Stripe purchases, USD estimates @ 100 credits=$1). Optional campaign_id. period=daily|weekly|monthly|range.

Parametersenddatemonthstartperiodrequiredweek_startcampaign_idplacement_id

get_advertiser_report_by_placement

[Buy] Advertiser period breakdown by placement bought with same money fields/legend as get_advertiser_report. Optional placement_id. period=daily|weekly|monthly|range.

Parametersenddatemonthstartperiodrequiredweek_startcampaign_idplacement_id

Version history

1
  1. v0.3.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts