Skip to main content
Glama
nicofains1

Agentic Ads

by nicofains1

Agentic Ads

AI 에이전트를 위한 Google AdSense. MCP 서버에 코드 3줄을 추가하세요. 모든 광고 클릭의 70%를 수익으로 가져가세요.

npm version Tests License: MIT MCP Node

라이브 데모 · 빠른 시작 · MCP 도구 · 자가 호스팅


빠른 시작

1단계 — 등록하고 API 키 받기 (30초):

웹 양식 방문: https://agentic-ads-production.up.railway.app/dev/register

또는 API 직접 사용:

curl -X POST https://agentic-ads-production.up.railway.app/api/register \
  -H "Content-Type: application/json" \
  -d '{"name": "My MCP Bot", "email": "me@example.com", "project_description": "A coding assistant that recommends dev tools"}'
# Returns: { "api_key": "aa_dev_...", "mcp_url": "https://agentic-ads-production.up.railway.app/mcp" }

2단계 — MCP 클라이언트 설정에 추가:

{
  "mcpServers": {
    "agentic-ads": {
      "url": "https://agentic-ads-production.up.railway.app/mcp",
      "transport": "http"
    }
  }
}

3단계 — 에이전트에서 search_ads 호출하고 모든 클릭에서 수익 창출:

// In your agent logic — when context is relevant
const ads = await mcp.callTool({
  name: 'search_ads',
  arguments: { query: 'best running shoes for marathon', max_results: 1 }
});

// Report events to get paid
await mcp.callTool({
  name: 'report_event',
  arguments: { ad_id: ads[0].ad_id, event_type: 'impression' }
});
// User clicks → report 'click' → you earn $0.35 on a $0.50 CPC ad

끝입니다. 수익화가 시작됩니다.


Related MCP server: AdKit MCP Server

왜 필요한가

멋진 MCP 서버를 구축했습니다. 사용자들이 좋아합니다. 하지만 돈을 벌지 못하고 있습니다.

agentic-ads는 MCP 생태계에 누락된 수익화 계층입니다. 웹사이트 대신 AI 에이전트를 위한 Google AdSense와 같습니다.

문제

  • 16,000개 이상의 MCP 서버가 존재합니다. 거의 모두 수익화되지 않았습니다.

  • 개발자들은 유용한 도구를 만드는 데 몇 주를 소비하고, 0달러를 법니다.

  • 사용자들이 에이전트에게 제품 추천을 요청 → 에이전트가 웹을 스크래핑 → 브랜드가 그들에게 도달할 수 없습니다.

해결책

MCP 도구를 통해 제공되는 프라이버시를 존중하는 상황별 광고. 개발자는 70% 수익 공유(업계 최고 수준)를 받습니다. 광고주는 AI 에이전트 사용자에게 도달합니다. 모두가 이깁니다.


수익 계산기

예시: MCP 서버가 광고가 적합한 월 10,000건의 쿼리를 처리합니다.

시나리오

월 노출수

CTR

월 클릭수

CPC

귀하의 수익

보수적

10,000

2%

200

$0.50

$70/월

현실적

10,000

5%

500

$0.50

$175/월

강력함

10,000

8%

800

$0.75

$420/월

월 100,000 쿼리, 5% CTR 기준: 월 $1,750의 수동적 수입.

MCP 서버에 코드 3줄을 추가하면 연간 $21,000입니다.


상세 통합 가이드

MCP 개발자용 (수익 창출)

라이브 서버에 연결하고 도구 호출 시작 — 승인 절차 없음, 최소 금액 없음.

// 1. When user asks about products/services
const ads = await mcp.callTool({
  name: 'search_ads',
  arguments: {
    query: 'best running shoes for marathon',
    max_results: 2
  }
});

// 2. Show relevant ad in your response (if it adds value)
// 3. Report impression
await mcp.callTool({
  name: 'report_event',
  arguments: { ad_id: 'ad_xyz', event_type: 'impression' }
});

// 4. If user clicks → report 'click' event
// You earn $0.35 on a $0.50 CPC click (70% revenue share)

광고주용 (AI 사용자에게 도달)

