Skip to main content
Glama
dan1d

mercadolibre-mcp

by dan1d

mercadolibre-mcp

MercadoLibre marketplace for AI agents.

npm version tests npm downloads license

MCP server that connects AI agents to MercadoLibre, the largest e-commerce marketplace in Latin America (150M+ users). Search products, get item details, browse categories, track trends, and convert currencies across Argentina, Brazil, Mexico, Chile, Colombia, and more.

npm | GitHub


Quick Start

No API key required for public endpoints (search, items, categories, trends).

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "mercadolibre": {
      "command": "npx",
      "args": ["-y", "@dan1d/mercadolibre-mcp"]
    }
  }
}

Claude Code

claude mcp add mercadolibre -- npx -y @dan1d/mercadolibre-mcp

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "mercadolibre": {
      "command": "npx",
      "args": ["-y", "@dan1d/mercadolibre-mcp"]
    }
  }
}

Windsurf

{
  "mcpServers": {
    "mercadolibre": {
      "command": "npx",
      "args": ["-y", "@dan1d/mercadolibre-mcp"]
    }
  }
}

With authentication (optional)

For endpoints that require auth (future premium features), add your access token:

{
  "mcpServers": {
    "mercadolibre": {
      "command": "npx",
      "args": ["-y", "@dan1d/mercadolibre-mcp"],
      "env": {
        "MERCADOLIBRE_ACCESS_TOKEN": "APP_USR-..."
      }
    }
  }
}

Once configured, ask your AI assistant things like: "Search for iPhone 15 on MercadoLibre" or "What are the trending searches in Argentina?" or "Show me details for item MLA1234567890"


Related MCP server: cobroya

Available Tools

Tool

Description

search_items

Search products by keyword. Filter by category, price range, and site (MLA=Argentina, MLB=Brazil, MLM=Mexico, MLC=Chile, MCO=Colombia).

get_item

Get full item details: title, price, pictures, seller, condition, stock, and more.

get_item_description

Get the full text description of an item.

get_categories

List all top-level categories for a MercadoLibre site.

get_category

Get category details including name, path from root, and children.

get_seller_info

Get seller profile: reputation, ratings, and transaction stats.

get_trends

Get current trending searches for a specific site/country.

get_currency_conversion

Convert between currencies using MercadoLibre exchange rates (ARS, BRL, MXN, USD, etc.).


Supported Sites

Site ID

Country

MLA

Argentina

MLB

Brazil

MLM

Mexico

MLC

Chile

MCO

Colombia

MLU

Uruguay

MPE

Peru

MEC

Ecuador

MCR

Costa Rica

MPA

Panama

MLV

Venezuela

MRD

Dominican Republic

MHN

Honduras

MBO

Bolivia

MNI

Nicaragua

MPY

Paraguay

MSV

El Salvador

MGT

Guatemala


Example Prompts

  • "Search for PlayStation 5 under $500000 in Argentina"

  • "Show me the details of item MLA1405857684"

  • "What are the trending searches in Brazil?"

  • "List all categories on MercadoLibre Mexico"

  • "Show me the reputation of seller 123456789"

  • "Convert 100 USD to ARS"


Programmatic Usage

npm install @dan1d/mercadolibre-mcp
import { createMercadoLibreTools } from "@dan1d/mercadolibre-mcp";

const ml = createMercadoLibreTools();

// Search products
const results = await ml.tools.search_items({
  query: "iPhone 15",
  site_id: "MLA",
  price_max: 2000000,
  limit: 5,
});

// Get item details
const item = await ml.tools.get_item({ item_id: "MLA1405857684" });

// Get trending searches in Argentina
const trends = await ml.tools.get_trends({ site_id: "MLA" });

// Browse categories
const categories = await ml.tools.get_categories({ site_id: "MLA" });

// Get seller reputation
const seller = await ml.tools.get_seller_info({ seller_id: 123456789 });

// Convert currencies
const conversion = await ml.tools.get_currency_conversion({
  from: "USD",
  to: "BRL",
  amount: 100,
});

Part of the LATAM MCP Toolkit

Server

