Kanto Labs について
Kanto Labsは、Apify actorsを利用してWeb、ドメイン、文書、メディアのツールをAIアシスタントに提供するMCPサーバーです。サイト分析からコンテンツ抽出まで対応し、呼び出しごとの支出上限を設定できます。
主な機能
- 01Webサイトの技術構成を検出
- 02文書をMarkdownに変換
- 03SEOとドメイン情報を監査
- 04画像の文字と動画フレームを抽出
- 05画像を取得しドメイン評価を確認
- 06呼び出しごとの支出上限
活用シーン
- 01Webサイトの利用技術を調べる
- 02オンライン文書をMarkdownに変換
- 03ページのSEOとドメイン安全性を確認
- 04画像や動画から内容を抽出
MCP 対応
Apify actorsを利用したWeb、データ、メディアのツールをMCPクライアントに公開します。クライアントはstdioで接続し、自身のApify API tokenを使います。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Kanto Labs MCP サーバー
Kanto Labs の Apify Store 上のアクターを基盤とし、AI アシスタント(Claude、Cursor、VS Code Copilot、その他の MCP クライアント)に 14 種類のウェブ、データ、メディアツールを提供する MCP サーバーです。
| ツール | 機能 | 料金 |
|---|---|---|
detect_website_tech_stack | ウェブサイトで使われている技術を検出します:CMS、eコマース、フレームワーク、アナリティクス、CDN、ホスティング(7,600 種類以上のフィンガープリント)。 | $0.003/ウェブサイト |
convert_document_to_markdown | URL から PDF、DOCX、PPTX、XLSX、EPUB、HTML などを、ページ数/単語数とオプションの RAG チャンクを含めて Markdown に変換します。 | $0.004/ドキュメント |
audit_website_seo | ページ内 SEO 監査:0〜100 のスコアと優先順位付きの問題、robots.txt、sitemap、llms.txt、AI クローラーのチェック、オプションのリンク切れチェックとクロール。 | $0.004/ページ |
extract_text_from_image | 画像、スクリーンショット、写真、スキャンした PDF から、読み取り順に OCR テキストを抽出します。信頼度とオプションの行ボックスも含められます。 | $0.003/画像または PDF ページ(品質「accurate」の場合は $0.008) |
lookup_domain | ドメインの RDAP/WHOIS、DNS レコード、SSL 証明書の有効期限、SPF/DKIM/DMARC のメールセキュリティ評価を確認します。 | $0.003/ドメイン |
extract_video_frames | 動画ファイルからシーン切り替え時または等間隔のフレームを抽出します。公開画像リンク、タイムスタンプ、無料のコンタクトシートも提供します。 | $0.002/フレーム |
download_images | ウェブページまたは画像リンクからすべての画像をダウンロードします。重複を除去してフィルタリングし、公開ダウンロード URL を提供します。 | $0.002/画像 |
check_domain_authority | オープンな Common Crawl ウェブグラフ(1億3,300万ドメイン)に基づき、ドメインのオーソリティを 0〜100 で評価します:ウェブランク、PageRank ランク、上位パーセンタイル、月次トレンド。 | $0.001/評価対象ドメイン(ランクなしのドメインは無料) |
enrich_company(近日公開) | ドメインまたは名前から企業プロフィールを取得します:ロゴ、説明、ソーシャルプロフィール、アプリリンク、主要ページに加え、Wikidata による業種、本社、創業年、従業員数、売上高、ティッカー。 | $0.003/情報を拡充した企業 |
upscale_image(近日公開) | Real-ESRGAN(写真またはアニメモデル)で画像を 2 倍または 4 倍にアップスケールします。透明度を保持し、公開ダウンロードリンクを提供します。 | $0.01/画像(allowLargeImages を指定した大きな画像は $0.06) |
get_topic_trends(近日公開) | 2015 年以降の Wikipedia の公式ページビューを基に、共通の 0〜100 スケールでトピックの関心度の推移を取得します(Google Trends の代替):ピーク、トレンド、急増、言語別の関心度。 | $0.003/トピック |
get_trending_topics(近日公開) | 国または Wikipedia の言語版ごとに、その日に最も読まれたトピックを、閲覧数と 1 行の説明とともに取得します。 | $0.0005/トレンド記事 |
check_website_traffic_rank(近日公開) | 実際の Chrome ユーザーデータ(CrUX)に基づき、ウェブサイトの人気度を確認します:グローバルランクの階層、40 か国での階層、上位の国、月次トレンドに加え、Majestic ランクと参照サブネット。 | $0.002/ランク付けされたドメイン(ランクなしのドメインは無料) |
search_free_images(近日公開) | Wikimedia Commons で自由にライセンスされた画像を検索します。ライセンス、作者、すぐに貼り付けられるクレジット表記を含み、ライセンス、サイズ、向き、形式で絞り込めます。 | $0.001/画像 |
入力に失敗した場合、または到達できない場合、料金は請求されません。
近日公開:
enrich_company、upscale_image、get_topic_trends、get_trending_topics、check_website_traffic_rank、search_free_imagesはすでに掲載されていますが、各アクターはまだ Apify Store で公開されていません。公開されるまでは、これらを呼び出すと「actor not yet public」というエラーが返されます(料金は請求されません)。
課金の仕組み
サーバーは無料のオープンソース(MIT)です。各ツール呼び出しでは、お客様自身の Apify API トークンを使って、対応するアクターが Apify 上で実行されるため、アクターの従量課金料金はお客様の Apify アカウントに請求されます(Apify の無料プランには毎月のクレジットが含まれています)。Kanto Labs のアカウント、キー、サブスクリプションは不要です。
すべての呼び出しには支出上限 maxTotalChargeUsd が設定されています(デフォルトは $1.00。KANTO_MAX_CHARGE_USD 環境変数または呼び出しごとに変更できます)。Apify はその金額に達すると実行を停止するため、アシスタントが誤って高額な請求を発生させることはありません。各結果には呼び出しの費用が記載されます。
セットアップ
- Apify API トークンを取得します。apify.com で登録し、Settings -> API & Integrations (console.apify.com/settings/integrations) に進みます。
- サーバーをクライアントに追加します(Node.js 18.17 以降が必要です。初回実行時に
npxが GitHub からダウンロードしてビルドします)。
Claude Desktop
claude_desktop_config.json を編集します(Settings -> Developer -> Edit Config)。
{
"mcpServers": {
"kanto-labs": {
"command": "npx",
"args": ["-y", "github:kanto-labs/kanto-labs-mcp"],
"env": { "APIFY_TOKEN": "apify_api_your_token_here" }
}
}
}
または、Releases ページからワンクリックバンドル kanto-labs-mcp.mcpb をインストールします。ダブルクリックして、求められたらトークンを貼り付けてください。
Claude Code
claude mcp add kanto-labs -e APIFY_TOKEN=apify_api_your_token_here -- npx -y github:kanto-labs/kanto-labs-mcp
Cursor
~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクト):
{
"mcpServers": {
"kanto-labs": {
"command": "npx",
"args": ["-y", "github:kanto-labs/kanto-labs-mcp"],
"env": { "APIFY_TOKEN": "apify_api_your_token_here" }
}
}
}
VS Code(GitHub Copilot エージェントモード)
.vscode/mcp.json - トークンは一度だけ求められ、安全に保存されます。
{
"inputs": [
{ "type": "promptString", "id": "apify_token", "description": "Apify API token", "password": true }
],
"servers": {
"kanto-labs": {
"type": "stdio",
"command": "npx",
"args": ["-y", "github:kanto-labs/kanto-labs-mcp"],
"env": { "APIFY_TOKEN": "${input:apify_token}" }
}
}
}
Windsurf、Cline、Zed など
stdio サーバーを起動できるクライアントであれば使用できます。コマンドは npx、引数は -y github:kanto-labs/kanto-labs-mcp、環境変数は APIFY_TOKEN です。
Windows: クライアントに
spawn npx ENOENTと表示される場合は、"command": "cmd"と"args": ["/c", "npx", "-y", "github:kanto-labs/kanto-labs-mcp"]を使用してください。
プロンプトの例
- 「stripe.com と shopify.com は何で構築されていますか?」
- 「https://arxiv.org/pdf/1706.03762 を Markdown に変換して、セクション 3 を要約してください。」
- 「https://example.com の SEO を監査して、最も重要な修正を 3 つ挙げてください。」
- 「example.com のページを最大 20 件クロールして、リンク切れを確認してください。費用は $0.10 以下にしてください。」
- 「このレシートのテキストを読み取ってください:https://example.com/receipt.jpg - 合計はいくらですか?」
- 「このスキャンされた日本語の PDF を高精度モデルで OCR してください。最初の 5 ページだけでお願いします。」
- 「stripe.com と shopify.com の有効期限はいつですか? レジストラはどこで、DMARC は設定されていますか?」
- 「kanto-example-name.com はまだ登録できますか?」
- 「https://media.w3.org/2010/05/sintel/trailer.mp4 から 8 フレームを抽出して、動画内で何が起きているか説明してください。」
- 「https://books.toscrape.com/ から幅 300 px を超える商品画像をすべて WEBP 形式でダウンロードしてください。」
- 「リンク構築の候補のうち、ドメインオーソリティが最も高いのはどれですか? example-blog.com、another-site.org、third-site.net」
- 「hubspot.com、Siemens、canva.com の情報を補完してください:業種、本社、従業員数、ロゴ、LinkedIn ページ。」
- 「https://example.com/product-small.jpg を 4 倍にアップスケールして PNG にしてください。」
- 「過去 12 か月間の ChatGPT、Gemini、Claude への関心を比較してください。どれが伸びていますか?」
- 「昨日、日本とドイツの人々は何について読んでいましたか?」
- 「zalando.de と allegro.pl の人気はどのくらいで、どの国で人気がありますか?」
- 「クレジット表記不要の、夜のエッフェル塔の風景写真を 10 枚見つけてください。」
ツールのパラメーター
すべてのツールで、以下のパラメーターも指定できます。
| パラメーター | 意味 |
|---|---|
maxTotalChargeUsd | この呼び出しに対する米ドル建ての上限額です(デフォルトは KANTO_MAX_CHARGE_USD、設定がない場合は 1.00)。 |
timeoutSecs | 指定した秒数後に処理を打ち切ります(10~300、デフォルトは 280)。Apify の同期実行は 300 秒に制限されているため、大きなバッチは分割してください。 |
detect_website_tech_stack: urls(必須)、minConfidence、includeDescriptions。
convert_document_to_markdown: documentUrls(必須)、chunkSize、chunkOverlap、includeMarkdown、maxFileSizeMb。
audit_website_seo: urls(必須)、maxPagesPerSite、checkBrokenLinks、maxLinksToCheckPerPage。
extract_text_from_image: sources(必須)、quality(fast/accurate)、includeLines(ここではデフォルト false)、minConfidence(0.3/0.4/0.5/0.6/0.7/0.8)、pdfMode(auto/ocr)、maxPdfPages、pdfDpi。
lookup_domain: domains(必須)、includeWhois、includeDns、includeSsl、includeEmailSecurity。
extract_video_frames: videoUrls(必須)、mode(auto/scenes/count/interval)、frameCount、intervalSeconds、maxFramesPerVideo、sceneThreshold(0.15/0.2/0.3/0.4/0.5)、imageFormat(jpg/png/webp)、maxWidth、contactSheet。
download_images: urls(必須)、maxImagesPerPage、minWidth、minHeight、minFileSizeKb、allowedFormats、includeSvg、includeCssBackgrounds、includeIcons、convertTo(original/jpg/png/webp)、maxDimension、dedupe。
check_domain_authority: domains(必須)。
enrich_company: companies(必須)、includeWebsite、includeWikidata、maxConcurrency。
upscale_image: imageUrls(必須)、scale(4/2)、model(general/anime)、outputFormat(jpeg/png/webp)、quality、allowLargeImages。
get_topic_trends: keywords(必須)、language、timeRange(past7Days/past30Days/past90Days/past12Months/past5Years/all/custom)、startDate、endDate、granularity(auto/daily/weekly/monthly)、includeRedirects、includeLanguages、maxLanguages、platform(all-access/desktop/mobile-web/mobile-app)。
get_trending_topics: trendingCountries、trendingProjects、trendingDate、maxTrending、platform(all-access/desktop/mobile-web/mobile-app)。
check_website_traffic_rank: domains(必須)、includeCountries。
search_free_images: queries(必須)、maxResultsPerQuery、license(any/commercialNoShareAlike/noAttribution)、minWidth、minHeight、orientation(any/landscape/portrait/square)、fileTypes、thumbnailWidth、excludeRestricted、language。
各呼び出しは、2つのテキストブロックを返します。結果、失敗、コストを示す簡潔な人間向けの概要と、すべての結果項目を含むコンパクトな JSON です(空のフィールドは省略され、非常に長いテキストは KANTO_MAX_TEXT_CHARS の位置で切り詰められます)。
環境変数
| 変数 | デフォルト | 用途 |
|---|---|---|
APIFY_TOKEN | -(必須) | Apify API トークンです。APIFY_API_TOKEN も使用できます。 |
KANTO_MAX_CHARGE_USD | 1.00 | 呼び出しごとのデフォルト上限額です。 |
KANTO_TIMEOUT_SECS | 280 | 呼び出しごとのデフォルトタイムアウトです(最大 300)。 |
KANTO_MAX_TEXT_CHARS | 100000 | 単一のテキストフィールド(長いドキュメントの Markdown など)がこの文字数を超える場合に切り詰めます。 |
KANTO_ACTORS_CONFIG | 同梱ファイル | 代替の actors.config.json へのパスです。 |
アクターの追加
ツールはactors.config.jsonから生成されます。このファイルには、Apify アクター ID、ツールの説明、型付きパラメーター、料金(任意の結果ごとの料金ルールと、1行あたりに複数のイベントを課金するアクター向けの結果ごとの課金回数を含む)、入力のデフォルト値、1行の概要テンプレートを指定します。アクターの追加は設定項目の追加だけで、コードの変更は不要です。comingSoon: trueを指定すると、Apify Storeでまだ公開されていないアクターとしてマークされます(ツールは通知付きで表示され、404エラーについても説明されます)。fixedInputを指定すると、ツールのアクター入力が固定されます(1つのアクターを複数のツールで使用できます)。npm run buildを実行すると、設定から上記のツール一覧とmanifest.jsonが再生成されます。
開発
npm install
npm run build
npm test # offline: lists tools, checks the missing-token error
APIFY_TOKEN=... npm run test:live # one tiny real call per tool (about $0.04)
npx @modelcontextprotocol/inspector node dist/index.js # interactive inspector
npm run bundle # builds build/kanto-labs-mcp.mcpb
プライバシー
サーバーはお使いのマシン上で実行され、api.apify.comとのみ通信します。渡したURLとドメインはApify上のアクターによって処理されます。各アクターのページについてはApify Storeをご覧ください。トークンはApifyにのみ送信され、ログに記録されることはありません。
ライセンス
MIT — LICENSEをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。