# Create campaign + ad via MCP tools
mcp.callTool({
  name: 'create_campaign',
  arguments: {
    name: 'Q1 Running Shoes',
    total_budget: 500,
    pricing_model: 'cpc',
    bid_amount: 0.50
  }
});

mcp.callTool({
  name: 'create_ad',
  arguments: {
    campaign_id: 1,
    creative_text: 'Ultraboost 24 — 30% off! Free shipping.',
    link_url: 'https://adidas.com/ultraboost',
    keywords: ['running shoes', 'sneakers', 'marathon'],
    category: 'footwear'
  }
});

# Monitor analytics
mcp.callTool({ name: 'get_campaign_analytics', arguments: { campaign_id: 1 } });

작동 방식

┌─────────────┐                    ┌──────────────────┐                    ┌──────────────┐
│  Advertiser  │────────────────────│  Agentic Ads MCP │────────────────────│  Your MCP     │
│  (Brand/API) │  create_campaign   │     Server       │  search_ads        │  Server       │
│              │  create_ad         │                  │  report_event      │               │
│              │  get_analytics     │  - Matching      │  get_guidelines    │  Shows ads    │
└─────────────┘                    │  - Billing       │                    │  to users     │
                                   │  - Auth & Rate   │                    └──────────────┘
                                   │  - Analytics     │
                                   └──────────────────┘

예시 흐름:

  1. 사용자가 에이전트에게 "마라톤용 최고의 러닝화"를 묻습니다.

  2. 에이전트가 search_ads를 호출 → 입찰가 × 관련성으로 순위가 매겨진 관련 광고를 받습니다.

  3. 에이전트가 광고를 자연스럽게 표시: "Ultraboost 24 — $126 (30% 할인) Adidas.com (스폰서)"

  4. 사용자가 클릭 → click 이벤트 보고 → $0.35 수익 (CPC $0.50의 70%)

프라이버시: 사용자 추적 없음, 프로파일링 없음, 쿠키 없음. 오직 상황별 키워드 매칭만.


MCP 개발자들이 좋아하는 이유

1. 업계 최고 수준의 수익 공유

70% 는 개발자에게, 30%는 플랫폼에. 비교:

플랫폼

개발자 몫

agentic-ads

70%

Google AdSense

68%

Amazon Associates

1-10%

제휴 네트워크

5-30%

2. 제로 설정 장벽

  • 계약, 최소 금액, 승인 지연 없음

  • POST /api/register를 통해 몇 초 만에 등록 → API 키 획득

  • 설정에 MCP 서버 1개 추가 → 5분 안에 수익 창출 시작

3. 프라이버시 존중

  • 사용자 추적 또는 프로파일링 없음

  • 쿠키, 브라우저 지문 인식 없음

  • 오직 상황별 키워드 매칭만 (초기 Google AdWords처럼)

  • 사용자의 프라이버시는 그대로 유지

4. 어떤 광고를 표시할지 제어 가능

  • 에이전트가 어떤 광고를 표시할지 (표시한다면) 결정

  • 전체 사용자 컨텍스트는 로컬에 유지 (광고 서버로 전송되지 않음)

  • 관련성 임계값은 사용자手中

  • 사용자가 거부 가능 ("광고 없음")

5. 투명한 분석

  • 실시간 수익 추적

  • 언제, 왜, 얼마를 벌었는지 정확히 확인

  • 블랙박스 알고리즘이나 숨은 수수료 없음


MCP 도구 (총 8개)

개발자용 (소비자 측) — 3개 도구

도구

인증

설명

search_ads

공개

쿼리/키워드/카테고리/지역별로 광고 검색. 관련성 점수와 함께 순위 결과 반환.

report_event

개발자 키

노출/클릭/전환 이벤트 보고. 수익 계산 트리거.

get_ad_guidelines

공개

사용자에게 광고를 자연스럽게 표시하는 방법에 대한 형식 지침 획득.

광고주용 (게시자 측) — 5개 도구

도구

인증

설명

create_campaign

광고주 키

예산, 목표, 가격 모델(CPC/CPM/CPA)로 캠페인 생성.

create_ad

광고주 키

광고 문구, 키워드, 타겟팅, 링크 URL로 광고 생성.

