Amazon Product Advertising API

Se integra con la API de Publicidad de Productos de Amazon para buscar productos.

Documentación

Servicio MCP de Amazon PA-API

Un servicio de Model Context Protocol (MCP) para la integración con Amazon Product Advertising API. Este proyecto utiliza el SDK de Python proporcionado oficialmente en Product Advertising API 5.0.

PyPI - Python Version PyPI - Version PyPI - Downloads

Integración en Claude y Cursor

Para configurar el host, la región y el marketplace, consulta la documentación de Referencia de configuración regional para Product Advertising API.

{
  "mcpServers": {
    "amazon-paapi": {
      "command": "uvx",
      "args": [
        "mcp-amazon-paapi"
      ],
      "env": {
        "PAAPI_ACCESS_KEY": "your-access-key",
        "PAAPI_SECRET_KEY": "your-secret-key",
        "PAAPI_PARTNER_TAG": "your-partner-tag",
        "PAAPI_HOST": "webservices.amazon.de",  // select EU or US servers and region
        "PAAPI_REGION": "eu-west-1",
        "PAAPI_MARKETPLACE": "www.amazon.de" // set your preferred marketplace
      }
    }
  }
}

Estructura del Proyecto

mcp-amazon-paapi/
├── src/
│   └── mcp_amazon_paapi/           # Main package
│       ├── __init__.py             # Package initialization
│       ├── service.py              # Amazon PA-API service class with dependency injection
│       ├── server.py               # FastMCP server implementation
│       └── _vendor/                # Vendored dependencies
│           └── paapi5_python_sdk/  # Amazon PA-API Python SDK
├── test/                           # Test suite
│   ├── __init__.py                 # Test package initialization
│   └── test_service.py             # Tests for service module
├── pyproject.toml                  # Project configuration and dependencies
├── uv.lock                         # Dependency lock file
├── README.md                       # Project documentation

Configuración Local

Configuración Inicial

# Sync dependencies from uv.lock (creates virtual environment automatically)
uv sync

# Alternatively, activate the virtual environment manually
source .venv/bin/activate  # Linux/Mac
# or
.venv\Scripts\activate     # Windows

Variables de Entorno

export PAAPI_ACCESS_KEY="your-access-key"
export PAAPI_SECRET_KEY="your-secret-key"
export PAAPI_PARTNER_TAG="your-partner-tag"
export PAAPI_HOST="webservices.amazon.de"       # optional defaults to webservices.amazon.de
export PAAPI_REGION="eu-west-1"                 # optional defaults to eu-west-1
export PAAPI_MARKETPLACE="www.amazon.de"        # optional, defaults to www.amazon.de

Pruebas

Ejecuta el conjunto de pruebas simple:

# Run all tests with uv (recommended)
uv run python -m pytest test/test_service.py -v

# Or if you have activated the virtual environment
pytest test/test_service.py -v

El conjunto de pruebas incluye:

  • Pruebas de inicialización del servicio
  • Pruebas de gestión de configuración
  • Pruebas de funcionalidad de búsqueda con simulación (mocking)
  • Pruebas de manejo de errores

Uso

from service import AmazonPAAPIService

# Create service (uses environment variables)
service = AmazonPAAPIService()

# Search for items
items = service.search_items("echo dot", "Electronics", 5)

Ejecución del Servidor MCP

# Run directly with uv (recommended)
uv run python server.py

# Or if you have activated the virtual environment
python server.py