Rakuten Travel
Search for hotels and check their availability using the Rakuten Travel API.
Rakuten Travel MCP Server
A Model Context Protocol (MCP) server that provides an interface to the Rakuten Travel API for hotel searching and availability checking.
Features
- Hotel Search: Search for hotels by location, hotel number, or area code
- Availability Search: Find vacant hotels with real-time availability
- Area Code Resource: Access hierarchical Japanese location data
- Type-Safe: Comprehensive TypeScript types with Zod validation
- MCP Compliant: Works with any MCP-compatible client
Prerequisites
- Deno runtime installed
- Rakuten Travel API Application ID (Get one here)
Installation
- Clone the repository:
git clone https://github.com/yourusername/rakuten_travel_mcp.git
cd rakuten_travel_mcp
Usage
Running the Server
- configure your MCP client. (following example is for
Claude Desktop)
```json
{
"mcpServers": {
"rakuten_travel_mcp": {
"command": "deno",
"args": [
"run",
"--allow-net=app.rakuten.co.jp",
"--allow-env=APPLICATION_ID",
"/path/to/rakuten_travel_mcp/serve.ts"
],
"env": {
"APPLICATION_ID": "<your_application_id>"
}
}
}
}
Available Tools
1. Hotel Search (hotel-search)
Search for hotels using various criteria:
Search by Hotel Number:
{
"hotelNo": ["123456", "789012"]
}
Search by Coordinates:
{
"latitude": 35.6762,
"longitude": 139.6503,
"searchRadius": 3,
"datumType": 1
}
Search by Area Code:
{
"largeClassCode": "japan",
"middleClassCode": "tokyo",
"smallClassCode": "shibuya"
}
2. Vacant Hotel Search (vacant-hotel-search)
Search for available hotels:
{
"checkinDate": "2024-03-15",
"checkoutDate": "2024-03-17",
"rooms": 1,
"adultNum": 2,
"largeClassCode": "japan",
"middleClassCode": "tokyo"
}
Available Resources
Area Code Resource (config://area_code)
Access hierarchical location data for Japan:
- Country level (e.g., "japan")
- Prefecture level (e.g., "tokyo", "osaka")
- City level (e.g., "shibuya", "shinjuku")
- Area level (detailed districts)
Development
Running Tests
# Run all tests
deno task test
# Run tests in watch mode
deno task test:watch
Project Structure
rakuten_travel_mcp/
├── serve.ts # Main MCP server implementation
├── types.ts # TypeScript types and Zod schemas
├── area_code.json # Hierarchical location data
├── *.test.ts # Test files
├── deno.json # Deno configuration
└── .env # Environment variables (create this)
API Parameters
Common Parameters
hits: Number of results per page (1-30, default: 30)page: Page number for paginationsort: Sort order (various options available)
Hotel Search Specific
hotelNo: Array of hotel numberslatitude/longitude: Coordinates for geographic searchsearchRadius: Search radius in km (1-3)squeezeCondition: Filter for hotels with/without vacancieshotelType: Filter by hotel type (0-3)
Vacant Hotel Search Specific
checkinDate/checkoutDate: Required dates (YYYY-MM-DD)rooms: Number of rooms (1-5)adultNum: Adults per room (1-5)minCharge/maxCharge: Price range filters
Testing
The project includes comprehensive tests for:
- Schema validation
- API parameter building
- Response processing
- Error handling
- Network timeouts
Error Handling
The server handles various error scenarios:
- Missing required parameters
- Invalid date formats
- API rate limits
- Network timeouts
- Invalid API responses
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Built with Model Context Protocol SDK
- Powered by Rakuten Travel API
İlgili Sunucular
PulseMCP Server
Discover and explore MCP servers and integrations using the PulseMCP API.
MCP-SearXNG-Enhanced Web Search
An enhanced MCP server for SearXNG web searching, utilizing a category-aware web-search, web-scraping, and includes a date/time retrieval tool.
Expo MCP Server
Search and get recommendations from the official Expo documentation.
Stack Overflow
Access Stack Overflow's trusted and verified technical questions and answers.
Tavily Search
A comprehensive search agent powered by the Tavily API for in-depth and reliable search results across various topics.
vinted-mcp-server
First MCP server for Vinted marketplace. Search millions of second-hand items, compare prices across 19 countries (FR, DE, ES, IT, NL, BE, UK...), analyze seller profiles with ratings and verification status, detect cross-country arbitrage opportunities, and track trending products. 5 tools: search_items, get_item, get_seller, compare_prices, get_trending. 2 resources: countries list, categories. Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client. Zero config — just npx.
Volcengine Knowledge Base MCP
Provides knowledge base search and dialogue completion using the Volcengine Knowledge Base service. Requires external credential configuration.
Console MCP Server
Bridge external console processes with Copilot by searching through JSON log files.
Java Conferences MCP Server
Provides information about Java conferences worldwide by parsing data from the javaconferences.github.io repository.
Discourse MCP Server
Perform search operations on Discourse forums.