get_campaign_analytics

광고주 키

성과 지표(노출수, 클릭수, 전환수, 지출, ROI) 획득.

update_campaign

광고주 키

캠페인 업데이트 (일시 중지/재개, 예산 조정, 타겟팅 변경).

list_campaigns

광고주 키

요약 통계와 함께 모든 캠페인 나열, 선택적 상태 필터.


가격 모델

지불 방식(광고주) 또는 수익 창출 방식(개발자) 선택:

모델

광고주 지불

개발자 수익 (70%)

청구 시점

CPC (클릭)

클릭당 $0.50

$0.35

사용자가 광고 링크 클릭

CPM (노출)

1,000회 노출당 $5.00

$3.50

사용자에게 광고 표시

CPA (전환)

전환당 $10.00

$7.00

사용자가 작업 완료 (구매, 가입 등)

예산 제어: 총 예산 + 일일 상한 설정. 예산 소진 시 자동 일시 중지.


API 키 받기

report_event 또는 광고주 도구를 호출하려면 API 키가 필요합니다.

옵션 A — 웹 양식 (가장 쉬움):

https://agentic-ads-production.up.railway.app/dev/register 방문하여 세부 정보를 입력하세요. API 키가 즉시 표시됩니다.

옵션 B — API:

curl -X POST https://agentic-ads-production.up.railway.app/api/register \
  -H "Content-Type: application/json" \
  -d '{"name": "My MCP Bot", "email": "me@example.com", "project_description": "A coding assistant"}'

응답:

{
  "developer_id": "...",
  "api_key": "aa_dev_...",
  "mcp_url": "https://agentic-ads-production.up.railway.app/mcp"
}

필드

필수

설명

name

프로젝트 또는 봇 이름

email

연락 이메일

project_description

아니오

MCP 서버에 대한 간단한 설명 (최대 500자)

Authorization 헤더에 api_key 사용: Authorization: Bearer aa_dev_...

Railway에 배포, 영구 저장소 사용: agentic-ads-production.up.railway.app의 라이브 서버는 Railway에서 실행되며 영구 볼륨을 사용합니다 — 데이터는 배포 및 재시작 시에도 보존됩니다. 자체 호스팅하려면 마운트된 볼륨을 가리키는 DATABASE_PATH=/data/ads.db를 사용하세요.


설치

옵션 1: 라이브 서버에 연결 (가장 쉬움)

MCP 클라이언트 설정(Claude Desktop, Cursor, Windsurf 등)에 추가:

{
  "mcpServers": {
    "agentic-ads": {
      "url": "https://agentic-ads-production.up.railway.app/mcp",
      "transport": "http"
    }
  }
}

상태 확인: https://agentic-ads-production.up.railway.app/health

옵션 2: 로컬 stdio (개발)

npm install -g agentic-ads

# Add to MCP config
{
  "mcpServers": {
    "agentic-ads": {
      "command": "npx",
      "args": ["agentic-ads", "--stdio"]
    }
  }
}

옵션 3: 자체 호스팅 (프로덕션)

git clone https://github.com/nicofains1/agentic-ads.git
cd agentic-ads
npm install && npm run build

# Start HTTP server
PORT=19877 npm run start:http

# Or stdio
npm run start:stdio

플래그:

node dist/server.js --http --port 19877 --db ./ads.db

플래그

기본값

설명

--http

HTTP 서버 시작 (기본값은 stdio)

--port N

3000

HTTP 포트

--db PATH

agentic-ads.db

SQLite 데이터베이스 경로

--api-key KEY

stdio 세션 사전 인증

환경 변수:

PORT=19877                     # HTTP server port (alternative to --port)
DATABASE_PATH=/data/ads.db     # SQLite database path (default: agentic-ads.db)
AGENTIC_ADS_API_KEY=aa_dev_... # Developer API key for stdio mode

DB 지속성: DATABASE_PATH를 영구 볼륨의 경로로 설정하세요. 빈 DB로 처음 실행 시 데모 캠페인이 자동 시드됩니다. 전체 배포 가이드는 DEPLOY.md를 참조하세요 (무료 영구 저장소를 위해 Railway 권장).


