Skip to main content
Glama
AlexStansfield

gtm-mcp-server

GTM MCP Server

서비스 계정 인증을 사용하는 Google Tag Manager용 Model Context Protocol(MCP) 서버입니다. OAuth 절차가 필요 없습니다.

기능

  • OAuth 불필요 - Google 서비스 계정을 사용하여 인증합니다.

  • 핵심 GTM 워크플로우 지원 - 계정, 컨테이너, 작업공간, 태그, 트리거, 변수, 기본 제공 변수, 버전(도구 29개)

  • 로컬 및 프라이빗 - 전적으로 사용자 머신에서 실행됩니다.

  • Claude Desktop, Cursor 및 기타 MCP 클라이언트와 호환

빠른 시작

1. Google Cloud 서비스 계정 만들기

  1. Google Cloud Console로 이동합니다.

  2. 프로젝트를 선택하거나 생성합니다.

  3. Tag Manager API를 사용 설정합니다:

    • APIs 및 서비스 → 라이브러리로 이동

    • "Tag Manager API" 검색

    • 사용 클릭

  4. 서비스 계정을 생성합니다:

    • IAM 및 관리자 → 서비스 계정으로 이동

    • "서비스 계정 만들기" 클릭

    • 이름을 지정합니다(예: "gtm-mcp-server")

    • 만들기 및 계속 클릭(선택 권한은 건너뜀)

    • 완료 클릭

  5. 키를 생성합니다:

    • 새 서비스 계정 클릭

    • 키 탭으로 이동

    • 키 추가 → 새 키 만들기 → JSON

    • 다운로드한 JSON 파일을 안전한 곳에 저장합니다(예: ~/.config/gtm-service-account.json)

2. 서비스 계정에 GTM 액세스 권한 부여

  1. Google Tag Manager로 이동합니다.

  2. 관리(톱니바퀴 아이콘) 클릭

  3. 계정 아래에서 "사용자 관리" 클릭

    • 버튼을 클릭하여 사용자를 추가합니다.

  4. 서비스 계정 이메일을 입력합니다(name@project-id.iam.gserviceaccount.com 형식).

  5. 적절한 권한을 설정합니다:

    • 읽기 - 목록 조회/보기 전용

    • 편집 - 태그, 트리거, 변수 생성/수정용

    • 게시 - 버전 게시용

    • 관리자 - 사용자 관리를 포함한 전체 액세스

3. MCP 클라이언트 구성

Claude Desktop

Claude Desktop 구성(Mac의 경우 ~/Library/Application Support/Claude/claude_desktop_config.json, Windows의 경우 %APPDATA%\Claude\claude_desktop_config.json)에 추가합니다:

{
  "mcpServers": {
    "gtm": {
      "command": "npx",
      "args": ["-y", "gtm-mcp-server"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account.json"
      }
    }
  }
}

Cursor

Cursor MCP 설정에 추가합니다:

{
  "mcpServers": {
    "gtm": {
      "command": "npx",
      "args": ["-y", "gtm-mcp-server"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account.json"
      }
    }
  }
}

4. 클라이언트 다시 시작

구성을 저장한 후 MCP 클라이언트를 다시 시작합니다. GTM 도구가 표시되어야 합니다.

사용 가능한 도구

계정 관리

  • gtm_list_accounts - 액세스 가능한 모든 GTM 계정 나열

컨테이너 관리

  • gtm_list_containers - 계정의 컨테이너 나열

  • gtm_get_container - 컨테이너 세부 정보 가져오기

작업공간 관리

  • gtm_list_workspaces - 컨테이너의 작업공간 나열

  • gtm_create_workspace - 새 작업공간 생성

  • gtm_get_workspace_status - 작업공간의 보류 중인 변경 사항 및 병합 충돌 표시

  • gtm_sync_workspace - 작업공간을 최신 컨테이너 버전으로 동기화

태그 관리

  • gtm_list_tags - 작업공간의 모든 태그 나열

  • gtm_get_tag - 매개변수가 포함된 전체 태그 세부 정보 가져오기

  • gtm_create_tag - 새 태그 생성

  • gtm_update_tag - 기존 태그 업데이트

  • gtm_delete_tag - 태그 삭제

트리거 관리

  • gtm_list_triggers - 작업공간의 모든 트리거 나열

  • gtm_get_trigger - 전체 트리거 세부 정보 가져오기

  • gtm_create_trigger - 새 트리거 생성

  • gtm_update_trigger - 기존 트리거 업데이트

  • gtm_delete_trigger - 트리거 삭제

변수 관리

  • gtm_list_variables - 작업공간의 모든 변수 나열

  • gtm_get_variable - 전체 변수 세부 정보 가져오기

  • gtm_create_variable - 새 변수 생성

  • gtm_update_variable - 기존 변수 업데이트

  • gtm_delete_variable - 변수 삭제

기본 제공 변수 관리

  • gtm_list_built_in_variables - 사용 설정된 기본 제공 변수 나열

  • gtm_enable_built_in_variables - 기본 제공 변수 사용 설정(예: 페이지 URL, 클릭 클래스)

  • gtm_disable_built_in_variables - 기본 제공 변수 사용 중지

버전 관리

  • gtm_list_versions - 컨테이너 버전 나열

  • gtm_get_live_version - 현재 라이브(게시된) 버전 가져오기

  • gtm_create_version - 작업공간에서 버전 생성

  • gtm_publish_version - 버전을 게시하여 라이브로 전환

모든 목록 도구는 한 번에 한 페이지씩 결과를 반환합니다. 더 많은 결과가 있을 경우 응답에 다음 호출에 전달할 page_token이 포함됩니다.

사용 예시

구성이 완료되면 Claude에게 다음과 같이 요청할 수 있습니다:

  • "내 GTM 계정을 나열해 줘"

  • "계정 123456의 모든 컨테이너를 보여 줘"

  • "내 웹사이트 컨테이너에 어떤 태그가 있어?"

  • "'모든 페이지'라는 새 페이지뷰 트리거를 만들어 줘"

  • "모든 페이지에서 실행되는 커스텀 HTML 태그를 만들어 줘"

  • "버전을 만들고 게시해 줘"

문제 해결

"GOOGLE_APPLICATION_CREDENTIALS not set"

환경 변수가 MCP 클라이언트 구성에 설정되어 있고 유효한 JSON 키 파일을 가리키는지 확인하세요.

"Permission denied" 오류

  • 서비스 계정 이메일이 GTM 계정에 추가되었는지 확인

  • 작업에 충분한 권한 수준인지 확인

"API not enabled" 오류

Google Cloud 프로젝트에서 Tag Manager API가 사용 설정되어 있는지 확인하세요.

서버가 Claude Desktop에 표시되지 않음

  • 구성의 경로가 올바른지 확인

  • Claude Desktop의 MCP 로그에서 오류 확인

  • npx gtm-mcp-server를 직접 실행하여 오류 메시지 확인

개발

# Clone the repository
git clone https://github.com/alexstansfield/gtm-mcp-server.git
cd gtm-mcp-server

# Install dependencies
npm install

# Build
npm run build

# Watch mode for development
npm run dev

# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.js

라이선스

MIT

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

Maintenance

Maintainers
Response time
Release cycle
Releases (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 Connectors

  • A Model Context Protocol server for Wix AI tools

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • MCP (Model Context Protocol) server for Appwrite

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/AlexStansfield/gtm-mcp-server'

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