#pabal-web-mcp ๋ฌธ์„œ

ASO(App Store Optimization)์™€ ์›น SEO ๋ฐ์ดํ„ฐ ๊ฐ„ ์–‘๋ฐฉํ–ฅ ๋ณ€ํ™˜์„ ์œ„ํ•œ MCP (Model Context Protocol) ์„œ๋ฒ„.

์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ASO ๋ฐ์ดํ„ฐ๋ฅผ ์›น SEO ์šฉ๋„๋กœ ์›ํ™œํ•˜๊ฒŒ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ฉฐ, ASO ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์›น SEO ์ฝ˜ํ…์ธ ๋กœ ์ง์ ‘ ๋ณ€ํ™˜ํ•˜๊ฑฐ๋‚˜ ๊ทธ ๋ฐ˜๋Œ€๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. App Store Connect ๋ฐ Google Play Console์˜ ASO ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™๊ธฐํ™”๋œ ์›น์‚ฌ์ดํŠธ๋ฅผ ๊ตฌ์ถ•ํ•˜์—ฌ ์•ฑ ์Šคํ† ์–ด ๋ชฉ๋ก๊ณผ ์›น ํ”„๋ ˆ์  ์Šค๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ๋™๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ์˜ˆ์ œ: ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ตฌ์ถ•๋œ ์‹ค์ œ ์›น์‚ฌ์ดํŠธ๋ฅผ ํ™•์ธํ•ด๋ณด์„ธ์š”. labs.quartz.best์—์„œ๋Š” ์•ฑ ์Šคํ† ์–ด ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ๋™๊ธฐํ™”๋˜์–ด ์•„๋ฆ„๋‹ต๊ณ  SEO ์ตœ์ ํ™”๋œ ์›น ํ”„๋ ˆ์  ์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

#๐Ÿ› ๏ธ ์„ค์น˜

#์š”๊ตฌ์‚ฌํ•ญ

  • Node.js >= 18
  • pabal-mcp ์„ค์น˜ ๋ฐ ์„ค์ • ํ•„์š”

#๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์„ค์น˜

์›น์‚ฌ์ดํŠธ ํ”„๋กœ์ ํŠธ์— ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•˜์„ธ์š”:

npm install pabal-web-mcp
# ๋˜๋Š”
yarn add pabal-web-mcp
# ๋˜๋Š”
pnpm add pabal-web-mcp

#MCP ํด๋ผ์ด์–ธํŠธ ์„ค์ •

์ฐธ๊ณ : mcp-appstore ์„œ๋ฒ„๋Š” ํ‚ค์›Œ๋“œ ์—ฐ๊ตฌ ๊ธฐ๋Šฅ์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ์˜์กด์„ฑ์„ ์„ค์น˜ํ•˜์„ธ์š”: cd external-tools/mcp-appstore && npm install

#Cursor์— ์„ค์น˜

~/.cursor/mcp.json (์ „์—ญ) ๋˜๋Š” ํ”„๋กœ์ ํŠธ .cursor/mcp.json์— ์ถ”๊ฐ€:

{
  "mcpServers": {
    "pabal-web-mcp": {
      "command": "npx",
      "args": ["-y", "pabal-web-mcp"]
    },
    "mcp-appstore": {
      "command": "node",
      "args": [
        "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"
      ],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

์ „์—ญ ์„ค์น˜์ธ ๊ฒฝ์šฐ:

{
  "mcpServers": {
    "pabal-web-mcp": {
      "command": "pabal-web-mcp"
    },
    "mcp-appstore": {
      "command": "node",
      "args": [
        "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"
      ],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

#VS Code์— ์„ค์น˜

settings.json MCP ์„น์…˜ ์˜ˆ์‹œ:

"mcp": {
  "servers": {
    "pabal-web-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "pabal-web-mcp"]
    },
    "mcp-appstore": {
      "type": "stdio",
      "command": "node",
      "args": ["/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

์ „์—ญ ์„ค์น˜์ธ ๊ฒฝ์šฐ:

"mcp": {
  "servers": {
    "pabal-web-mcp": {
      "type": "stdio",
      "command": "pabal-web-mcp"
    },
    "mcp-appstore": {
      "type": "stdio",
      "command": "node",
      "args": ["/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

#Claude Code์— ์„ค์น˜

[!TIP] ์ž์„ธํ•œ ์„ค์ • ์˜ต์…˜์€ ๊ณต์‹ Claude Code MCP ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Claude Code MCP ์„ค์ •์— ์ถ”๊ฐ€ (JSON ํ˜•์‹):

{
  "mcpServers": {
    "pabal-web-mcp": {
      "command": "npx",
      "args": ["-y", "pabal-web-mcp"]
    },
    "mcp-appstore": {
      "command": "node",
      "args": [
        "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"
      ],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

์ „์—ญ ์„ค์น˜์ธ ๊ฒฝ์šฐ:

{
  "mcpServers": {
    "pabal-web-mcp": {
      "command": "pabal-web-mcp"
    },
    "mcp-appstore": {
      "command": "node",
      "args": [
        "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"
      ],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

#Windsurf์— ์„ค์น˜

{
  "mcpServers": {
    "pabal-web-mcp": {
      "command": "npx",
      "args": ["-y", "pabal-web-mcp"]
    },
    "mcp-appstore": {
      "command": "node",
      "args": [
        "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore/server.js"
      ],
      "cwd": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web-mcp/external-tools/mcp-appstore"
    }
  }
}

#๐Ÿ” ์ธ์ฆ ์ •๋ณด ์„ค์ •

pabal-web-mcp๋Š” pabal-mcp์˜ ์„ค์ • ํŒŒ์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ธ์ฆ ์„ค์ • ๋ฐฉ๋ฒ•(App Store Connect API ํ‚ค, Google Play ์„œ๋น„์Šค ๊ณ„์ • ๋“ฑ)์€ pabal-mcp README๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

#โš ๏ธ ์ค‘์š”: dataDir ๊ฒฝ๋กœ ์„ค์ •

~/.config/pabal-mcp/config.json์—์„œ dataDir์„ ๋กœ์ปฌ ๋จธ์‹ ์— ์ €์žฅ๋œ pabal-web ํ”„๋กœ์ ํŠธ์˜ ์ ˆ๋Œ€ ๊ฒฝ๋กœ๋กœ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

{
  "dataDir": "/์ ˆ๋Œ€๊ฒฝ๋กœ/TO/pabal-web",
  "appStore": {
    "issuerId": "xxxx",
    "keyId": "xxxx",
    "privateKeyPath": "./app-store-key.p8"
  },
  "googlePlay": {
    "serviceAccountKeyPath": "./google-play-service-account.json"
  }
}

์˜ˆ์‹œ:

  • macOS: "/Users/username/projects/pabal-web"
  • Linux: "/home/username/projects/pabal-web"
  • Windows: "C:\\Users\\username\\projects\\pabal-web"

#MCP ์„œ๋ฒ„

์ด ํŒจํ‚ค์ง€๋Š” Claude ๋˜๋Š” ๊ธฐํƒ€ MCP ํ˜ธํ™˜ ํด๋ผ์ด์–ธํŠธ๋ฅผ ํ†ตํ•ด ASO ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” MCP ์„œ๋ฒ„๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

#์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํˆด

ํˆด์„ค๋ช…
aso-to-publicASO ๋ฐ์ดํ„ฐ๋ฅผ public config ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜
public-to-asopublic config๋ฅผ ASO ๋ฐ์ดํ„ฐ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜
keyword-researchASO ํ‚ค์›Œ๋“œ ์—ฐ๊ตฌ ๊ณ„ํš/์ €์žฅ (.aso/keywordResearch)
improve-publicAI ์ œ์•ˆ์œผ๋กœ ์ œํ’ˆ ๋กœ์ผ€์ผ ์ฝ˜ํ…์ธ  ๊ฐœ์„ 
init-project์ƒˆ๋กœ์šด ์ œํ’ˆ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ์ดˆ๊ธฐํ™”
create-blog-htmlBLOG_META ํ—ค๋”๊ฐ€ ์žˆ๋Š” ์ •์  HTML ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ ์ƒ์„ฑ

#์™ธ๋ถ€ ํ‚ค์›Œ๋“œ MCP ์‚ฌ์šฉ (appreply-co/mcp-appstore)

mcp-appstore ์„œ๋ฒ„๋Š” keyword-research ํˆด๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” ํ‚ค์›Œ๋“œ ์—ฐ๊ตฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•˜๋ ค๋ฉด:

  1. ๊ธฐ์กด ํด๋ก ์—์„œ ์˜์กด์„ฑ ์„ค์น˜: cd external-tools/mcp-appstore && npm install
  2. MCP ํด๋ผ์ด์–ธํŠธ์— mcp-appstore ๋“ฑ๋ก (์œ„ ์„ค์ • ์˜ˆ์‹œ ์ฐธ์กฐ)
  3. improve-public ์ „์— ํ‚ค์›Œ๋“œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด keyword-research์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ (.aso/keywordResearch/...์— ์ €์žฅ).

์ฐธ๊ณ : MCP ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ—ˆ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, LLM์ด ํ‚ค์›Œ๋“œ ์—ฐ๊ตฌ ์ „์— ์ด ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์ดํ›„์— ์ค‘์ง€ํ•˜๋„๋ก ํ•˜์„ธ์š”. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ˆ˜๋™์œผ๋กœ ์‹œ์ž‘/์ค‘์ง€ํ•˜์„ธ์š”.

#์ง€์› ๋กœ์ผ€์ผ

๊ฐ ์Šคํ† ์–ด์—์„œ ์ง€์›ํ•˜๋Š” ๋ชจ๋“  ์–ธ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

ํ†ตํ•ฉApp StoreGoogle Play
en-USen-USen-US
ko-KRkoko-KR
ja-JPjaja-JP
zh-CNzh-Hanszh-CN
zh-TWzh-Hantzh-TW
de-DEde-DEde-DE
fr-FRfr-FRfr-FR
es-ESes-ESes-ES
pt-BRpt-BRpt-BR
.........

#๋ผ์ด์„ ์Šค

MIT


#๐ŸŒ Pabal Web

ASO์™€ SEO๋ฅผ ํ•จ๊ป˜ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ์œผ์‹ ๊ฐ€์š”? Pabal Web์„ ํ™•์ธํ•ด๋ณด์„ธ์š”.

Pabal Web

Pabal Web์€ Next.js ๊ธฐ๋ฐ˜ ์›น ์ธํ„ฐํŽ˜์ด์Šค๋กœ, ASO, SEO, Google Search Console ์ธ๋ฑ์‹ฑ ๋“ฑ์„ ํ†ตํ•ฉ ๊ด€๋ฆฌํ•˜๋Š” ์™„์ „ํ•œ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ‘‰ Pabal Web ๋ฐฉ๋ฌธ