통합 예제

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json에 추가:

{
  "mcpServers": {
    "agentic-ads": {
      "command": "npx",
      "args": ["agentic-ads", "--stdio"]
    }
  }
}

Cursor / Windsurf

{
  "mcpServers": {
    "agentic-ads": {
      "url": "https://agentic-ads-production.up.railway.app/mcp",
      "transport": "http"
    }
  }
}

사용자 정의 TypeScript 에이전트

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';

const transport = new StdioClientTransport({
  command: 'npx',
  args: ['agentic-ads', '--stdio']
});

const client = new Client({ name: 'my-agent', version: '1.0.0' });
await client.connect(transport);

// Search for ads
const result = await client.callTool({
  name: 'search_ads',
  arguments: {
    query: 'best laptops for coding',
    keywords: ['laptop', 'programming'],
    category: 'electronics',
    max_results: 3
  }
});

console.log(result.content[0].text);
// Returns: { "ads": [ { "ad_id": "...", "creative_text": "...", "relevance_score": 0.87 } ] }

Streamable HTTP 세션 관리

HTTP를 통해 라이브 서버를 호출할 때는 MCP 세션을 수동으로 관리해야 합니다. 다음은 원시 fetch를 사용한 전체 예제입니다:

const BASE = "https://agentic-ads-production.up.railway.app";
const API_KEY = "aa_dev_..."; // from /api/register

const headers = {
  "Content-Type": "application/json",
  "Accept": "application/json, text/event-stream",
  "Authorization": `Bearer ${API_KEY}`,
};

// 1. Initialize — get a session ID
const initRes = await fetch(`${BASE}/mcp`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    jsonrpc: "2.0", id: 1, method: "initialize",
    params: {
      protocolVersion: "2024-11-05",
      capabilities: {},
      clientInfo: { name: "my-agent", version: "1.0.0" },
    },
  }),
});
const sessionId = initRes.headers.get("mcp-session-id");

// 2. Send initialized notification (required by MCP spec)
await fetch(`${BASE}/mcp`, {
  method: "POST",
  headers: { ...headers, "mcp-session-id": sessionId },
  body: JSON.stringify({
    jsonrpc: "2.0", method: "notifications/initialized", params: {},
  }),
});

// 3. Call tools — pass session ID on every request
const res = await fetch(`${BASE}/mcp`, {
  method: "POST",
  headers: { ...headers, "mcp-session-id": sessionId },
  body: JSON.stringify({
    jsonrpc: "2.0", id: 2, method: "tools/call",
    params: { name: "search_ads", arguments: { query: "running shoes", max_results: 2 } },
  }),
});

// 4. Parse response (SSE format: "event: message\ndata: {...}")
const text = await res.text();
const dataLine = text.split("\n").find((l) => l.startsWith("data:"));
const result = JSON.parse(dataLine.slice(5));
console.log(result.result.content[0].text);

핵심 사항:

  • mcp-session-id 헤더는 initialize에서 반환되며 모든 후속 요청에 전송되어야 합니다.

  • 인증(Authorization: Bearer ...)은 세션별로 설정됩니다 — 해당 세션의 모든 도구 호출이 이를 상속합니다.

  • 서버는 SSE(Server-Sent Events) 형식을 사용합니다 — 응답에서 data: 줄을 파싱하세요.

  • 전체 작동 예제는 examples/demo-mcp-server를 참조하세요.


아키텍처

┌─────────────────────────────────────────────────────────────┐
│  MCP Server (Node.js 22 + TypeScript)                       │
│  ┌───────────────┐  ┌──────────────┐  ┌─────────────────┐  │
│  │ Tool Registry │  │ Auth & Rate  │  │ Matching Engine │  │
│  │ (8 tools)     │  │ Limiting     │  │ (relevance²     │  │
│  │               │  │ (SHA-256)    │  │ × bid × quality)│  │
│  └───────────────┘  └──────────────┘  └─────────────────┘  │
│  ┌───────────────┐  ┌──────────────┐  ┌─────────────────┐  │
│  │ SQLite (WAL)  │  │ Revenue      │  │ Analytics       │  │
│  │ - Campaigns   │  │ Split Engine │  │ (real-time)     │  │
│  │ - Ads         │  │ (70/30)      │  │                 │  │
│  │ - Events      │  │              │  │                 │  │
│  └───────────────┘  └──────────────┘  └─────────────────┘  │
└─────────────────────────────────────────────────────────────┘
          │                                          │
          │                                          │
  Streamable HTTP (remote)                     stdio (local)

