Skip to main content
Glama
Happygallo

apple-ads-mcp

by Happygallo

AI에게 이렇게 물어보세요:

"지난주 내 캠페인 실적은 어땠어?" "브랜드 캠페인을 일시중지하고 디스커버리 예산을 $500로 늘려줘." "내 광고를 트리거하는 검색어는 무엇인가요? 가장 좋은 검색어를 정확히 일치 키워드로 추가해줘."

54개의 도구, 3개의 리소스, 6개의 프롬프트 지원 — 캠페인, 광고 그룹, 키워드, 크리에이티브, 예산, 검색어, 지역 타겟팅, 노출 점유율, 실적 보고서.

주요 기능 한눈에 보기

기능

설명

캠페인 관리

캠페인 및 광고 그룹 생성, 업데이트, 일시중지, 삭제

키워드 최적화

타겟팅 및 부정 키워드 추가/제거, 입찰가 업데이트

실적 보고

날짜 프리셋이 포함된 캠페인, 광고 그룹, 키워드, 광고, 지역 보고서

검색어 분석

광고를 트리거한 실제 검색 쿼리 확인

크리에이티브 관리

광고, 크리에이티브, 제품 페이지 관리

예산 관리

예산 오더 생성 및 관리, 활용도 분석

노출 점유율

맞춤 노출 점유율 보고서 생성 및 조회

다중 조직 지원

런타임 중 조직 간 전환


빠른 시작

  1. Apple 자격 증명 받기 (약 10분, 1회)

  2. 키 페어 생성 (명령어 2개)

  3. MCP 클라이언트에 추가

  4. 대화 시작


Related MCP server: google-ads-mcp

설정

1단계 — API 사용자 초대

searchads.apple.com에서 계정 관리자가 수행합니다.

  1. 설정사용자 관리사용자 초대로 이동

  2. API를 사용할 사람의 이메일 입력

  3. 역할 설정:

    • API 계정 관리자 — 전체 읽기/쓰기 권한

    • API 계정 읽기 전용 — 보기 전용 권한

  4. 초대장 전송

API 사용자는 관리자와 다른 Apple ID여야 합니다. 관리자라면 두 번째 Apple ID를 사용하세요.

2단계 — 자격 증명 수락 및 복사

초대받은 사용자가 수행합니다.

  1. 이메일 초대를 수락하고 searchads.apple.com에 로그인

  2. 설정API 탭으로 이동

  3. 다음 세 가지 값을 복사하여 저장:

    • clientIdSEARCHADS.로 시작

    • teamIdSEARCHADS.로 시작

    • keyId — UUID

3단계 — 키 페어 생성

터미널을 열고 실행:

openssl ecparam -genkey -name prime256v1 -noout -out ~/apple-ads-key.pem && \
openssl pkcs8 -topk8 -nocrypt -in ~/apple-ads-key.pem -out ~/apple-ads-key-pkcs8.pem

그런 다음 공개 키 생성:

openssl ec -in ~/apple-ads-key-pkcs8.pem -pubout -out ~/apple-ads-key-public.pem

다음 파일이 생성됩니다:

  • ~/apple-ads-key-pkcs8.pem — 개인 키 (안전하게 보관, 구성에 사용)

  • ~/apple-ads-key-public.pem — 공개 키 (다음 단계에서 Apple에 업로드)

4단계 — Apple에 공개 키 업로드

공개 키 출력:

cat ~/apple-ads-key-public.pem

전체 출력(BEGIN / END 줄 포함)을 복사한 후:

  1. searchads.apple.com에서 설정API 탭으로 이동

  2. 공개 키 필드에 붙여넣기

  3. 저장

5단계 — MCP 클라이언트에 추가

아래에서 클라이언트를 선택하고 2단계의 clientId, teamId, keyId와 3단계의 개인 키 전체 경로를 입력하세요.

조직이 여러 개인가요? ASA_ORG_ID를 생략하고 런타임에서 list_organizations / switch_organization을 사용하세요. 또는 env에 설정하여 기본값을 지정할 수 있습니다.


클라이언트

~/Library/Application Support/Claude/claude_desktop_config.json 편집:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

저장 후 Claude Desktop을 다시 시작하세요.

claude mcp add apple-ads \
  -e ASA_CLIENT_ID=SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_TEAM_ID=SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_KEY_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_PRIVATE_KEY_PATH=/Users/yourname/apple-ads-key-pkcs8.pem \
  -- npx -y apple-ads-mcp

.cursor/mcp.json에 추가:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

settings.json에 추가:

{
  "mcp": {
    "servers": {
      "apple-ads": {
        "command": "npx",
        "args": ["-y", "apple-ads-mcp"],
        "env": {
          "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
        }
      }
    }
  }
}

~/.codeium/windsurf/mcp_config.json에 추가:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

이 서버는 STDIO 전송을 사용합니다. MCP 호환 클라이언트는 다음을 실행하여 연결할 수 있습니다:

npx -y apple-ads-mcp

다음 환경 변수를 설정하세요:

변수

설명

ASA_CLIENT_ID

클라이언트 ID (SEARCHADS.로 시작)

ASA_TEAM_ID

팀 ID (SEARCHADS.로 시작)

ASA_KEY_ID

키 ID (UUID)

ASA_PRIVATE_KEY_PATH

PKCS#8 개인 키의 절대 경로

ASA_ORG_ID

(선택) 기본으로 사용할 조직 ID

ASA_PRIVATE_KEY_PATHASA_PRIVATE_KEY로 바꾸고 PEM 콘텐츠를 줄바꿈에 \n을 사용하여 붙여넣으세요:

"ASA_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\nMIGH...your-key...\n-----END PRIVATE KEY-----"

도구

카테고리

개수

할 수 있는 일

조직

3

조직 목록 및 전환. 사용자 세부 정보 조회.

캠페인

6

캠페인 목록, 생성, 업데이트, 삭제. 실적 보고서 조회.

광고 그룹

6

캠페인 내 광고 그룹 관리. 광고 그룹 보고서 조회.

키워드

11

타겟팅 및 부정 키워드 추가/제거. 입찰가 업데이트. 키워드 보고서.

검색어

1

광고를 탭하기 전에 사람들이 검색한 실제 쿼리 확인.

광고

7

광고 목록, 생성, 업데이트, 삭제. 광고 보고서 및 거부 사유 조회.

크리에이티브

5

크리에이티브 및 제품 페이지 관리.

예산 오더

4

예산 오더 생성, 업데이트, 목록, 세부 정보 조회.

앱 및 지역

5

적격 앱 검색, 적격성 확인, 에셋 찾기, 지역 검색.

지역 실적

1

국가/지역별 실적 분석.

노출 점유율

3

맞춤 노출 점유율 보고서 생성, 목록, 조회.

최적화

2

캠페인 스냅샷 및 예산 활용도 분석.

전체 54개 도구

카테고리

도구

조직

list_organizations, switch_organization, get_me_details

캠페인

list_campaigns, get_campaign_details, create_campaign, update_campaign, delete_campaign, get_campaign_report

광고 그룹

list_ad_groups, get_ad_group, create_ad_group, update_ad_group, delete_ad_group, get_adgroup_report

키워드

get_keyword_report, list_targeting_keywords, get_targeting_keyword, add_targeting_keywords, update_targeting_keywords, delete_targeting_keywords, list_negative_keywords, get_negative_keyword, add_negative_keywords, update_negative_keywords, delete_negative_keywords

검색어

get_search_term_report

광고

list_ads, get_ad, create_ad, update_ad, delete_ad, get_ad_report, find_ad_rejection_reasons

소재

list_creatives, get_creative, create_creative, list_product_pages, get_product_page_by_id

예산 주문

list_budget_orders, get_budget_order, create_budget_order, update_budget_order

앱 및 지역

search_apps, get_app_details, get_app_eligibility, find_app_assets, search_geolocations

지역 실적

get_geo_performance

노출 점유율

create_impression_share_report, get_impression_share_report_by_id, list_impression_share_reports

최적화

get_campaign_snapshot, get_budget_analysis


리소스

서버는 3개의 리소스를 제공합니다:

URI

설명

apple-ads://countries

Apple Search Ads에서 지원되는 국가 및 지역

apple-ads://device-sizes

소재에 대한 앱 미리보기 기기 크기

apple-ads://metrics-glossary

모든 실적 지표에 대한 정의, 공식 및 벤치마크 (CPA, CPT, TTR 등)


프롬프트

일반적인 작업을 안내하는 6개의 내장 워크플로 프롬프트:

프롬프트

설명

campaign_health_check

종합 캠페인 분석 — 지출, 전환, CPA 추세를 검토하고 문제점을 플래그로 표시

keyword_optimization

키워드 및 검색어 최적화 워크플로 — 낭비되는 지출과 새로운 기회를 발견

new_campaign_setup

안내형 새 캠페인 생성 — 앱 선택, 구조, 키워드 및 예산 설정을 단계별로 안내

budget_reallocation

캠페인 간 예산 분석 — 과소/과다 지출을 식별하고 예산 이동을 제안

creative_review

소재 A/B 검토 — 광고 실적을 비교하고 거부 사유를 플래그로 표시, 개선안 제안

geo_expansion

지역 확장 분석 — 현재 시장을 순위화하고 진출할 새로운 시장을 식별


"pkcs8 must be PKCS#8 formatted string" 키 형식이 잘못되었습니다. 3단계openssl pkcs8 명령을 다시 실행하세요.

"No organization selected" list_organizations를 사용한 후 switch_organization을 실행하거나, config에 ASA_ORG_ID를 추가하세요.

"Token request failed (401)" clientId, teamId, keyId가 Apple API 탭의 값과 일치하는지 확인하세요. 공개 키를 업로드했는지도 확인하세요.

"Failed to read private key" 절대 경로를 사용하세요 (예: /Users/yourname/...). ~/...와 같은 상대 경로는 사용하지 마세요.

"Server disconnects immediately" 필수 자격 증명이 누락되었습니다. ASA_CLIENT_ID, ASA_TEAM_ID, ASA_KEY_ID, ASA_PRIVATE_KEY_PATH 네 가지가 모두 필요합니다.

git clone https://github.com/javiergalloroca/AppleAdsMCP.git
cd AppleAdsMCP
npm install
npm run build
npm start

핫 리로드를 위해: npm run dev

기여 지침은 CONTRIBUTING.md를 참조하세요.

라이선스

MIT

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

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server that provides tools and resources for interacting with Google Ads API, enabling search, metadata retrieval, and account management through natural language.
    865
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive MCP server for managing and analyzing Meta Ads (Facebook/Instagram) with over 80 natural-language tools for AI agents like Claude Desktop.
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for Meta Ads providing 30 tools for account discovery, campaign management, targeting research, and insights. Designed with LLM-friendly outputs and productivity features like cloning and bulk operations.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server for Appcircle mobile CI/CD platform.

  • Create App Store screenshots, icons, ASO copy, localization, and revisions via hosted MCP.

  • Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.

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/Happygallo/apple-ads-mcp'

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