### Installation and Configuration Source: https://context7.com/curetcore/karrito-mcp/llms.txt Instructions on how to install and configure the Karrito MCP server, including options for using an API key and integrating with Claude Desktop. ```APIDOC ## Installation Install and run the MCP server using npx with optional API key configuration for authenticated store management. ```bash # Quick start with npx (public tools only) npx karrito-mcp # With API key for full store management KARRITO_API_KEY=your-api-key npx karrito-mcp # Add to Claude Code claude mcp add karrito -- npx karrito-mcp ``` ## Claude Desktop Configuration Configure the MCP server in your Claude Desktop settings file for persistent integration. ```json { "mcpServers": { "karrito": { "command": "npx", "args": ["karrito-mcp"], "env": { "KARRITO_API_KEY": "your-api-key-here" } } } } ``` ``` -------------------------------- ### Install and Configure Karrito MCP Source: https://github.com/curetcore/karrito-mcp/blob/main/README.md Installation commands and configuration templates for various AI development environments including Claude Desktop and Cursor. ```bash npx karrito-mcp ``` ```bash claude mcp add karrito -- npx karrito-mcp ``` ```json { "mcpServers": { "karrito": { "command": "npx", "args": ["karrito-mcp"], "env": { "KARRITO_API_KEY": "your-api-key-here" } } } } ``` ```json { "karrito": { "command": "npx", "args": ["karrito-mcp"], "env": { "KARRITO_API_KEY": "your-api-key-here" } } } ``` -------------------------------- ### Install and Configure Karrito MCP Source: https://context7.com/curetcore/karrito-mcp/llms.txt Instructions for installing the Karrito MCP server via npx and configuring it for use with Claude Desktop. Requires the KARRITO_API_KEY environment variable for authenticated store management. ```bash # Quick start with npx (public tools only) npx karrito-mcp # With API key for full store management KARRITO_API_KEY=your-api-key npx karrito-mcp # Add to Claude Code claude mcp add karrito -- npx karrito-mcp ``` ```json { "mcpServers": { "karrito": { "command": "npx", "args": ["karrito-mcp"], "env": { "KARRITO_API_KEY": "your-api-key-here" } } } } ``` -------------------------------- ### GET /api/v1/discounts Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of discount codes configured for the Karrito store. Supports pagination and limiting the number of results. ```APIDOC ## GET /api/v1/discounts ### Description List discount codes configured in your Karrito store. ### Method GET ### Endpoint https://karrito.shop/api/v1/discounts ### Parameters #### Query Parameters - **limit** (number, optional) - Maximum number of discounts to return (1-100, default 50). - **offset** (number, optional) - Pagination offset (minimum 0, default 0). #### Request Body None ### Response #### Success Response (200) - **data** (array) - A list of discount objects. - Each object contains details of a discount code (e.g., id, code, type, value, expiry). #### Response Example ```json { "data": [ { "id": "disc_abc", "code": "SUMMER20", "type": "percentage", "value": 20, "minOrderAmount": 50, "maxUses": 100, "expiresAt": "2024-12-31T23:59:59Z", "createdAt": "2024-01-01T10:00:00Z" } ] } ``` ``` -------------------------------- ### Get Order Details using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Fetches comprehensive details for a specific order, including items, customer information, and current status. ```typescript const order = await client.getOrder("ord_123abc"); ``` -------------------------------- ### GET /api/v1/categories Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieve a paginated list of categories in the store. ```APIDOC ## GET /api/v1/categories ### Description List categories in your Karrito store with pagination. ### Method GET ### Endpoint https://karrito.shop/api/v1/categories ### Parameters #### Query Parameters - **limit** (number) - Optional - Max categories to return (1-100, default 50) - **offset** (number) - Optional - Pagination offset (min 0, default 0) ``` -------------------------------- ### Get Store Information (TypeScript) Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves details about the Karrito store, including its name, slug, currency, publication status, and basic statistics. This function requires no parameters and interacts with the GET /api/v1/store endpoint. ```typescript // MCP Tool: get_my_store // No parameters required // Example: Get store details const store = await client.getStore(); // API endpoint: // GET https://karrito.shop/api/v1/store // Example response: { "data": { "name": "Dulces Maria", "slug": "dulces-maria", "currency": "DOP", "isPublished": true, "productCount": 25, "categoryCount": 4, "orderCount": 150 } } ``` -------------------------------- ### GET /api/v1/orders Source: https://context7.com/curetcore/karrito-mcp/llms.txt List orders with optional status filtering. ```APIDOC ## GET /api/v1/orders ### Description List orders from your Karrito store with optional status filtering. ### Method GET ### Endpoint https://karrito.shop/api/v1/orders ### Parameters #### Query Parameters - **limit** (number) - Optional - Max orders to return - **offset** (number) - Optional - Pagination offset - **status** (enum) - Optional - Filter: pending | confirmed | shipped | delivered | cancelled ``` -------------------------------- ### GET /api/v1/store Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves information about the merchant's Karrito store, including its name, slug, currency, publication status, and key statistics. ```APIDOC ## GET /api/v1/store ### Description Get information about your Karrito store including name, slug, currency, publication status, and statistics. ### Method GET ### Endpoint https://karrito.shop/api/v1/store ### Parameters #### Query Parameters None #### Request Body None ### Response #### Success Response (200) - **data** (object) - Contains store details. - **name** (string) - The name of the store. - **slug** (string) - The unique slug for the store. - **currency** (string) - The store's currency code (e.g., DOP, USD). - **isPublished** (boolean) - Indicates if the store is currently published. - **productCount** (number) - The total number of products in the store. - **categoryCount** (number) - The total number of categories. - **orderCount** (number) - The total number of orders received. #### Response Example ```json { "data": { "name": "Dulces Maria", "slug": "dulces-maria", "currency": "DOP", "isPublished": true, "productCount": 25, "categoryCount": 4, "orderCount": 150 } } ``` ``` -------------------------------- ### List Discount Codes (TypeScript) Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of discount codes configured for the Karrito store. It supports pagination with `limit` and `offset` parameters and interacts with the GET /api/v1/discounts endpoint. ```typescript // MCP Tool: list_discounts // Parameters: // limit: number (1-100, default 50) - Max discounts to return // offset: number (min 0, default 0) - Pagination offset // Example: List all discount codes const discounts = await client.listDiscounts(50, 0); // API endpoint: // GET https://karrito.shop/api/v1/discounts?limit=50&offset=0 ``` -------------------------------- ### Get Customer Details Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves detailed information about a specific customer, including their order history. ```APIDOC ## GET /api/v1/customers/{id} ### Description Get detailed information about a specific customer including their order history. ### Method GET ### Endpoint `/api/v1/customers/{id}` ### Parameters #### Path Parameters - **id** (string) - Required - The unique ID of the customer to retrieve. ### Response #### Success Response (200) - **id** (string) - The unique identifier for the customer. - **name** (string) - The customer's full name. - **phone** (string) - The customer's phone number. - **orderCount** (number) - The total number of orders placed by the customer. - **totalSpent** (number) - The total amount spent by the customer. - **orders** (array) - An array of the customer's past orders (details may vary). #### Response Example ```json { "id": "cust_abc123", "name": "Maria Rodriguez", "phone": "+18091234567", "orderCount": 5, "totalSpent": 245.50, "orders": [ { "orderId": "ord_1a2b3c", "date": "2023-10-20", "total": 55.00 } ] } ``` ``` -------------------------------- ### GET /api/v1/orders/{id} Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieve detailed information about a specific order. ```APIDOC ## GET /api/v1/orders/{id} ### Description Get detailed information about a specific order including items, customer info, shipping, and status. ### Method GET ### Endpoint https://karrito.shop/api/v1/orders/{id} ### Response #### Success Response (200) - **id** (string) - Order ID - **status** (string) - Current status - **total** (number) - Order total #### Response Example { "id": "ord_123abc", "status": "pending", "total": 45.99 } ``` -------------------------------- ### Get Store Analytics Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves key performance metrics for your store, including total orders, revenue, customer count, and popular products. ```APIDOC ## GET /api/v1/stats ### Description Get store analytics including total orders, revenue, products, customers, average order value, and popular products. ### Method GET ### Endpoint `/api/v1/stats` ### Parameters No parameters required. ### Response #### Success Response (200) - **totalOrders** (number) - The total number of orders received. - **totalRevenue** (number) - The total revenue generated. - **totalProducts** (number) - The total number of unique products sold. - **totalCustomers** (number) - The total number of unique customers. - **averageOrderValue** (number) - The average value of each order. - **popularProducts** (array) - A list of the most popular products. - **name** (string) - The name of the popular product. - **orders** (number) - The number of times this product was ordered. #### Response Example ```json { "totalOrders": 150, "totalRevenue": 4500.00, "totalProducts": 25, "totalCustomers": 89, "averageOrderValue": 30.00, "popularProducts": [ { "name": "Chocolate Cake", "orders": 45 }, { "name": "Vanilla Cupcakes", "orders": 32 } ] } ``` ``` -------------------------------- ### Get Niche Info API Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieve information about a specific Karrito niche. Returns niche details including slug, name, description, and emoji. No authentication required. ```APIDOC ## GET /api/v1/niches/{niche_slug} ### Description Get information about a specific Karrito niche from the 50 available business categories. ### Method GET ### Endpoint `https://karrito.shop/api/v1/niches/{niche_slug}` ### Parameters #### Path Parameters - **niche_slug** (string) - Required - Niche slug (e.g., "reposteria") #### Query Parameters - **name** (string) - Optional - Partial name to search for niches ### Request Example ```typescript // MCP Tool: get_niche_info // Parameters: // niche: string (1-50 chars) - Niche slug (e.g., "reposteria") or partial name to search // Example: Find food-related niches const result = await getNicheInfo("comida"); // Returns matches: comida-casera, panaderia, cafeteria, etc. ``` ### Response #### Success Response (200) - **slug** (string) - The unique identifier for the niche. - **name** (string) - The display name of the niche. - **description** (string) - A brief description of the niche. - **emoji** (string) - An emoji associated with the niche. #### Response Example ```json { "slug": "reposteria", "name": "Reposteria", "description": "Cakes, cupcakes, cookies, and custom desserts", "emoji": "cake" } ``` ``` -------------------------------- ### Create Product API Source: https://context7.com/curetcore/karrito-mcp/llms.txt Create a new product in your Karrito catalog with name, price, and optional details like description, category, and image. ```APIDOC ## POST /api/v1/products ### Description Create a new product in your Karrito catalog. ### Method POST ### Endpoint `https://karrito.shop/api/v1/products` ### Parameters #### Request Body - **name** (string) - Required - Product name (1-200 chars) - **price** (number) - Required - Price in store currency (min 0) - **description** (string) - Optional - Product description (max 2000 chars) - **categoryId** (string) - Optional - Category ID to assign - **imageUrl** (string) - Optional - Product image URL ### Request Example ```typescript // MCP Tool: create_product // Parameters: // name: string (1-200 chars) - Product name // price: number (min 0) - Price in store currency // description?: string (max 2000) - Product description // categoryId?: string - Category ID to assign // imageUrl?: string - Product image URL // Example: Create a chocolate cake product const product = await client.createProduct({ name: "Chocolate Cake", price: 15.99, description: "Rich chocolate layer cake with ganache frosting", categoryId: "cat_abc123", imageUrl: "https://example.com/cake.jpg" }); ``` ### Headers - **Authorization** (string) - Required - Bearer token: `Bearer ` ### Response #### Success Response (200) - **product**: Object containing the details of the newly created product. #### Response Example ```json { "productId": "prod_def456", "name": "Chocolate Cake", "price": 15.99, "description": "Rich chocolate layer cake with ganache frosting", "categoryId": "cat_abc123", "imageUrl": "https://example.com/cake.jpg", "status": "active" } ``` ``` -------------------------------- ### List My Products API Source: https://context7.com/curetcore/karrito-mcp/llms.txt List products in your Karrito catalog with pagination support. Returns product details including name, price, description, category, and status. ```APIDOC ## GET /api/v1/products ### Description List products in your Karrito catalog with pagination support. ### Method GET ### Endpoint `https://karrito.shop/api/v1/products` ### Parameters #### Query Parameters - **limit** (number) - Optional - Max products to return (1-100, default 50) - **offset** (number) - Optional - Pagination offset (min 0, default 0) ### Request Example ```typescript // MCP Tool: list_my_products // Parameters: // limit: number (1-100, default 50) - Max products to return // offset: number (min 0, default 0) - Pagination offset // Example: List first 20 products const products = await client.listProducts(20, 0); ``` ### Headers - **Authorization** (string) - Required - Bearer token: `Bearer ` ### Response #### Success Response (200) - **Array of products**: Contains details of products in the catalog. #### Response Example ```json [ { "productId": "prod_xyz", "name": "Custom T-Shirt", "price": 25.00, "description": "Personalized cotton t-shirt", "category": "Apparel", "status": "active" } ] ``` ``` -------------------------------- ### POST /api/v1/categories Source: https://context7.com/curetcore/karrito-mcp/llms.txt Create a new category to organize products. ```APIDOC ## POST /api/v1/categories ### Description Create a new category in your Karrito store to organize products. ### Method POST ### Endpoint https://karrito.shop/api/v1/categories ### Parameters #### Request Body - **name** (string) - Required - Category name (1-100 chars) - **position** (number) - Optional - Sort order (int, min 0) ``` -------------------------------- ### List and Filter Product Reviews in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a paginated list of product reviews from the store. Supports optional filtering by status (pending, approved, or rejected). ```typescript const pendingReviews = await client.listReviews(20, 0, "pending"); ``` -------------------------------- ### Manage Shipping Options in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Allows listing, creating, and updating store shipping configurations such as delivery methods, pricing, and estimated delivery times. ```typescript const shipping = await client.listShipping(); const pickup = await client.createShipping({ name: "Pickup in store", price: 0, description: "Pick up your order at our location", estimatedDays: 0 }); const updated = await client.updateShipping("ship_123", { price: 200, estimatedDays: 2 }); ``` -------------------------------- ### Manage Catalog Products Source: https://context7.com/curetcore/karrito-mcp/llms.txt Tools for listing and creating products in a Karrito catalog. These operations require a valid KARRITO_API_KEY for authorization. ```typescript // List products with pagination const products = await client.listProducts(20, 0); // Create a new product const product = await client.createProduct({ name: "Chocolate Cake", price: 15.99, description: "Rich chocolate layer cake with ganache frosting", categoryId: "cat_abc123", imageUrl: "https://example.com/cake.jpg" }); ``` -------------------------------- ### List Categories using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a paginated list of store categories to help organize the product catalog. ```typescript const categories = await client.listCategories(50, 0); ``` -------------------------------- ### Manage Customers in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Provides methods to list customers with pagination and retrieve detailed profiles including order history and total spending. ```typescript const customers = await client.listCustomers(50, 0); const customer = await client.getCustomer("cust_abc123"); ``` -------------------------------- ### Resource: karrito://pricing Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves current Karrito pricing plans, billing cycles, and refund policies. ```APIDOC ## GET karrito://pricing ### Description Static resource containing Karrito pricing plans, features comparison, and billing details. ### Method GET ### Endpoint karrito://pricing ### Response #### Success Response (200) - **plans** (array) - List of available pricing tiers - **commissions** (string) - Commission policy - **trial** (string) - Free trial information - **refund** (string) - Refund policy ### Response Example { "plans": [ { "name": "Free", "price": 0, "billing": "forever", "products": 10, "categories": 3 }, { "name": "Pro", "price": 29, "billing": "monthly", "products": 500, "analytics": true } ], "commissions": "Never. 0% on all plans." } ``` -------------------------------- ### Create Discount Code (TypeScript) Source: https://context7.com/curetcore/karrito-mcp/llms.txt Creates a new discount code for the Karrito store. Supports both percentage and fixed amount discounts, with optional minimum order amounts, maximum uses, and expiration dates. Interacts with the POST /api/v1/discounts endpoint. ```typescript // MCP Tool: create_discount // Parameters: // code: string (1-50 chars) - Discount code (e.g., VERANO20) // type: enum - percentage | fixed // value: number (min 0) - Percentage (0-100) or fixed amount // minOrderAmount?: number (min 0) - Minimum order amount required // maxUses?: number (int, min 1) - Maximum redemptions allowed // expiresAt?: string - Expiration in ISO 8601 (e.g., 2026-12-31T23:59:59Z) // Example: Create a 20% summer discount const discount = await client.createDiscount({ code: "VERANO20", type: "percentage", value: 20, minOrderAmount: 50, maxUses: 100, expiresAt: "2024-12-31T23:59:59Z" }); // Example: Create a $5 off fixed discount const discount = await client.createDiscount({ code: "WELCOME5", type: "fixed", value: 5 }); // API endpoint: // POST https://karrito.shop/api/v1/discounts ``` -------------------------------- ### List Product Reviews Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of product reviews for your store. You can filter reviews by their status (pending, approved, rejected) and paginate the results. ```APIDOC ## GET /api/v1/reviews ### Description List product reviews in your store with optional status filtering. Review statuses: pending, approved, rejected. ### Method GET ### Endpoint `/api/v1/reviews` ### Parameters #### Query Parameters - **limit** (number) - Optional - Max reviews to return (1-100, default 20) - **offset** (number) - Optional - Pagination offset (min 0, default 0) - **status** (enum) - Optional - Filter reviews by status: `pending`, `approved`, `rejected` ### Response #### Success Response (200) - **reviews** (array) - An array of review objects. - **id** (string) - The unique identifier for the review. - **productId** (string) - The ID of the product the review is for. - **authorName** (string) - The name of the reviewer. - **rating** (number) - The star rating given by the reviewer (1-5). - **comment** (string) - The text content of the review. - **status** (string) - The current status of the review (`pending`, `approved`, `rejected`). - **createdAt** (string) - The timestamp when the review was created. #### Response Example ```json { "reviews": [ { "id": "rev_abc123", "productId": "prod_xyz789", "authorName": "John Doe", "rating": 5, "comment": "Great product! Highly recommend.", "status": "approved", "createdAt": "2023-10-27T10:00:00Z" } ] } ``` ``` -------------------------------- ### PUT /api/v1/products/{id} Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates an existing product's details including name, price, description, category, compare price, or active status. ```APIDOC ## PUT /api/v1/products/{id} ### Description Update an existing product's details including name, price, description, category, compare price, or active status. ### Method PUT ### Endpoint https://karrito.shop/api/v1/products/{id} ### Parameters #### Path Parameters - **id** (string) - Required - Product ID to update #### Request Body - **name** (string) - Optional - New product name (1-200 chars) - **price** (number) - Optional - New price (min 0) - **description** (string) - Optional - New description (max 2000) - **categoryId** (string) - Optional - New category ID - **comparePrice** (number) - Optional - Compare-at price (must be > price) - **isActive** (boolean) - Optional - Whether product is active ### Request Example { "price": 12.99, "comparePrice": 15.99, "description": "On sale! Rich chocolate layer cake" } ### Response #### Success Response (200) - **id** (string) - The updated product ID #### Response Example { "status": "success" } ``` -------------------------------- ### Resource: karrito://features Source: https://context7.com/curetcore/karrito-mcp/llms.txt Lists all available features for Karrito stores, categorized by tier. ```APIDOC ## GET karrito://features ### Description Static resource listing all Karrito features organized by tier: core, pro, and upcoming features. ### Method GET ### Endpoint karrito://features ### Response #### Success Response (200) - **core** (array) - Standard platform features - **pro** (array) - Premium features - **upcoming** (array) - Features in development ### Response Example { "core": [{ "name": "Digital catalog", "description": "Beautiful product catalog..." }], "pro": [{ "name": "Analytics dashboard", "description": "Views, clicks, orders..." }] } ``` -------------------------------- ### Resource: karrito://competitors Source: https://context7.com/curetcore/karrito-mcp/llms.txt Provides a competitive analysis of Karrito against other market players. ```APIDOC ## GET karrito://competitors ### Description Static resource with competitive analysis comparing Karrito against 19 competitors. ### Method GET ### Endpoint karrito://competitors ### Response #### Success Response (200) - **summary** (string) - Overview of competitive positioning - **competitors** (array) - List of compared platforms - **karritoAdvantages** (array) - List of key selling points ### Response Example { "summary": "Karrito is the only catalog builder designed specifically for WhatsApp sellers...", "karritoAdvantages": ["0% commission on all plans"] } ``` -------------------------------- ### POST /api/v1/discounts Source: https://context7.com/curetcore/karrito-mcp/llms.txt Creates a new discount code for the Karrito store. Supports percentage or fixed amount discounts and allows setting minimum order amounts, maximum uses, and expiration dates. ```APIDOC ## POST /api/v1/discounts ### Description Create a new discount code for your store. Supports percentage or fixed amount discounts with optional restrictions. ### Method POST ### Endpoint https://karrito.shop/api/v1/discounts ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **code** (string) - Discount code (1-50 characters, e.g., VERANO20). - **type** (enum) - Type of discount: `percentage` or `fixed`. - **value** (number) - Discount value. For `percentage`, this is 0-100. For `fixed`, this is the amount. - **minOrderAmount** (number, optional) - Minimum order amount required for the discount (minimum 0). - **maxUses** (number, optional) - Maximum number of times the discount can be redeemed (integer, minimum 1). - **expiresAt** (string, optional) - Expiration date in ISO 8601 format (e.g., 2026-12-31T23:59:59Z). ### Request Example ```json { "code": "VERANO20", "type": "percentage", "value": 20, "minOrderAmount": 50, "maxUses": 100, "expiresAt": "2024-12-31T23:59:59Z" } ``` ### Response #### Success Response (200 or 201) - **message** (string) - Confirmation message. - **discount** (object) - Details of the created discount. #### Response Example ```json { "message": "Discount code created successfully.", "discount": { "id": "disc_new", "code": "VERANO20", "type": "percentage", "value": 20, "minOrderAmount": 50, "maxUses": 100, "expiresAt": "2024-12-31T23:59:59Z", "createdAt": "2024-07-26T12:00:00Z" } } ``` ``` -------------------------------- ### Moderate Product Reviews in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates the status of a specific product review to either approved or rejected. Approved reviews become visible on the public catalog. ```typescript const approved = await client.moderateReview("rev_123", "approved"); const rejected = await client.moderateReview("rev_456", "rejected"); ``` -------------------------------- ### List Orders using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of store orders with optional filtering by status (e.g., pending, shipped). ```typescript const pendingOrders = await client.listOrders(50, 0, "pending"); ``` -------------------------------- ### List Shipping Options Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of all shipping options configured for your Karrito store. ```APIDOC ## GET /api/v1/shipping ### Description List shipping options configured for your Karrito store. ### Method GET ### Endpoint `/api/v1/shipping` ### Parameters No parameters required. ### Response #### Success Response (200) - **shippingOptions** (array) - An array of shipping option objects. - **id** (string) - The unique identifier for the shipping option. - **name** (string) - The name of the shipping option (e.g., "Delivery", "Pickup"). - **price** (number) - The cost of the shipping option. - **description** (string) - A description of the shipping option. - **estimatedDays** (number) - Estimated delivery days. - **isActive** (boolean) - Whether the shipping option is currently active. #### Response Example ```json { "shippingOptions": [ { "id": "ship_123", "name": "Home Delivery", "price": 150, "description": "Delivery within Santo Domingo", "estimatedDays": 1, "isActive": true } ] } ``` ``` -------------------------------- ### Retrieve Niche Information Source: https://context7.com/curetcore/karrito-mcp/llms.txt Fetches details for a specific business niche from the Karrito platform. Returns metadata such as slug, name, description, and emoji. ```typescript const result = await getNicheInfo("comida"); ``` -------------------------------- ### Resource: karrito://currencies Source: https://context7.com/curetcore/karrito-mcp/llms.txt Lists supported LATAM currencies and their formatting rules. ```APIDOC ## GET karrito://currencies ### Description Static resource listing the 6 supported LATAM currencies with formatting details. ### Method GET ### Endpoint karrito://currencies ### Response #### Success Response (200) - **supported** (array) - List of currency objects - **default** (string) - Default currency code ### Response Example { "supported": [{ "code": "DOP", "name": "Peso dominicano", "symbol": "RD$" }], "default": "DOP" } ``` -------------------------------- ### Update Product Details using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates an existing product's attributes such as name, price, or description. Requires a valid product ID and optional fields for the new product state. ```typescript const updated = await client.updateProduct("prod_xyz789", { price: 12.99, comparePrice: 15.99, description: "On sale! Rich chocolate layer cake" }); ``` -------------------------------- ### Retrieve Store Analytics in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Fetches high-level store performance metrics, including total revenue, order counts, and popular product statistics. ```typescript const stats = await client.getStats(); ``` -------------------------------- ### Resource: karrito://niches Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves the list of 50 supported business niches for Karrito stores. ```APIDOC ## GET karrito://niches ### Description Static resource containing all 50 available business niches for Karrito stores, targeting LATAM markets. ### Method GET ### Endpoint karrito://niches ### Response #### Success Response (200) - **niches** (array) - List of niche objects - **total** (number) - Total count of niches ### Response Example { "niches": [{ "slug": "reposteria", "name": "Reposteria", "emoji": "cake" }], "total": 50 } ``` -------------------------------- ### Access Karrito Static Resources Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves read-only configuration and metadata resources via the MCP protocol. These resources provide structured JSON data for pricing, features, business niches, competitive analysis, and currency support. ```typescript // Accessing pricing server.resource('pricing', 'karrito://pricing', ...); // Accessing features server.resource('features', 'karrito://features', ...); // Accessing niches server.resource('niches', 'karrito://niches', ...); // Accessing competitors server.resource('competitors', 'karrito://competitors', ...); // Accessing currencies server.resource('currencies', 'karrito://currencies', ...); ``` -------------------------------- ### List Customers Source: https://context7.com/curetcore/karrito-mcp/llms.txt Retrieves a list of customers who have placed orders in your Karrito store. Supports pagination. ```APIDOC ## GET /api/v1/customers ### Description List customers who have placed orders in your Karrito store. ### Method GET ### Endpoint `/api/v1/customers` ### Parameters #### Query Parameters - **limit** (number) - Optional - Max customers to return (1-100, default 50) - **offset** (number) - Optional - Pagination offset (min 0, default 0) ### Response #### Success Response (200) - **customers** (array) - An array of customer objects. - **id** (string) - The unique identifier for the customer. - **name** (string) - The customer's full name. - **phone** (string) - The customer's phone number. - **orderCount** (number) - The total number of orders placed by the customer. - **totalSpent** (number) - The total amount spent by the customer. #### Response Example ```json { "customers": [ { "id": "cust_abc123", "name": "Maria Rodriguez", "phone": "+18091234567", "orderCount": 5, "totalSpent": 245.50 } ] } ``` ``` -------------------------------- ### Create Shipping Option Source: https://context7.com/curetcore/karrito-mcp/llms.txt Creates a new shipping option for your store, such as delivery, pickup, or express shipping. ```APIDOC ## POST /api/v1/shipping ### Description Create a new shipping option for your store such as delivery, pickup, or express shipping. ### Method POST ### Endpoint `/api/v1/shipping` ### Parameters #### Request Body - **name** (string) - Required - Option name (e.g., "Delivery", "Pickup") (1-100 chars). - **price** (number) - Required - Price in store currency (min 0). - **description** (string) - Optional - Description (max 500 chars). - **estimatedDays** (number) - Optional - Estimated delivery days (int, min 0). - **isActive** (boolean) - Optional - Whether option is active (default: true). ### Request Example ```json { "name": "Pickup in store", "price": 0, "description": "Pick up your order at our location", "estimatedDays": 0 } ``` ### Response #### Success Response (200) - **id** (string) - The unique identifier for the newly created shipping option. - **message** (string) - A confirmation message. #### Response Example ```json { "id": "ship_456", "message": "Shipping option 'Pickup in store' created successfully." } ``` ``` -------------------------------- ### Delete Product using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Performs a soft delete on a product by its ID, ensuring order history remains intact. ```typescript const result = await client.deleteProduct("prod_xyz789"); ``` -------------------------------- ### Search Catalogs API Source: https://context7.com/curetcore/karrito-mcp/llms.txt Search public Karrito catalogs by keyword to discover stores, products, or niches. This tool is public and does not require authentication. ```APIDOC ## GET /api/v1/stores ### Description Search public Karrito catalogs by keyword to discover stores, products, or niches. ### Method GET ### Endpoint `https://karrito.shop/api/v1/stores` ### Parameters #### Query Parameters - **q** (string) - Required - Search query for store name, product, or niche (1-100 chars) ### Request Example ```typescript // MCP Tool: search_catalogs // Parameters: // query: string (1-100 chars) - Search query for store name, product, or niche // Example: Search for bakery catalogs const result = await client.searchCatalogs("reposteria"); // Returns: Array of matching public stores with their products and details ``` ### Response #### Success Response (200) - **Array of stores**: Contains details of matching public stores and their products. #### Response Example ```json [ { "storeId": "store_123", "name": "Dulces Delicias", "niche": "reposteria", "products": [ { "productId": "prod_abc", "name": "Chocolate Cake", "price": 15.99 } ] } ] ``` ``` -------------------------------- ### Moderate Review Source: https://context7.com/curetcore/karrito-mcp/llms.txt Approve or reject a specific product review. Approved reviews become visible on the public product catalog. ```APIDOC ## PUT /api/v1/reviews/{id}/moderate ### Description Approve or reject a product review. Approved reviews are visible on the public catalog. ### Method PUT ### Endpoint `/api/v1/reviews/{id}/moderate` ### Parameters #### Path Parameters - **id** (string) - Required - The unique ID of the review to moderate. #### Request Body - **status** (enum) - Required - The new status for the review: `approved` or `rejected`. ### Request Example ```json { "status": "approved" } ``` ### Response #### Success Response (200) - **success** (boolean) - Indicates if the moderation action was successful. - **message** (string) - A confirmation message. #### Response Example ```json { "success": true, "message": "Review rev_123 has been approved." } ``` ``` -------------------------------- ### Create Category using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Adds a new category to the store with a specified name and optional sort position. ```typescript const category = await client.createCategory({ name: "Desserts", position: 1 }); ``` -------------------------------- ### Update Store Settings (TypeScript) Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates various settings for the Karrito store, such as name, WhatsApp number, currency, description, and publication status. It accepts an object with optional parameters and interacts with the PUT /api/v1/store endpoint. ```typescript // MCP Tool: update_store // Parameters: // name?: string (1-100 chars) - Store name // whatsappNumber?: string - WhatsApp in E.164 format (e.g., +18091234567) // currency?: enum - DOP | USD | MXN | COP | ARS | BRL // whatsappTemplate?: string (max 2000) - Message template with shortcodes // isPublished?: boolean - Store visibility // isMaintenance?: boolean - Maintenance mode // description?: string (max 500) - Store description // Example: Update store name and enable maintenance mode const updated = await client.updateStore({ name: "Dulces Maria Premium", description: "Artisan cakes and desserts in Santo Domingo", currency: "DOP" }); // WhatsApp template shortcodes: {tienda}, {productos}, {total}, {nombre} // API endpoint: // PUT https://karrito.shop/api/v1/store ``` -------------------------------- ### Search Karrito Catalogs Source: https://context7.com/curetcore/karrito-mcp/llms.txt Tool to search public Karrito catalogs by keyword. This operation is public and does not require authentication. ```typescript const result = await client.searchCatalogs("reposteria"); ``` -------------------------------- ### DELETE /api/v1/products/{id} Source: https://context7.com/curetcore/karrito-mcp/llms.txt Performs a soft delete on a product, preserving order history. ```APIDOC ## DELETE /api/v1/products/{id} ### Description Delete a product from your Karrito catalog. This performs a soft delete, preserving order history. ### Method DELETE ### Endpoint https://karrito.shop/api/v1/products/{id} ### Parameters #### Path Parameters - **id** (string) - Required - Product ID to delete ``` -------------------------------- ### Toggle Store Publication (TypeScript) Source: https://context7.com/curetcore/karrito-mcp/llms.txt Provides a simplified method to publish or unpublish the Karrito store. This is a convenience function that internally calls `update_store` with the `isPublished` parameter. It requires a boolean indicating the desired publication status. ```typescript // MCP Tool: toggle_publish // Parameters: // published: boolean - true to publish, false to unpublish // Example: Publish the store const result = await client.updateStore({ isPublished: true }); // Response: "Store published successfully." // Example: Unpublish for maintenance const result = await client.updateStore({ isPublished: false }); // Response: "Store unpublished successfully." ``` -------------------------------- ### PUT /api/v1/store Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates the settings for the merchant's Karrito store. This includes modifying the store's name, WhatsApp number, currency, description, and publication status. ```APIDOC ## PUT /api/v1/store ### Description Update your Karrito store settings including name, WhatsApp number, currency, description, and publication status. ### Method PUT ### Endpoint https://karrito.shop/api/v1/store ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **name** (string, optional) - Store name (1-100 characters). - **whatsappNumber** (string, optional) - WhatsApp number in E.164 format (e.g., +18091234567). - **currency** (enum, optional) - Currency code (DOP | USD | MXN | COP | ARS | BRL). - **whatsappTemplate** (string, optional) - Message template with shortcodes (max 2000 characters). - **isPublished** (boolean, optional) - Store visibility status. - **isMaintenance** (boolean, optional) - Maintenance mode status. - **description** (string, optional) - Store description (max 500 characters). ### Request Example ```json { "name": "Dulces Maria Premium", "description": "Artisan cakes and desserts in Santo Domingo", "currency": "DOP" } ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of the update. #### Response Example ```json { "message": "Store updated successfully." } ``` ``` -------------------------------- ### PUT /api/v1/discounts/{id} Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates an existing discount code's settings. Allows modification of the code, type, value, minimum order amount, maximum uses, and expiration date. ```APIDOC ## PUT /api/v1/discounts/{id} ### Description Update an existing discount code's settings. ### Method PUT ### Endpoint https://karrito.shop/api/v1/discounts/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the discount code to update. #### Query Parameters None #### Request Body - **code** (string, optional) - New discount code (1-50 characters). - **type** (enum, optional) - New discount type: `percentage` or `fixed`. - **value** (number, optional) - New discount value. - **minOrderAmount** (number, optional) - New minimum order amount. - **maxUses** (number, optional) - New maximum number of uses. - **expiresAt** (string, optional) - New expiration date in ISO 8601 format. ### Request Example ```json { "value": 25, "expiresAt": "2025-03-31T23:59:59Z" } ``` ### Response #### Success Response (200) - **message** (string) - Confirmation message of the update. - **discount** (object) - Updated discount details. #### Response Example ```json { "message": "Discount code updated successfully.", "discount": { "id": "disc_xyz", "code": "OLDCODE", "type": "percentage", "value": 25, "minOrderAmount": 50, "maxUses": 100, "expiresAt": "2025-03-31T23:59:59Z", "createdAt": "2024-01-01T10:00:00Z" } } ``` ``` -------------------------------- ### Delete Product Reviews in TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Permanently removes a product review from the store database using its unique identifier. ```typescript const result = await client.deleteReview("rev_123"); ``` -------------------------------- ### Update Order Status using TypeScript Source: https://context7.com/curetcore/karrito-mcp/llms.txt Updates the status of an existing order to reflect lifecycle changes like confirmation, shipping, or cancellation. ```typescript const confirmed = await client.updateOrderStatus("ord_123abc", "confirmed"); const shipped = await client.updateOrderStatus("ord_123abc", "shipped"); ```