loading…
Search for a command to run...
loading…
Enables AI assistants to search for Quest Apartment Hotels across Australia by interpreting location-based queries for cities, suburbs, and landmarks. It calcul
Enables AI assistants to search for Quest Apartment Hotels across Australia by interpreting location-based queries for cities, suburbs, and landmarks. It calculates distances to the nearest properties and provides detailed hotel data including amenities, pricing, and ratings.
A Model Context Protocol (MCP) server and interactive web app for Quest Apartment Hotels that enables AI assistants (ChatGPT, Claude, Gemini) to search properties near specific locations and landmarks across Australia.
quest_search_nearbyFind Quest Apartment Hotels near a specific location or landmark. Returns the closest 3 properties.
Parameters:
location (required): Any location description - city name, suburb, landmark, or hotel name (e.g., "Sydney", "North Sydney", "Quest Melbourne", "169 Thomas Street")amenities (optional): Array of required amenities (e.g., ["Gym", "Pool"])maxGuests (optional): Maximum number of guests neededExample:
{
"location": "North Sydney",
"amenities": ["Gym", "Pool"],
"maxGuests": 2
}
quest_get_property_detailsGet detailed information about a specific Quest property.
Parameters:
propertyId (required): The ID of the Quest propertyExample:
{
"propertyId": "quest-sydney-cbd"
}
quest_list_all_propertiesList all Quest Apartment Hotels with basic information.
Parameters:
state (optional): Filter by state (e.g., "NSW", "VIC", "QLD")Example:
{
"state": "NSW"
}
cd quest-apartment-hotels-mcp
npm install
npm run build
npm run build-app # Build the web app
npm run serve
npm install -g @modelcontextprotocol/inspector
mcp-inspector tsx main.ts
http://localhost:3000 to test the tools.Try prompts like:
quest-apartment-hotels-mcp/
├── src/
│ ├── types.ts # TypeScript interfaces
│ ├── data.ts # Hotel data and landmarks
│ ├── mcp-server.ts # Core MCP server logic
│ ├── quest-app.html # Web app HTML
│ └── quest-app.ts # Web app TypeScript
├── dist/
│ └── quest-app.html # Built web app
├── main.ts # Main server entry point
├── package.json
├── tsconfig.json
├── vite.config.ts # Vite build config
└── README.md
The server includes 9 real Quest Apartment Hotels across major Australian cities:
Each property includes:
The system uses AI-driven location matching that can handle:
The AI intelligently parses and matches:
Once a location is identified, the system:
The included web app provides:
The tools return both human-readable text and structured JSON data:
{
"content": [
{
"type": "text",
"text": "Human-readable summary..."
},
{
"type": "resource",
"resource": {
"uri": "quest-app://search-results",
"mimeType": "application/json",
"text": "JSON data..."
}
}
]
}
Edit src/data.ts to add new Quest properties:
{
id: 'quest-new-hotel',
name: 'Quest New Hotel',
address: '123 Street, City State 2000',
// ... other properties
}
Add to the landmarks object in src/data.ts:
'New Landmark': { latitude: -xx.xxxx, longitude: xxx.xxxx }
Edit src/quest-app.html for styling and src/quest-app.ts for functionality.
npm run build && npm run build-appdistFROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY dist ./dist
CMD ["node", "dist/main.js"]
MIT License - see LICENSE file for details.
For issues and questions:
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"quest-apartment-hotels-mcp-server": {
"command": "npx",
"args": []
}
}
}