What it does

CobroYa

Mercado Pago payments — create links, search payments, refunds

MercadoLibre MCP

MercadoLibre marketplace — search products, categories, trends

DolarAPI MCP

Argentine exchange rates — blue, oficial, CCL, crypto, conversion


License

MIT -- by dan1d

Available Tools

8 tools
get_categoriesB

List all top-level categories for a MercadoLibre site.

ParametersJSON Schema
NameRequiredDescriptionDefault
site_idNoSite ID (default: MLA)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It fails to mention whether the tool requires authentication, has rate limits, or returns paginated results. The description is too minimal for transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence, which is front-loaded. However, it is too brief and lacks structural elements like bullet points or additional context that would enhance usability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should clarify what 'top-level categories' includes, any limitations, or prerequisites. It is incomplete for an agent to fully understand the tool's behavior and output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (one parameter with description). The description adds no extra meaning beyond the schema's site_id description. Baseline 3 is appropriate as the schema does the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it lists all top-level categories for a MercadoLibre site. It uses a specific verb ('list') and resource ('top-level categories'), and distinguishes from sibling tools like get_category which retrieves a single category.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool versus alternatives. It is implied by the function (listing top-level categories), but there is no mention of exclusions or when to use get_category instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_categoryA

Get category details including name, path from root, and children categories.

ParametersJSON Schema
NameRequiredDescriptionDefault
category_idYesCategory ID (e.g. MLA1055)

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description only states basic purpose and return fields, omitting any behavioral traits like read-only nature, required permissions, rate limits, or error conditions. Minimal transparency beyond the obvious.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no redundancy. Every word adds value. Front-loaded with action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (1 param, no output schema), the description lists three key return fields but does not cover potential errors, response structure, or any additional context like pagination. Adequate but leaves gaps for a comprehensive understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter is fully described in the input schema (100% coverage). The description does not add any meaning beyond the schema's 'Category ID (e.g. MLA1055)'. Baseline 3 applies due to high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action 'get' and the resource 'category details', specifying key return fields (name, path from root, children). Differentiates from siblings like get_categories (which likely lists all categories) and get_item (item details).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like get_categories or search_items. Usage context is implied through the description of what it returns, but no when-not-to-use or alternative mentions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_currency_conversionB

