사용자 정의 API 스크립트 대신 로컬 SearchAds Manager 앱을 통해 Codex로 Apple Search Ads 작업을 수행하려면 이 페이지를 이용하세요.
1. macOS 앱 설정
-
Codex
로컬 MCP 서버로 요청을 보냅니다.
-
SearchAds Manager
Mac에서 서버를 실행하고 요청을 처리합니다.
-
Apple Ads
계정 데이터를 반환하거나 승인된 캠페인 작업을 실행합니다.
- macOS에서 SearchAds Manager를 실행하세요.
- 설정을 여세요.
- 일반 Apple Search Ads 자격 증명이 아직 설정되지 않았다면 설정하세요.
- 자동화를 연 다음 Codex MCP 서버 섹션을 찾으세요.
- 서버를 활성화하세요.
- 필요에 따라 포트와 토큰을 확인하거나 변경하세요.
- 서버 설정 적용을 클릭하세요.
아직 자격 증명을 설정하지 않았다면 Apple의 OAuth 가이드인 Apple Search Ads API용 OAuth 구현을 따르세요.
2. Codex에 서버 추가
설정 카드에 실행할 정확한 명령이 표시됩니다. 명령 형식은 다음과 같습니다.
codex mcp add searchads --url "http://127.0.0.1:7717/mcp?token=YOUR_TOKEN"
추가한 후:
- macOS 앱을 계속 실행해 두세요.
- 작업할 저장소에서 새 Codex 세션을 시작하거나, 클라이언트에서 지원한다면 MCP 서버를 다시 연결하세요.
- 수동 API 스크립트 대신
searchads서버를 사용하여 보고 및 쓰기 작업을 수행하세요.
3. 권장 Codex 작업 흐름
adam_id가 필요하면 먼저list_apps를 호출하세요.- 유효한 국가 코드가 필요하면 캠페인 생성 전에
list_supported_countries를 호출하세요. get_campaign_report,get_adgroup_report및get_keyword_report로 변경 전에 성과를 확인하세요.list_campaigns,list_adgroups및list_keywords로 변경 전에 현재 상태를 확인하세요.- 생성 작업에는
create_campaigns,add_adgroups및add_keywords를 사용하세요. update_campaigns,update_adgroups및update_keywords로 범위를 정해 수정하세요.delete_campaigns,delete_adgroups및delete_keywords는 명시적으로 삭제하여 정리할 때만 사용하세요.- 실패를 쉽게 검토할 수 있도록 쓰기 작업은 작고 명확한 묶음으로 나누어 수행하세요.
4. 문제 해결
- Codex가 연결하지 못하면 macOS 앱이 열려 있고 서버 상태가 실행 중인지 확인하세요.
- 도구 호출이 구성 오류로 실패하면 앱 설정에서 Apple Search Ads 자격 증명을 다시 확인하세요.
- 토큰을 다시 생성하거나 포트를 변경하면 새 URL로
codex mcp add ...를 다시 실행하세요.
5. 일회성 스모크 테스트 프롬프트
선택 사항인 스모크 테스트 프롬프트 보기
아래 프롬프트를 같은 Codex 세션에서 실행하면 생성된 테스트 ID를 기억할 수 있습니다.
mcp-smoke-... 같은 일회성 이름 접두사를 사용하고 마지막에 모두 삭제하세요. 새 테스트 항목은 대개 보고서의 지표가 0이지만, 이것으로도 MCP 보고 경로가 작동하는지 확인할 수 있습니다.
검색 프롬프트
`searchads` MCP 서버만 사용하여 MCP 기본 동작 테스트 환경을 준비해 주세요.
1. 임시 테스트 캠페인에 안전하게 사용할 수 있는 제 소유의 앱을 찾아 주세요. "Monitor and Manage Search Ads"와 일치하는 앱을 우선 선택하고, 없으면 제 소유의 앱 중 처음 5개를 나열한 뒤 하나를 선택해 주세요.
2. `list_supported_countries`를 호출하고 `US`가 지원되면 선택해 주세요. 지원되지 않으면 지원되는 국가 하나를 선택하고 어떤 국가 코드를 선택했는지 알려 주세요.
3. 이름이 `mcp-smoke-`로 시작하는 캠페인을 대상으로 `list_campaigns`를 호출해 주세요.
4. 선택한 `adam_id`, 국가 코드, `mcp-smoke-YYYYMMDD-HHMMSS` 형식의 고유한 테스트 접두사를 알려 주세요.
5. 아직 아무것도 만들지 마세요.
캠페인 생성 프롬프트
`searchads` MCP 서버만 사용하여 앞서 선택한 앱과 국가에 대해 `<PREFIX>-campaign`이라는 이름의 일시 정지된 임시 테스트 캠페인 하나를 만들어 주세요.
다음을 사용해 주세요.
- 선택한 `adam_id`
- 국가 코드 하나
- `daily_budget_amount` 값 5
- `currency` 값 `USD`
생성 후 테스트 접두사로 `list_campaigns`를 호출하고 새 `campaign_id`를 반환해 주세요.
캠페인 보고 및 업데이트 프롬프트
`searchads` MCP 서버만 사용해 주세요.
1. `<CAMPAIGN_ID>`에 대해 `days: 0`으로 `get_campaign_report`를 호출해 주세요.
2. `update_campaigns`로 해당 캠페인을 업데이트하여 일일 예산을 6 USD로, 상태를 `ENABLED`로 변경해 주세요.
3. 테스트 접두사로 `list_campaigns`를 다시 호출해 주세요.
4. 업데이트 전후의 캠페인 상태를 요약해 주세요.
광고 그룹 추가 프롬프트
`searchads` MCP 서버만 사용하여 `<CAMPAIGN_ID>`에 일시 정지된 광고 그룹 두 개를 추가해 주세요.
1. `<PREFIX>-ag-1`
2. `<PREFIX>-ag-2`
다음을 사용해 주세요.
- `default_bid_amount` 값 1
- `currency` 값 `USD`
- `automated_keywords_opt_in` 값 false
생성 후 해당 캠페인에 대해 `list_adgroups`를 호출하고 두 `ad_group_id` 값을 모두 반환해 주세요.
광고 그룹 보고 및 업데이트 프롬프트
`searchads` MCP 서버만 사용해 주세요.
1. `<CAMPAIGN_ID>`에 대해 `days: 0`으로 `get_adgroup_report`를 호출해 주세요.
2. `update_adgroups`로 `<PREFIX>-ag-1`을 업데이트하여 상태를 `ENABLED`로, `default_bid_amount`를 1.2 USD로, `cpa_goal_amount`를 4 USD로 변경해 주세요.
3. `<CAMPAIGN_ID>`에 대해 `list_adgroups`를 다시 호출해 주세요.
4. 업데이트된 광고 그룹을 요약하고 해당 `ad_group_id`를 반환해 주세요.
키워드 추가 프롬프트
`searchads` MCP 서버만 사용하여 하나의 `keyword_set`으로 `<CAMPAIGN_ID>` 내의 `<AD_GROUP_ID>`에 키워드를 추가해 주세요.
다음을 사용해 주세요.
- `default_bid_amount` 값 0.8
- `default_currency` 값 `USD`
다음 키워드를 추가해 주세요.
1. `<PREFIX> exact`: `match_type`은 `EXACT`, `status`는 `ACTIVE`
2. `<PREFIX> broad`: `match_type`은 `BROAD`, `status`는 `ACTIVE`
생성 후 `<CAMPAIGN_ID>`와 `<AD_GROUP_ID>`에 대해 `list_keywords`를 호출하고 생성된 `keyword_id` 값을 반환해 주세요.
키워드 보고 및 업데이트 프롬프트
`searchads` MCP 서버만 사용해 주세요.
1. `<CAMPAIGN_ID>`와 `ad_group_ids: [<AD_GROUP_ID>]`에 대해 `days: 0`으로 `get_keyword_report`를 호출해 주세요.
2. `update_keywords`로 EXACT 키워드를 업데이트하여 입찰가를 0.9 USD로, 상태를 `PAUSED`로 변경해 주세요.
3. `<CAMPAIGN_ID>`와 `<AD_GROUP_ID>`에 대해 `list_keywords`를 다시 호출해 주세요.
4. 업데이트된 키워드를 요약하고 두 키워드의 현재 행 데이터를 모두 반환해 주세요.
정리 프롬프트
`searchads` MCP 서버만 사용하여 MCP 기본 동작 테스트 데이터를 정리해 주세요.
1. `delete_keywords`로 `<AD_GROUP_ID>`의 모든 테스트 키워드를 삭제해 주세요.
2. `<CAMPAIGN_ID>`와 `<AD_GROUP_ID>`에 대해 `list_keywords`를 호출하여 키워드가 삭제되었는지 확인해 주세요.
3. `delete_adgroups`로 테스트 광고 그룹 두 개를 모두 삭제해 주세요.
4. `<CAMPAIGN_ID>`에 대해 `list_adgroups`를 호출하여 광고 그룹이 삭제되었는지 확인해 주세요.
5. `delete_campaigns`로 테스트 캠페인을 삭제해 주세요.
6. 테스트 접두사로 `list_campaigns`를 호출하여 캠페인이 삭제되었는지 확인해 주세요.
7. 정리 결과를 요약해 주세요.