Token导航 LogoToken导航TokenDH.com
App Store Scraper MCP logo
运维云端stdio官方级别未说明来源级核验

App Store Scraper MCP

MCP Server

一个提供苹果App Store和Google Play商店数据抓取功能的MCP服务器,支持21种工具,无需认证即可访问公开数据。

工具数

21

提示词数

0

GitHub Stars

0

资源数

0
数据抓取TypeScriptClaudeClaude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

guiguito

提供方

guiguito

最后核验

2026/5/17 20:22

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -p 3000:3000 app-store-scraper-mcp

详细介绍

应用商店抓取器MCP服务器

MCP(模型上下文协议)服务器,将Apple App Store和Google Play Store的抓取功能作为21种工具公开。将其连接到任何兼容MCP的客户端(Claude Desktop、Cursor等),让LLM搜索、浏览和分析来自两个商店的移动应用程序。

特性

  • 21个只读工具 涵盖苹果应用商店(10个工具)和谷歌应用商店(11个工具)
  • 双重运输:stdio(用于本地MCP客户端)和Streamable HTTP(用于远程访问)
  • 不要求进行验证 --所有数据在商店里都是公开的
  • Docker就绪 采用多阶段生产构建
  • 完整记录 带有Zod验证、枚举描述和内联示例的工具模式

快速开始

先决条件

  • Node.js>=18

安装和构建

npm install
npm run build

标准运输 (默认值——适用于Claude Desktop、Cursor等):

npm start

HTTP传输 (远程/网络访问):

node dist/index.js --http
# or
TRANSPORT=http npm start

HTTP服务器侦听 http://localhost:3000/mcp 默认情况下。设置 PORT 要更改它的环境变量:

PORT=8080 node dist/index.js --http

开发模式 (自动重新加载):

npm run dev

客户端配置

克劳德桌面/光标(stdio)

添加到MCP客户端配置中:

{
  "mcpServers": {
    "app-store-scraper": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"]
    }
  }
}

远程HTTP客户端

将您的MCP客户端指向:

http://localhost:3000/mcp

请求必须包含标题:

Accept: application/json, text/event-stream

超文本传输安全协议

服务器本身讲简单的HTTP——TLS终止由它前面的反向代理处理。这是标准的生产模式,并将证书管理与应用程序代码分开。

卡迪 (最简单的--自动Let’s Encrypt证书):

# Caddyfile
mcp.example.com {
    reverse_proxy localhost:3000
}

奔跑 caddy run Caddy将自动获取并更新TLS证书。

引擎X:

server {
    listen 443 ssl;
    server_name mcp.example.com;

    ssl_certificate     /etc/letsencrypt/live/mcp.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mcp.example.com/privkey.pem;

    location /mcp {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

使用 证书机器人 从Let's Encrypt获取证书。

Cloudflare 隧道 (无需开放端口):

cloudflared tunnel --url http://localhost:3000

这暴露了服务器下的 *.trycloudflare.com 带有自动HTTPS的URL,不需要域或证书。对于永久子域,请在Cloudflare仪表板中配置一个命名隧道。

Docker+Caddy (单个组合堆栈):

# docker-compose.yml
services:
  mcp:
    build: .
    expose:
      - "3000"

  caddy:
    image: caddy:2
    ports:
      - "443:443"
      - "80:80"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
    depends_on:
      - mcp

volumes:
  caddy_data:
# Caddyfile
mcp.example.com {
    reverse_proxy mcp:3000
}

然后,您的MCP客户端连接到 https://mcp.example.com/mcp.

码头工人

构建

docker build -t app-store-scraper-mcp .

docker run -p 3000:3000 app-store-scraper-mcp

自定义端口:

docker run -p 8080:8080 -e PORT=8080 app-store-scraper-mcp

默认情况下,Docker镜像以HTTP传输模式运行。

工具参考

所有工具都是 只读, 幂等,并向公共应用商店端点发出请求。不需要API密钥。

______________________________________________________________________

苹果应用商店工具

apple_app

检索单个应用程序的详细信息。

参数类型必填默认说明
idstringid/appId--数字应用商店id之一(例如。 "553834731")
appIdstringid/appId--捆绑标识符之一(例如。 "com.midasplayer.apps.candycrushsaga")
countrystring"us"两个字母的ISO国家代码
langstringno--IETF语言标签(例如。 "en-us", "fr-fr")
ratingsboolean--包括总评分计数和星级直方图

退货: 完整的应用程序对象,包括标题、描述、图标、截图、价格、分数、评级、版本、发行说明、开发者信息、流派、内容评级、支持的设备等。

______________________________________________________________________

apple_ratings

获取总评分计数和星级分布直方图。

参数类型必填默认说明
idstringyes--数字应用商店ID
countrystring"us"两个字母的ISO国家代码

退货: { ratings: number, histogram: { "1": number, "2": number, "3": number, "4": number, "5": number } }

______________________________________________________________________

apple_list

浏览排名靠前的应用程序集合(免费、付费、新、总收入等)。

参数类型必填默认说明
collectionenumno--集合键(请参见 苹果系列)
categorystringno--类别键(请参见 苹果分类)
countrystring"us"两个字母的ISO国家代码
langstringno--IETF语言标记
num编号50结果数量(1-200)
fullDetailbooleanno--返回完整的App对象,而不是轻量级的AppSite

______________________________________________________________________

apple_search

按关键字搜索应用程序。

参数类型必填默认说明
termstring--搜索查询
num编号50每页结果(1-200)
page编号1页码(从1开始)
countrystring"us"两个字母的ISO国家代码
langstring"en-us"接受语言标头值
idsOnlybooleanno--仅返回应用程序ID,而不是完整对象

______________________________________________________________________

apple_developer

按特定开发人员列出所有应用程序。

参数类型必填默认说明
devIdstringyes--苹果开发者ID(例如。 "284882218" Facebook)
countrystring"us"两个字母的ISO国家代码
langstringno--IETF语言标记

______________________________________________________________________

apple_suggest

获取自动完成的搜索建议。

参数类型必填默认说明
termstringyes--部分搜索查询
countrystring"us"两个字母的ISO国家代码

退货: 数组 { term: string } 建议对象。

______________________________________________________________________

apple_similar

获取“客户也购买了”相关应用程序。

参数类型必填默认说明
idstringid/appId之一--数字应用商店id
appIdstringid/appId--捆绑标识符之一
countrystringno--两个字母的ISO国家代码
langstringno--IETF语言标记

______________________________________________________________________

apple_reviews

获取分页的客户评论。

参数类型必填默认说明
idstringid/appId之一--数字应用商店id
appIdstringid/appId--捆绑标识符之一
sortenumRECENT排序顺序(参见 苹果排序)
page编号1页码(1-10,苹果规定的限制)
countrystring"us"两个字母的ISO国家代码
fullDetailbooleanfalse如果为true,则返回包含所有字段的完整原始Review对象

退货: 默认情况下,一组经过筛选的Review对象,包含基本字段:id、版本、用户名、分数、标题、文本、已更新。当 fullDetail 如果为true,则返回完整的原始Review对象,包括userUrl、url和所有其他字段。

______________________________________________________________________

apple_privacy

获取应用程序隐私/应用程序跟踪透明度详细信息。

参数类型必填默认说明
idstringyes--数字应用商店ID
countrystring"US"大写ISO国家代码

退货: PrivacyDetails对象,带有managePrivacyChoicesUrl、privacyTypes数组(数据类别、目的)。

______________________________________________________________________

apple_version_history

获取带有发布说明的版本发布历史记录。

参数类型必填默认说明
idstringyes--数字应用商店ID
countrystring"US"大写ISO国家代码

退货: 数组 { versionDisplay, releaseNotes, releaseDate, releaseTimestamp }.

______________________________________________________________________

Google Play商店工具

google_app

获取单个应用程序的详细信息。

参数类型必填默认说明
appIdstringyes--包标识符(例如。 "com.spotify.music")
langstring"en"存储UI语言
countrystring"us"店面国家代码

退货: 完整的AppDetails对象,包括标题、描述、分数、评级、直方图、安装、价格、IAP信息、图标、屏幕截图、视频、开发人员详细信息、版本、Android版本、内容评级、流派、类别和可用性标志。

______________________________________________________________________

google_list

浏览精心策划的应用程序图表(免费排行榜、付费排行榜、总收入排行榜)。

参数类型必填默认说明
collectionenumno--图表标识符(请参见 谷歌收藏)
categorystringno--类别键(请参见 谷歌分类)
ageenumno--年龄范围筛选器(请参见 谷歌年龄范围)
langstring"en"元数据区域设置
countrystring"us"店面区域
num编号60最多输入(1-500)
fullDetailbooleanfalse获取每个条目的完整AppDetails(速度较慢)

______________________________________________________________________

google_search

按关键字搜索Google Play目录。

参数类型必填默认说明
termstring--搜索查询
langstring"en"元数据语言
countrystring"us"店面所在国家
num编号20请求的结果(最多250个,谷歌上限约60个)
fullDetailbooleanfalse获取每个结果的完整AppDetails
priceenum"all"价格筛选器: "all", "free",或 "paid"

______________________________________________________________________

google_search_global

通过以下方式进行传统全球订阅源搜索 /work/search 终点。返回地理中立的结果。参数与 google_search.

______________________________________________________________________

google_suggest

获取自动完成的搜索建议。

参数类型必填默认说明
termstringyes--部分搜索查询
langstring"en"建议语言
countrystring"us"店面所在国家

退货: 建议字符串数组。

______________________________________________________________________

google_developer

列出特定开发人员发布的应用程序。

参数类型必填默认说明
devIdstringyes--开发人员ID或slug(例如。 "Spotify AB", "5700313618786177705")
langstring"en"元数据区域设置
countrystring"us"店面所在国家
num编号20最大结果(1-250)
fullDetailbooleanfalse获取每个应用程序的完整AppDetails

______________________________________________________________________

google_reviews

检索分页的用户评论。

参数类型必填默认说明
appIdstringyes--包标识符
langstring"en"UI语言
countrystring"us"店铺所在国家
num编号20每批结果(1-250)
sortenumno--排序顺序(请参见 谷歌排序)
paginatebooleanfalse启用分页(返回 nextPaginationToken)
nextPaginationTokenstringno--上一次调用下一页的令牌
fullDetailbooleanfalse如果为true,则返回包含所有字段的完整原始Review对象

退货: { data: Review[], nextPaginationToken: string | null }默认情况下,每个Review只包含基本字段:id、用户名、日期、分数、文本、版本。当 fullDetail 为true,包括所有字段:userImage、replyDate、replyText、thumbsUp、url等。

______________________________________________________________________

google_similar

获取给定应用程序的“类似应用程序”。

参数类型必填默认说明
appIdstringyes--包标识符
langstring"en"元数据语言
countrystring"us"店面区域
num编号20最大结果(1-100)
fullDetailbooleanfalse获取每个应用程序的完整AppDetails

______________________________________________________________________

google_permissions

检查应用程序请求的运行时权限。

参数类型必填默认说明
appIdstringyes--包标识符
langstring"en"UI语言
countrystring"us"店铺所在国家
shortOnlybooleanfalse仅返回权限名称字符串

退货: 数组 { permission, type } 对象(或扁平字符串数组,当 shortOnly 是真的)。

______________________________________________________________________

google_datasafety

获取数据安全/隐私披露。

参数类型必填默认说明
appIdstringyes--包标识符
langstring"en"UI语言
countrystring"us"店铺所在国家

退货: { sharedData, collectedData, securityPractices, privacyPolicyUrl }.

______________________________________________________________________

google_categories

列出所有可用的Google Play类别标识符。不接受任何参数。

退货: 类别字符串数组(例如。 ["APPLICATION", "GAME_ACTION", ...]).

______________________________________________________________________

枚举参考

苹果系列

将密钥名称作为 collection 参数:

密钥描述
TOP_FREE_IOS热门免费iPhone应用
TOP_FREE_IPAD热门免费iPad应用
TOP_PAID_IOS热门付费iPhone应用
TOP_PAID_IPAD热门付费iPad应用
TOP_GROSSING_IOS收入最高的iPhone应用程序
TOP_GROSSING_IPAD收入最高的iPad应用程序
NEW_IOS新iPhone应用程序
NEW_IPAD新iPad应用程序

Apple排序值

密钥描述
RECENT最新评论优先
HELPFUL最有帮助的评论优先

苹果分类

将密钥名称作为 category 参数:

顶层: GAMES, BUSINESS, EDUCATION, ENTERTAINMENT, FINANCE, FOOD_AND_DRINK, HEALTH_AND_FITNESS, LIFESTYLE, MEDICAL, MUSIC, NAVIGATION, NEWS, PHOTO_AND_VIDEO, PRODUCTIVITY, REFERENCE, SHOPPING, SOCIAL_NETWORKING, SPORTS, TRAVEL, UTILITIES, WEATHER, BOOKS, CATALOGS

游戏子类别: GAMES_ACTION, GAMES_ADVENTURE, GAMES_ARCADE, GAMES_BOARD, GAMES_CARD, GAMES_CASINO, GAMES_DICE, GAMES_EDUCATIONAL, GAMES_FAMILY, GAMES_MUSIC, GAMES_PUZZLE, GAMES_RACING, GAMES_ROLE_PLAYING, GAMES_SIMULATION, GAMES_SPORTS, GAMES_STRATEGY, GAMES_TRIVIA, GAMES_WORD

谷歌收藏

密钥描述
TOP_FREE热门免费应用
TOP_PAID热门付费应用
GROSSING最赚钱的应用程序

谷歌排序值

密钥描述
NEWEST最近第一次
RATING排名第一
HELPFULNESS最有帮助的第一

谷歌年龄范围

密钥描述
FIVE_UNDER5岁及以下
SIX_EIGHT6-8岁
NINE_UP9岁及以上

谷歌分类

概述: APPLICATION, ANDROID_WEAR, BUSINESS, COMMUNICATION, EDUCATION, ENTERTAINMENT, LIFESTYLE, PRODUCTIVITY, SHOPPING, SOCIAL, TOOLS, WEATHER

内容: ART_AND_DESIGN, BOOKS_AND_REFERENCE, COMICS, MUSIC_AND_AUDIO, NEWS_AND_MAGAZINES, PHOTOGRAPHY, VIDEO_PLAYERS

专业的: AUTO_AND_VEHICLES, BEAUTY, DATING, EVENTS, FINANCE, FOOD_AND_DRINK, HEALTH_AND_FITNESS, HOUSE_AND_HOME, LIBRARIES_AND_DEMO, MAPS_AND_NAVIGATION, MEDICAL, PARENTING, PERSONALIZATION, SPORTS, TRAVEL_AND_LOCAL, WATCH_FACE, FAMILY

游戏: GAME_ACTION, GAME_ADVENTURE, GAME_ARCADE, GAME_BOARD, GAME_CARD, GAME_CASINO, GAME_CASUAL, GAME_EDUCATIONAL, GAME_MUSIC, GAME_PUZZLE, GAME_RACING, GAME_ROLE_PLAYING, GAME_SIMULATION, GAME_SPORTS, GAME_STRATEGY, GAME_TRIVIA, GAME_WORD

使用 google_categories 工具在运行时显示完整的动态列表。

项目结构

src/
  index.ts          # Entry point, transport selection, Express HTTP server
  utils.ts          # Shared response helpers (jsonResult, errorResult)
  tools/
    apple.ts        # 10 Apple App Store tools
    google.ts       # 11 Google Play Store tools
Dockerfile          # Multi-stage production build
tsconfig.json       # TypeScript configuration

许可证

麻省理工学院

目录标签

目录标签

数据抓取TypeScriptClaude本地部署应用商店MCP服务器无认证访问多工具支持

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

21

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP