SR

shilomagen/rami-levy-mcp

Security testing

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

11 stars 8 forks 품질 65 트렌드 18MIT

MCP Server for the Rami Levy Online Grocery Store API. This is a proof of concept implementation that demonstrates how to integrate Rami Levy's e-commerce platform with MCP-enabled LLMs.

개요

MCP Server for the Rami Levy Online Grocery Store API. This is a proof of concept implementation that demonstrates how to integrate Rami Levy's e-commerce platform with MCP-enabled LLMs. 1. search_items - Search for products in Rami Levy's catalog - Inputs: - q (string): Search query - store (string, optional): Store identifier (default: "331") - aggs (number, optional): Aggregation flag (default: 1) - Returns: Array of products with name, price, image URL, and ID 2. add_to_cart - Add one or more items to the shopping cart - Inputs: - store (string): Store identifier (e.g., "331") - items (array): List of items to add, each containing: - id (number): Product identifier - quantity (number): Quantity to add (minimum: 1) - Returns: Updated cart contents with prices and discounts 3.

README

원문 README의 일부입니다. 원문 보기.

Rami Levy MCP Server

MCP Server for the Rami Levy Online Grocery Store API. This is a proof of concept implementation that demonstrates how to integrate Rami Levy’s e-commerce platform with MCP-enabled LLMs.

Tools

  1. search_items

    • Search for products in Rami Levy’s catalog
    • Inputs:
      • q (string): Search query
      • store (string, optional): Store identifier (default: “331”)
      • aggs (number, optional): Aggregation flag (default: 1)
    • Returns: Array of products with name, price, image URL, and ID
  2. add_to_cart

    • Add one or more items to the shopping cart
    • Inputs:
      • store (string): Store identifier (e.g., “331”)
      • items (array): List of items to add, each containing:
        • id (number): Product identifier
        • quantity (number): Quantity to add (minimum: 1)
    • Returns: Updated cart contents with prices and discounts
  3. remove_from_cart

    • Remove items from the cart by providing an updated list of items to keep
    • Inputs:
      • store (string): Store identifier
      • items (array): Updated list of items to keep in cart
    • Returns: Updated cart contents
  4. update_quantity

    • Update the quantity of an item in the cart
    • Inputs:
      • store (string): Store identifier
      • id (number): Product identifier
      • newQuantity (number): New quantity for the product (minimum: 1)
    • Returns: Updated cart contents

Resources

  1. rami-levy://checkout
    • Get the URL for the Rami Levy checkout page
    • Returns: Checkout page URL

Setup

Authentication

This MCP server requires authentication tokens from an active Rami Levy session. To obtain these:

  1. Log in to Rami Levy’s website
  2. Open your browser’s developer tools (F12)
  3. Go to the Network tab
  4. Make any request (e.g., search for a product)
  5. From the request headers, extract:
    • RAMI_LEVY_API_KEY: The token after “Bearer” in the Authorization header
    • ECOM_TOKEN: The full ecomtoken header value
    • COOKIE: The complete cookie header value

Environment Variables

Create a .env file with the following variables:

RAMI_LEVY_API_KEY=your_api_key_here
ECOM_TOKEN=your_ecom_token_here
COOKIE=your_cookie_string_here

Usage with Claude Desktop

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "rami-levy": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-rami-levy"
      ],
      "env": {
        "RAMI_LEVY_API_KEY": "",
        "ECOM_TOKEN": "",
        "COOKIE": ""
      }
    }
  }
}

Development

  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Start the server:
npm start

Security Considerations

⚠️ Important: This is a proof of concept implementation. Please note:

GitHub에서 전체 README 보기

설치

npx -y @modelcontextprotocol/server-rami-levy
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "rami-levy": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-rami-levy" ], "env": { "RAMI_LEVY_API_KEY": "<YOUR_API_KEY>", "ECOM_TOKEN": "<YOUR_ECOM_TOKEN>", "COOKIE": "<YOUR_COOKIE>" } } } }