주요 기능:

  • 프라이버시: 사용자 추적 없음, 상황별 매칭만

  • 관련성: score = relevance² × bidFactor × quality_score (관련성이 지배적)

  • 원자성: 단일 SQLite 트랜잭션에서 이벤트 삽입 + 통계 업데이트 + 수익 분할

  • 속도 제한: 키당 슬라이딩 윈도우 (도구에 따라 60-120 req/min)

  • 인증: SHA-256 해시 API 키, 역할 기반 접근 제어

  • 테스트: 13개 파일에 걸쳐 270개 테스트, 모두 통과


데모: 전체 흐름

# Clone repo
git clone https://github.com/nicofains1/agentic-ads.git
cd agentic-ads

# Install + build
npm install && npm run build

# Seed a local DB with demo data (generates real API keys)
tsx scripts/seed.ts --db test.db
# Note: seed.ts prints the generated dev/adv keys — use them below

# Run smoke test with real keys from seed output
tsx scripts/smoke-test.ts --db test.db --dev-key aa_dev_... --adv-key aa_adv_...

출력:

✅ Created advertiser: Adidas
✅ Created campaign: Q1 Running Shoes ($500 budget, CPC $0.50)
✅ Created ad: "Ultraboost 24 — 30% off!"
✅ Created developer: TestBot
✅ Searched ads for "running shoes" → 1 result (relevance 0.95)
✅ Reported impression → $0.00 charged (CPC model)
✅ Reported click → $0.50 charged, developer earned $0.35
✅ Analytics: 1 impression, 1 click, $0.50 spent, $0.35 developer revenue

개발자 지급 방식

MCP 서버가 CPC 광고의 클릭 이벤트를 보고하면, 입찰가의 70%가 귀하에게 지급됩니다 — 데이터베이스에서 원자적으로 추적됩니다. 잔액이 $10에 도달하면 payouts@agentic-ads.com으로 developer_id와 선호하는 지급 방식(PayPal 또는 Polygon의 USDC)을 이메일로 보내주세요. 잔액을 확인하고 5영업일 이내에 지급을 보냅니다. 네트워크가 확장되면 자동화된 Stripe 지급이 로드맵에 있습니다.


FAQ

개발자용

Q: API 키는 어떻게 받나요? A: REST 엔드포인트를 통해 등록:

curl -X POST https://agentic-ads-production.up.railway.app/api/register \
  -H "Content-Type: application/json" \
  -d '{"name": "Your Name", "email": "you@example.com"}'
# Returns: { "developer_id": "...", "api_key": "aa_dev_...", "mcp_url": "..." }

반환된 api_key를 MCP 요청에서 Authorization: Bearer aa_dev_...로 사용하세요.

Q: 광고를 반드시 표시해야 하나요? A: 아니요. 어떤 광고를 표시할지 제어할 수 있습니다. 사용자에게 진정한 가치를 더하는 경우에만 광고를 표시하세요. 에이전트 자율성은 기능입니다.

Q: 사용자가 광고를 싫어하면 어떻게 하나요? A: get_ad_guidelines의 지침을 따르세요: 응답당 최대 1-2개 광고, 항상 "스폰서" 공개, 거부("광고 없음") 존중.

Q: 프로덕션 준비가 되었나요? A: 네. 270개의 통과 테스트, https://agentic-ads-production.up.railway.app에서 라이브, MIT 라이선스.

Q: 어떤 MCP 클라이언트를 지원하나요? A: stdio 또는 Streamable HTTP를 지원하는 모든 MCP 클라이언트. Claude Desktop, Cursor, Windsurf, 사용자 정의 에이전트에서 테스트 완료.

광고주용

Q: 광고는 어떻게 만드나요? A: 광고주 API 키와 함께 create_campaigncreate_ad MCP 도구를 사용하세요. 예제는 smoke-test.ts를 참조하세요.

