A [Model Context Protocol][mcp] (MCP) server for Tripadvisor Content API. This provides access to Tripadvisor location data, reviews, and photos through standardized MCP interfaces, allowing AI assistants to search for travel destinations and experiences. [mcp]: https://modelcontextprotocol.io - [x] Search for locations (hotels, restaurants, attractions) on Tripadvisor - [x] Get detailed informati
Add this skill
npx mdskills install pab1it0/tripadvisor-mcpWell-documented MCP server with useful travel data tools and excellent setup instructions
1# Tripadvisor MCP Server23A [Model Context Protocol][mcp] (MCP) server for Tripadvisor Content API.45This provides access to Tripadvisor location data, reviews, and photos through standardized MCP interfaces, allowing AI assistants to search for travel destinations and experiences.67[mcp]: https://modelcontextprotocol.io89## Features1011- [x] Search for locations (hotels, restaurants, attractions) on Tripadvisor12- [x] Get detailed information about specific locations13- [x] Retrieve reviews and photos for locations14- [x] Search for nearby locations based on coordinates15- [x] API Key authentication16- [x] Docker containerization support1718- [x] Provide interactive tools for AI assistants1920The list of tools is configurable, so you can choose which tools you want to make available to the MCP client.2122## Usage23241. Get your Tripadvisor Content API key from the [Tripadvisor Developer Portal](https://developer.tripadvisor.com/).25262. Configure the environment variables for your Tripadvisor Content API, either through a `.env` file or system environment variables:2728```env29# Required: Tripadvisor Content API configuration30TRIPADVISOR_API_KEY=your_api_key_here31```32333. Add the server configuration to your client configuration file. For example, for Claude Desktop:3435```json36{37 "mcpServers": {38 "tripadvisor": {39 "command": "uv",40 "args": [41 "--directory",42 "<full path to tripadvisor-mcp directory>",43 "run",44 "src/tripadvisor_mcp/main.py"45 ],46 "env": {47 "TRIPADVISOR_API_KEY": "your_api_key_here"48 }49 }50 }51}52```5354> Note: if you see `Error: spawn uv ENOENT` in Claude Desktop, you may need to specify the full path to `uv` or set the environment variable `NO_UV=1` in the configuration.5556## Docker Usage5758This project includes Docker support for easy deployment and isolation.5960### Building the Docker Image6162Build the Docker image using:6364```bash65docker build -t tripadvisor-mcp-server .66```6768### Running with Docker6970You can run the server using Docker in several ways:7172#### Using docker run directly:7374```bash75docker run -it --rm \76 -e TRIPADVISOR_API_KEY=your_api_key_here \77 tripadvisor-mcp-server78```7980#### Using docker-compose:8182Create a `.env` file with your Tripadvisor API key and then run:8384```bash85docker-compose up86```8788### Running with Docker in Claude Desktop8990To use the containerized server with Claude Desktop, update the configuration to use Docker with the environment variables:9192```json93{94 "mcpServers": {95 "tripadvisor": {96 "command": "docker",97 "args": [98 "run",99 "--rm",100 "-i",101 "-e", "TRIPADVISOR_API_KEY",102 "tripadvisor-mcp-server"103 ],104 "env": {105 "TRIPADVISOR_API_KEY": "your_api_key_here"106 }107 }108 }109}110```111112This configuration passes the environment variables from Claude Desktop to the Docker container by using the `-e` flag with just the variable name, and providing the actual values in the `env` object.113114## Development115116Contributions are welcome! Please open an issue or submit a pull request if you have any suggestions or improvements.117118This project uses [`uv`](https://github.com/astral-sh/uv) to manage dependencies. Install `uv` following the instructions for your platform:119120```bash121curl -LsSf https://astral.sh/uv/install.sh | sh122```123124You can then create a virtual environment and install the dependencies with:125126```bash127uv venv128source .venv/bin/activate # On Unix/macOS129.venv\Scripts\activate # On Windows130uv pip install -e .131```132133## Project Structure134135The project has been organized with a `src` directory structure:136137```138tripadvisor-mcp/139├── src/140│ └── tripadvisor_mcp/141│ ├── __init__.py # Package initialization142│ ├── server.py # MCP server implementation143│ ├── main.py # Main application logic144├── Dockerfile # Docker configuration145├── docker-compose.yml # Docker Compose configuration146├── .dockerignore # Docker ignore file147├── pyproject.toml # Project configuration148└── README.md # This file149```150151### Testing152153The project includes a test suite that ensures functionality and helps prevent regressions.154155Run the tests with pytest:156157```bash158# Install development dependencies159uv pip install -e ".[dev]"160161# Run the tests162pytest163164# Run with coverage report165pytest --cov=src --cov-report=term-missing166```167168### Tools169170| Tool | Category | Description |171| --- | --- | --- |172| `search_locations` | Search | Search for locations by query text, category, and other filters |173| `search_nearby_locations` | Search | Find locations near specific coordinates |174| `get_location_details` | Retrieval | Get detailed information about a location |175| `get_location_reviews` | Retrieval | Retrieve reviews for a location |176| `get_location_photos` | Retrieval | Get photos for a location |177178## License179180MIT181182---183184[mcp]: https://modelcontextprotocol.io185
Full transparency — inspect the skill content before installing.