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.
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