Q: 예산은 어떻게 보호되나요? A: 예산 추적은 원자적입니다(SQLite 트랜잭션). 예산 소진 시 캠페인이 자동 일시 중지됩니다. 초과 지출 없음.

Q: 전환을 추적할 수 있나요? A: 네, CPA 가격 모델 + event_type: 'conversion'과 함께 report_event를 사용하세요. 기여 분석을 위해 링크 URL에 UTM 매개변수를 추가하세요.

Q: 어떤 타겟팅 옵션이 있나요? A: MVP는 키워드(정확히 일치 + 부분 일치), 카테고리, 지역(국가 수준), 언어를 지원합니다. 의미 기반 매칭은 2단계에서 추가됩니다.

일반

Q: 사용자를 추적하나요? A: 아니요. 에이전트로부터 익명화된 키워드 쿼리만 수신합니다. 사용자 ID, 쿠키, 프로파일링은 없습니다. 프라이버시 우선입니다.

Q: 어떻게 사기를 방지하나요? A: MVP는 API 키 인증, 속도 제한, 신뢰 기반 신고를 사용합니다. 2단계에서는 이상 탐지 휴리스틱이 추가됩니다(issue #47 참조).

Q: 오픈 소스인가요? A: 네, MIT 라이선스입니다. 포크, 자체 호스팅, 기여가 가능합니다.


로드맵

  • MVP — 8개의 MCP 도구, 키워드 매칭, 결제, 인증, 270개의 테스트

  • 배포 완료https://agentic-ads-production.up.railway.app에서 운영 중

  • 마켓플레이스 등록 — Anthropic Registry, Smithery, Glama, PulseMCP에 제출 (1주차)

  • 대시보드 REST API — 광고주/개발자용 웹 UI (#40)

  • 사기 탐지 — 이상 휴리스틱 (#47)

  • 의미 기반 매칭 — 임베딩 기반 관련성 (2단계)

  • A/B 테스팅 — 광고 크리에이티브 변형 (#41)

  • Stripe 지급 — 자동화된 개발자 지급 (3단계)


기여하기

GitHub Issues 워크플로우를 따릅니다:

  1. 아이디어에 대한 이슈가 이미 존재하는지 확인

  2. 없다면: gh issue create --title "아이디어"

  3. 작업 시작 전 승인받기

  4. 브랜치: feature/#N-설명

  5. 커밋: feat(#N): 설명

  6. main으로 PR 보내기

자세한 가이드라인은 CLAUDE.md를 참조하세요.


문서


지원


라이선스

MIT — 자세한 내용은 LICENSE를 참조하세요.


이것이 중요한 이유

AI 에이전트가 웹을 집어삼키고 있습니다. 사용자는 Google을 검색하는 대신 에이전트에게 묻습니다. 에이전트는 웹사이트 대신 답변합니다.

과거의 인터넷: 사용자가 웹사이트를 탐색 → 광고를 봄 → 광고주가 사용자에게 도달.

새로운 인터넷: 사용자가 에이전트에게 질문 → 에이전트가 웹사이트를 스크래핑 → 광고주가 사용자에게 도달할 수 없음.

agentic-ads가 이를 해결합니다. 에이전트 경제를 위한 광고 레이어입니다.

그리고 MCP 개발자 여러분은 중개자 역할로 수익의 70%를 얻습니다.

기회: 16,000개 이상의 MCP 서버 중 거의 수익화되지 않았습니다. 여러분이 첫 번째가 될 수 있습니다.


제작 도구: Model Context Protocol (MCP) — AI 에이전트를 도구에 연결하는 개방형 표준

라이브 데모: https://agentic-ads-production.up.railway.app

시작하기: MCP 서버를 설정에 추가하고, 이번 주에 첫 수익을 올리세요.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
3hResponse time
Release cycle
1Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Monetize any MCP server: x402 paywall, pay-per-call billing in USDC on Base, agent marketplace.

  • MCP server connecting AI agents to non-custodial staking data across 130+ networks.

  • Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nicofains1/agentic-ads'

If you have feedback or need assistance with the MCP directory API, please join our Discord server