mcpField
O
Okala

Okala

ローカル
github.comビジネス・マーケティング46 日前に更新

Okala について

Okalaは、イランのOkalaで食料品の配送状況や価格を調べる、AIエージェント向けの非公式な読み取り専用MCPサーバーです。近隣店舗を比較できますが、カートや決済の操作には対応しません。

主な機能

  1. 01指定地点へ配送する店舗の検索
  2. 02店舗間の商品価格の比較
  3. 03手数料と最低注文額の確認
  4. 04配送枠と店舗情報の確認
  5. 05商品と開催中のセールの閲覧

活用シーン

  1. 01近隣店舗の牛乳価格の比較
  2. 02店舗選びの前に配送手数料を確認
  3. 03配送枠のある店舗を検索
  4. 04開催中の食料品セールを確認

MCP 対応

読み取り専用の買い物ツールを通じて、Okalaの位置、店舗、商品、価格比較、セール情報をMCPクライアントに提供します。任意のログインでOkalaのテキスト検索を利用できますが、注文や支払いはできません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"sepehr071-okala": {
"command": "uvx",
"args": [
"okala-mcp"
],
"env": {
"OKALA_MCP_PROXY": "<OKALA_MCP_PROXY>",
"OKALA_MCP_TOKEN": "<OKALA_MCP_TOKEN>"
}
}
}
}
起動コマンドuvx okala-mcp
設定が必要な環境変数
OKALA_MCP_PROXYOptional HTTP proxy URL for requests to okala.com, or a comma-separated list used one at a time (next one after a block); system proxy settings are ignored.
OKALA_MCP_TOKENシークレットOptional Okala access token for text search; normally saved by `okala-mcp login` instead.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiokala-mcp0.3.2

ツール

16

掲載時のツール一覧 · 5 日前に更新

パラメーター型必須説明
phonestringはいユーザーのイランの携帯電話番号。例:'09121234567'。

詳細

okala-mcp:AI エージェント向け Okala MCP サーバー

AI エージェントに Okala(اُکالا)で食料品の価格を調べてもらいましょう。
Okala 向けの非公式 MCP サーバーです。Okala は、地域のスーパーマーケット、パン屋、青果店が指定先まで商品を配達するイランのオンラインスーパーマーケットです。
Claude、Cursor、Copilot から、配達可能な店舗を探したり、近隣店舗間で商品の価格を比較したり、手数料、最低注文金額、配達時間帯を確認したり、今日のお買い得商品を見つけたりできます。

PyPI Python CI MCP Registry License: MIT

Install in Cursor Install in VS Code

AI エージェント向け · クイックスタート · できること · ツール · FAQ · فارسی


目次

AI エージェント向け · 概要 · できること · クイックスタート · ツール · 仕組み · 知っておくとよいこと · ログイン(任意) · FAQ · 設定 · فارسی · 開発 · 関連サーバー · 免責事項 · ライセンス

AI エージェント向け

  • 概要: Okala(okala.com、اُکالا)向けの非公式 MCP サーバー(model context protocol)です。Okala は、地域のスーパーマーケット、パン屋、果物店、チェーン店が住所まで配達するイランのオンライン食料品マーケットプレイスです。ペルシャ語での検索が最適です。価格はトマンです。
  • インストール: uvx okala-mcp または claude mcp add okala -- uvx okala-mcp。トランスポート:stdio。uv(Python 3.10+)が必要です。
  • 認証: 不要です。任意の SMS ログイン(ok_login)を行うと、Okala のテキスト検索を ok_search で利用できます。環境変数:OKALA_MCP_PROXY(HTTP プロキシ)、OKALA_MCP_TOKEN(保存済みのログインの代わりに使うアクセストークン)、OKALA_MCP_TOKEN_FILE(ログイン情報の保存先)。
  • アクセス: 買い物用の 12 個のツールは読み取り専用です。カート、注文、支払い、レビュー用のツールはありません。ログイン用の 4 個のツールはユーザー自身のログインに作用します。ok_login はユーザーの電話番号に SMS を送信し、ok_login_verify はログイン情報を保存し、ok_logout はログイン情報を削除します。ok_login または ok_logout を呼び出す前にユーザーに確認してください。ユーザーから依頼されない限りログインしないでください。また、トークンを尋ねたり、繰り返し伝えたりしないでください。
  • ツール: 16 個で、すべて ok_ で始まります。位置情報を使うすべてのツールには lat と lon が必要なので、まず ok_locate を使ってください。一般的な手順:ok_locate → ok_search → ok_compare、または ok_locate → ok_stores → ok_store_products。
  • 利用する場面: 住所に配達可能な店舗の確認、近隣店舗間での商品の価格や手数料の比較、配達時間帯、最低注文金額、本日の特売の確認。
  • 利用しない場面: ユーザーが注文を希望している場合(カートやチェックアウト機能はありません)、または Okala の配達エリア外(テヘランおよびその他一部の大都市)にいる場合。
  • 出力: コンパクトな JSON。価格はトマンです(API のリアルを 10 で割った値)。final_price は購入者が支払う金額、price は割引前の価格、discount_pct は整数の割引率、評価は 0~5 です。ツール間で ok_locate の lat と lon、および ok_stores の store_id を渡してください。
  • 機械可読データ: server.json、およびイランの全 MCP サーバーのカタログ iran-mcp(TOOLS.md、servers.json、llms.txt)。

理由

Okala では、同じ牛乳パックでも店舗ごとに価格が異なり、サービス料や梱包料、最低注文金額も店舗ごとに設定されています。サイトでは一度に 1 店舗しか表示されず、ログインしないと検索ボックスも使えません。okala-mcp を使うエージェントなら、配達可能なすべての店舗を一度に確認できます。

あなた: テヘランのユセフアーバード近辺で、カレの無乳糖牛乳が一番安いのはどこですか?

エージェント: 呼び出し ok_locate(address="یوسف آباد") → ok_search(query="شیر بدون لاکتوز کاله", ...) → ok_compare(category_slug="low-fat-milk", ...)

カレの無脂肪・無乳糖牛乳(1 L)は、近隣の営業中の店舗 17 店で販売されています。最安値はیاران دریان گلریزの 147,875 トマン(169,000 トマンから 12% 割引)で、距離は 1.6 km、本日の最初の配達枠は 08-09 です。サービス料 10,500 トマンと梱包料 3,000 トマンが別途かかります。 最も高い店舗では 180,000 トマンなので、32,125 トマン節約できます。

2026-10-07 の実際のツール出力です。価格は常に変動します。価格はトマンです。

すべての返信はコンパクトな JSON テキストブロックなので、エージェントのコンテキストを圧迫しません。

できること

  • 住所を検索(ペルシャ語)し、そこに配達する店舗を評価、距離、最初の配達枠、手数料とともに一覧表示します
  • 近くの商品を検索:名前で検索します。オプションの初回ログイン後はOkala独自のテキスト検索を使用し、それ以外の場合はOkalaのカテゴリーから照合します
  • 比較:近くのすべての店舗で同じ商品を比較します。最安の店舗から順に、各店舗の手数料も表示します
  • 1店舗を閲覧:部門全体を価格順または割引順に並べ、名前で絞り込みます
  • 商品詳細:価格、割引、在庫、注文あたりの上限数、ブランド、画像
  • 店舗詳細:最低注文金額、現在お客様の住所に配達可能かどうか、その日のすべての配達枠、カスタマーレビュー
  • お得情報:近くまたは1店舗の本日のお得情報一覧、および店舗の最大割引
  • 設計上、買い物に関する書き込みは行いません:カート、注文、レビュー投稿はありません(オプションのログインは検索にのみ使用します)

プロンプトの例:

  • 「ヴァナク広場の近くで1時間以内に配達できるスーパーマーケットと、配達手数料を教えてください。」
  • 「近くで最も安いカレの全脂肪牛乳はどこですか?また、その店舗の最低注文金額は牛乳1パックの購入で問題になりますか?」
  • 「店舗11009の今日のお得情報は何ですか?」
  • 「テヘランのサーデギーイェ近くで、店舗ごとに米1 kgの価格を比較してください。」
  • アルゼンチン広場近くで最も安いツナ缶を扱う店舗はどこですか?
  • ヴァナク近くで現在配達を行っているオカラのスーパーマーケットはどこですか?配達手数料はいくらですか?
  • ヨセフ・アーバード近くの店舗で今日の割引を表示してください。

クイックスタート

uvが必要です。APIキーやアカウントは不要です。

Claude Code
claude mcp add okala -- uvx okala-mcp
Claude Desktop

設定 → 開発者 → 設定を編集し、次を追加します:

{
  "mcpServers": {
    "okala": { "command": "uvx", "args": ["okala-mcp"] }
  }
}
Cursor

上のCursorにインストールをクリックするか、Claude Desktopのブロックを~/.cursor/mcp.json(またはプロジェクト内の.cursor/mcp.json)に追加します。

VS Code (Copilot agent mode)

上のVS Codeにインストールをクリックするか、.vscode/mcp.jsonに追加します:

{
  "servers": {
    "okala": { "type": "stdio", "command": "uvx", "args": ["okala-mcp"] }
  }
}
Codex CLI
codex mcp add okala -- uvx okala-mcp

または、~/.codex/config.tomlに追加します:

[mcp_servers.okala]
command = "uvx"
args = ["okala-mcp"]
Gemini CLI

~/.gemini/settings.jsonに追加します:

{
  "mcpServers": {
    "okala": { "command": "uvx", "args": ["okala-mcp"] }
  }
}
Windsurf

Claude Desktopのブロックを~/.codeium/windsurf/mcp_config.jsonに追加します。

その他

標準的なstdio MCPサーバーです:uvx okala-mcpを実行するか、pip install okala-mcpを実行してからokala-mcpを実行します。

## ツール

まず ok_locate を使います。位置情報を扱う各ツールにはここで取得した lat と lon を渡し、store_id は ok_stores から取得します。

配送エリアと配送者(4)
ツール機能
ok_locate住所テキスト → 座標(候補)と、最も一致する住所
ok_stores指定地点に配送する店舗:種類、評価、距離、最初の配送枠、サービス料/梱包料/配送料
ok_store1 店舗の情報:この地点への配送可否、最低注文金額、所在地、配送可能な枠(all_slots を指定すると、空き状況とともに満枠も含めて表示)
ok_store_reviews店舗の顧客レビュー:星評価、コメント(全文は full_text)、好評/不評の理由
商品と価格(6)
ツール機能
ok_search地点周辺または 1 店舗内の商品を検索:ログイン中は Okala のテキスト検索、ゲストでは一致するカテゴリーを検索。名前の一致順に表示し、その後は価格の安い順
ok_compare近隣店舗で同じ商品を比較。価格の安い店舗が先に表示され、各店舗の手数料も表示
ok_store_products1 店舗のカテゴリー全体を並べ替えて表示。名前で絞り込み(店舗内検索)
ok_product1 店舗の 1 商品の情報:価格、割引、在庫、注文ごとの上限数、ブランド、画像、説明(全文は full_text)
ok_categories地点周辺または 1 店舗のカテゴリー階層とスラッグ
ok_brandsブランド ID とスラッグ(おすすめブランド、またはスラッグによる検索)
セール(2)
ツール機能
ok_deals地点周辺または 1 店舗で現在実施中のセール一覧。終了時刻と主な商品を表示
ok_offerセールの詳細を店舗横断または 1 店舗で表示。並べ替えとページ分けに対応
任意のログイン(4)
ツール機能
ok_loginユーザーの電話番号に SMS コードを送信します。クライアントが対応している場合、フォームでコードの入力を求めます
ok_login_verifyチャットでユーザーが入力したコードを使ってログインを完了します
ok_accountログイン中かゲストか、およびどの電話番号か(マスキング表示)を示します
ok_logout保存済みのログイン情報を削除し、サーバーはゲストとして動作を続けます

12 個のショッピングツールと ok_account には readOnlyHint: true が付いています。ok_login、ok_login_verify、ok_logout には付いていません (SMS を送信するか、保存済みのログイン情報を変更するため)。そのため、クライアントは実行前に確認を求めます。ok_logout には destructiveHint: true も付いています。ログインコードは 1 時間あたり最大 3 件まで送信できます。

仕組み

  AI agent  (Claude, Cursor, Copilot, ...)
      │
      │  MCP over stdio
      ▼
  okala-mcp  (runs on your machine)
      │
      │  HTTPS
      └──────▶  apigateway.okala.com   the JSON API behind okala.com

okala-mcp はローカルで動作し、ログインしない限りゲストとして、okala.com のウェブサイトと同じエンドポイントを呼び出します。 間にホスト型サーバーはなく、API キーも不要です。また、あなたに関する情報がほかの場所に送信されることもありません (Okala に送信されるのは、問い合わせた配送地点だけです)。リクエストは Chrome を装うクライアント経由で送信され、同時に処理されるのは最大 2 件で、少しのジッターが加わります。失敗した GET リクエストは最大 2 回再試行されます。

知っておくと便利なこと

  • 価格はトマン建てです。 API はリアル建てで返すため、すべてのツールで 10 で割ります。final_price は実際に支払う価格、price は割引前の価格、discount_pct は整数の割引率です。
  • 店舗ごとに価格が異なります。 商品 ID はどの店舗でも同じ商品を示すため、ok_compare で価格を並べて比較できます。
  • 1 店舗での注文費用は、商品代金+サービス料+梱包料+配送料(ok_stores)です。また、かごの合計は店舗のminimum_order(ok_store)以上である必要があります。1 つのかごで注文できるのは 1 店舗のみです。
  • テキスト検索にはログインが必要です。 Okala で検索できるのはログイン済みユーザーのみです。一度ログインすると(ログイン(任意)を参照)、ok_search で Okala の実際の検索機能を使い、現在地の近く、または 1 店舗内(store_id)でブランドや商品名も検索できます(نوتلا)。ゲストの場合、ok_search は入力語をカテゴリー名に照合し(شیر → 牛乳)、商品を名前で並べ替えます。1 店舗の商品を検索するには、name_contains を指定したok_store_productsを使うと、その部門全体を取得できます。
  • 店舗横断リストで返される商品は、店舗ごとに最大 12 件です。より正確に比較するには、カテゴリーのスラッグを絞り込むか、ブランド ID を指定してください。
  • ペルシャ語が最適です(شیر کم چرب、پنیر、تن ماهی)。アラビア語の ي / ك と半角スペースは正規化されます。
  • 営業時間外の店舗はok_searchとok_compareの結果から除外されます。open_only: falseを指定したok_storesでは、現在閉店中の店舗も表示されます。
  • 時刻: 配達時間枠と日付はテヘランの現地時間、セール終了時刻は UTC です。
  • クーポンバッジ: 商品にkalabargバッジが付いている場合、政府発行のクーポンで支払えます。
  • ブランド: 公開リストに掲載されているのは、一部の注目ブランドのみです。ok_brandsではスラッグを使ってほかのブランドも検索できます。
  • 対応していないこと: カート、チェックアウト、注文、支払い、買い物リスト、レビュー投稿、サポートチケットには対応していません。また、既定の位置情報はないため、必ずlatとlonを渡してください。Okala は予告なく API を変更することがあるため、リクエスト頻度は適切に保ってください。

ログイン(任意)

すべての機能はゲストのままでも使えます。ログインすると、ok_searchで Okala のテキスト検索(ブランド名や商品名の検索。1 店舗内での検索も含む)が使えるようになります。エージェントに次のように頼むだけです。

あなた: Okala にログインしてください。電話番号は 0912 123 4567 です

エージェント: ok_loginを呼び出します → Okala から SMS が届きます → コードを入力します(クライアントにフォームが表示される場合はそのフォームに、表示されない場合はチャットに入力します)→ ログイン完了

  • コードはリクエストした場合にのみ送信され、同じ番号には 2 分に 1 回まで送信できます。
  • クライアントが MCP フォーム(エリシテーション)に対応している場合、コードはサーバーに直接送られ、モデルを経由しません。
  • ログイン情報はお使いのマシン(~/.okala-mcp/token.json)に保存され、自動で更新されます。apigateway.okala.comにのみ送信され、ツールの応答に表示されることはありません。ログインが機能しなくなった場合、サーバーはゲストとして動作を続けます。
  • ok_accountで状態を確認でき、ok_logoutでログイン情報を削除できます。

ターミナルを使いたい場合も、コマンドラインから同じようにログインできます。

uvx okala-mcp login 09121234567          # sends the code
uvx okala-mcp login 09121234567 12345    # saves the login
uvx okala-mcp logout                     # deletes it

コマンドラインからログインした後は、MCP クライアントを再起動してください(実行中のサーバーは起動時に一度だけログイン情報を読み込みます)。

よくある質問

注文してもらえますか?

いいえ。それは意図的な仕様です。ログイン中であっても、カート、注文、決済、住所、レビューのエンドポイントには一切アクセスしません。 エージェントが最適な選択肢を見つけ、購入は okala.com でご自身で行います。

AI エージェント向けの Okala API や MCP サーバーはありますか?

Okala はエージェント向けの公式 API を公開していません。okala-mcp は、okala.com のエンドポイントを16個のツール(読み取り専用のショッピングツール12個とログインツール4個)として利用できるようにする非公式の MCP サーバーです。

Claude、Cursor、Copilot で Okala を使うにはどうすればよいですか?

サーバーを一度インストールしたら(クイックスタートを参照)、配達先の店舗を検索できるよう、住所またはエリアを指定して、ペルシャ語または英語で自然な言葉で質問してください。Claude Code では、次のコマンドでインストールできます。 claude mcp add okala -- uvx okala-mcp

公式のものですか?安全で無料ですか?

非公式ですが、無料(MIT)で利用できます。ショッピングツールは読み取り専用で、アカウントも API キーも必要ありません。ホスト型サーバーを介さず、お使いのマシン上で動作します。任意のログイン情報もお使いのマシンにのみ保存されます。

ok_search で入力した言葉に一致しない商品が表示されるのはなぜですか?

ゲストとして利用する場合(mode: "category")、Okala のテキスト検索は使用できません。そのため、ok_search は入力した言葉に一致する名前のカテゴリを取得し、商品名にその言葉を含む商品を先頭に表示します。ログインすると、通常のテキスト検索が使えるようになります。返信の categories で使用されたカテゴリを確認できます。ok_compare により適切なスラッグを渡すか、ok_store_products で特定の店舗の部門を検索してください。

指定した場所に配達できる店舗がないと表示されます

Okala はテヘランとその他一部の大都市を対象としています。ok_locate で座標を確認してください(最初の候補は、別の地区にある似た名前の場所の場合があります)。その後、もう一度お試しください。ok_stores に open_only: false を指定すると、現在閉店中の店舗も表示されます。

「Could not reach okala.com」と表示されます

サーバーは、接続切断またはレート制限の応答があった場合、2回再試行します。それでも失敗する場合は、インターネット接続を確認してください。システムのプロキシ変数は意図的に無視されます。プロキシが必要な場合は、OKALA_MCP_PROXY を設定してください。Okala にボット確認ページが表示される場合は、ブラウザー用拡張機能(pip install "okala-mcp[browser]" を実行後、patchright install chromium を実行)をインストールしてください。サーバーがヘッドレスブラウザーで一度確認をクリアします。

電話番号やログイン情報は安全ですか?

ログインは任意です。トークンはお使いのマシンに保存され、apigateway.okala.com にのみ送信されます。また、ツールの返信に表示されることはありません。MCP フォームに対応したクライアントでは、SMS コードはモデルを経由せず、サーバーに直接送信されます。

エージェントに表示されている内容をデバッグするにはどうすればよいですか?
npx @modelcontextprotocol/inspector uvx okala-mcp

設定

変数デフォルト意味
OKALA_MCP_PROXY未設定okala.com へのリクエストに使用する任意の HTTP プロキシ URL。例:http://user:pass@host:port。カンマ区切りのリストを指定すると、順番に使用されます(ブロックされた場合は次のものを使用)。システムのプロキシ設定は無視されます
OKALA_MCP_TOKEN_FILE~/.okala-mcp/token.jsonokala-mcp login がログイン情報を保存する場所
OKALA_MCP_TOKEN未設定保存済みのログイン情報の代わりに使用する Okala アクセストークン(更新されません)

ペルシア語:Okala MCP サーバー

okala-mcp は、イランのオンラインスーパーマーケット Okala(okala.com)向けの非公式 MCP サーバーです。お使いの AI アシスタント(Claude、Cursor、Copilot など)から、住所に配達可能な Okala の店舗を検索したり、近隣のすべての店舗で商品の価格を比較したり、サービス料や梱包料、最低注文金額、配達時間を確認したり、今日の割引を見つけたりできます。オンラインでの食料品購入やスーパーマーケットの価格比較、近隣で最も安い店舗を探すのに役立ちます。

  • 購入や注文には対応していません。カートの作成、注文の確定、レビューの投稿は行いません。SMS によるログインは任意で、Okala のテキスト検索を有効にするためだけに使用します。
  • 価格はトマンで表示されます。
  • お使いのシステム上で実行され、仲介サーバーにデータを送信しません。

Claude Code へのインストール:

claude mcp add okala -- uvx okala-mcp

次のように尋ねてみてください。「テヘランのユセファバード近くで、ミーハンの低脂肪牛乳が最も安い店舗はどこですか?」

商品名と地域名または住所をペルシア語で入力するだけで検索できます。たとえば、「アルゼンチン広場近くのマグロ缶詰」のように入力してください。

開発

git clone https://github.com/sepehr071/okala-mcp && cd okala-mcp
uv sync
uv run pytest            # offline, against recorded responses
uv run pytest -m live    # real okala.com
uv run ruff check .

ツールは src/okala_mcp/stores.py、catalog.py、offers.py、account.py にあります。それぞれ型が指定された非同期関数で、エージェントがいつ使用すべきかを説明する docstring が付いています。新しいツールの追加やサイトの変更への対応など、Issue や PR を歓迎します。

リリースするには、pyproject.toml と server.json のバージョンを更新してから、v* タグをプッシュしてください。GitHub Actions がテストを実行し、PyPI と MCP Registry に公開して、GitHub Release を作成します。

関連サーバー

  • iran-mcp:イランのサービス向け MCP サーバーのカタログ
  • snapp-mcp:Snappfood と SnappMarket の料理や食料品の価格
  • tapsifood-mcp:Tapsi Food のレストランと料理の配達
  • digikala-mcp:Digikala の商品検索と価格
  • torob-mcp:Torob でイランのショップ間の価格を比較

クリック数の削減に役立ったら、スターを付けていただけると、ほかの人にも見つけてもらいやすくなります。

免責事項

非公式のプロジェクトであり、Okala との提携や、Okala による推奨を受けたものではありません。okala.com ウェブサイトのエンドポイントを使用しており、予告なく変更される場合があります。リクエスト頻度は適切な範囲に抑えてください。

作者

Sepehr Radmard:イランのウェブ向けオープンソース MCP サーバー。LinkedIn:linkedin.com/in/sepehr-radmard

Sepehr Radmard(سپهر رادمرد)が開発・保守しています。LinkedIn でつながるか、GitHub の @sepehr071 をフォローして、イランのウェブサイト向けのほかの MCP サーバーをご覧ください。すべて iran-mcp に掲載されています。時間の節約に役立ったら、リポジトリにスターを付けていただけると、ほかの人にも見つけてもらいやすくなります。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。