Convert between currencies using MercadoLibre exchange rates (ARS, BRL, MXN, USD, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
fromYesSource currency code (e.g. USD)
toYesTarget currency code (e.g. ARS)
amountNoAmount to convert (default: 1)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It mentions using 'MercadoLibre exchange rates' but does not specify whether rates are real-time or historical, if there are any rounding rules, or if the conversion is reversible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One efficient sentence with no unnecessary words. It is front-loaded and immediately conveys the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so the description should indicate what is returned (e.g., converted amount, exchange rate). It also does not specify the full list of supported currencies or any error conditions. This is incomplete for a conversion tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (all parameters described). The description adds minimal extra value beyond the schema (example currency codes), but the schema already provides examples. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool converts currencies using specific exchange rates from MercadoLibre, listing example currencies (ARS, BRL, MXN, USD). It is distinct from sibling tools which focus on categories, items, and searches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, nor any limitations or prerequisites. The description does not mention scenarios where it should not be used or if there are rate limits or supported currency restrictions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_itemA

Get full details of a MercadoLibre item including title, price, pictures, seller, condition, and stock.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesItem ID (e.g. MLA1234567890)

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It describes a read operation but does not explicitly state it is read-only, mention authentication, or other behavioral traits. For a simple get, it is minimally sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, clear sentence that front-loads the purpose and lists key fields. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple single-parameter tool and no output schema, the description adequately covers the purpose and key fields. It could mention the output format (JSON) but is otherwise complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with item_id described with an example. The description adds no additional meaning for the parameter beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves full MercadoLibre item details and lists specific fields (title, price, pictures, etc.), distinguishing it from siblings like get_item_description and get_seller_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when full item details are needed, but lacks explicit when-to-use, when-not-to-use, or alternative tools. The sibling list provides context but the description itself offers no guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_item_descriptionA

Get the full text description of a MercadoLibre item.

ParametersJSON Schema
NameRequiredDescriptionDefault
item_idYesItem ID

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description does not disclose any behavioral traits such as read-only nature, authentication requirements, rate limits, or error behavior. Burden falls entirely on description due to missing annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no wasted words, front-loaded with action. Highly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple getter with one parameter and no output schema, description provides core functionality. Lacks error handling or output format details, but adequate for minimal tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Single parameter 'item_id' with schema description 'Item ID'. Description adds no further meaning. With 100% schema coverage, baseline 3 is justified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description states 'Get the full text description of a MercadoLibre item.' Uses specific verb 'Get' and resource 'full text description', clearly distinguishing from siblings like 'get_item' which returns all item details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use versus alternatives like 'get_item' or 'get_seller_info'. Usage is implied but not clarified with conditions or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_seller_infoA

Get seller profile including reputation, ratings, and transaction stats.

ParametersJSON Schema
NameRequiredDescriptionDefault
seller_idYesSeller user ID

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries the burden. It discloses that the tool returns reputation, ratings, and transaction stats, which gives insight into output content. However, no mention of auth, rate limits, or idempotency; but for a simple getter it's acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, 11 words, front-loaded and to the point. No extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (one parameter, no output schema, no annotations), the description provides sufficient context: what it gets and what fields are included. Lacks mention of error handling or pagination, but those are not critical for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema fully covers parameter with description ('Seller user ID'). Description adds no extra semantic context beyond the schema, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Get' and resource 'seller profile', specifying included data (reputation, ratings, transaction stats). Differentiates well from sibling tools that focus on categories, items, or trends.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Lacks explicit exclusions or context for when another tool would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_itemsB

Search products on MercadoLibre by keyword. Supports filtering by category, price range, and site (MLA=Argentina, MLB=Brazil, MLM=Mexico, etc.)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query
site_idNoSite ID (default: MLA). MLA=Argentina, MLB=Brazil, MLM=Mexico, MLC=Chile, MCO=Colombia
categoryNoCategory ID to filter
price_minNoMinimum price
price_maxNoMaximum price
limitNoMax results (default 10, max 50)
offsetNoPagination offset

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It indicates a read-only search but does not disclose any side effects, authentication requirements, rate limits, or behavior around empty results. The description adds minimal behavioral context beyond the core purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core action ('Search products') and then lists supported filters. It is concise with no wasted words, though it could be slightly restructured for readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 7 parameters and no output schema, the description is insufficient. It does not mention response format, pagination behavior beyond limit/offset, error handling, or common usage patterns. The description leaves significant gaps for an AI to fully understand the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% description coverage for parameters, so the baseline is 3. The description adds example site IDs (MLA, MLB, etc.) but this is already partially covered in the schema. No significant new meaning is added beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Search products on MercadoLibre by keyword', providing a specific verb and resource. It also mentions filtering by category, price range, and site, distinguishing it from sibling tools like get_item or get_categories, which are for single item retrieval or category listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does and mentions supported filters, but does not explicitly state when to use it versus alternatives (e.g., using get_item for a specific product). The context is implied but no exclusion or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 8 tool updatesv1.0.2
    • First observedget_categories
    • First observedget_category
    • First observedget_currency_conversion
    • First observedget_item
    • First observedget_item_description
    • First observedget_seller_info
    • First observedget_trends
    • First observedsearch_items

TDQS

A3.9/5.0

Scored across 8 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: categories (list vs detail), items (full vs description), search, currency conversion, seller info, and trends. No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case, mostly using 'get_' prefix ('get_categories', 'get_item', etc.) except 'search_items' which still follows the verb_noun pattern. Very predictable.

Tool Count5/5

8 tools is well within the ideal 3-15 range. The set covers all essential read operations for a marketplace data API without being too sparse or bloated.

Completeness5/5

The tool surface covers browsing categories, searching/filtering items, retrieving item details and descriptions, seller info, trends, and currency conversion. No obvious gaps for a read-only marketplace data API.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

Appeared in Searches