anthropic-mcp-client
This project is a chatbot service that provides ferry information and booking assistance for the Scottish Inner Hebrides region. Built using Spring Boot, it includes configurations for integrating AI functionalities. Knowledge of Java and Maven or Gradle is required.
GitHub Stars
0
User Rating
Not Rated
Favorites
0
Views
33
Forks
0
Issues
0
Scottish Inner Hebrides Ferries Chatbot
A Spring Boot-based chatbot service that provides ferry information and booking assistance for the Scottish Inner Hebrides region.
Prerequisites
Required Software
- Java Development Kit (JDK) 24 or later
- Maven 3.9+ or Gradle 8.5+
- Spring Boot 3.2+
- Spring AI dependencies
- An IDE (IntelliJ IDEA recommended)
Environment Setup
Java Installation
- Download and install JDK 24 from Oracle or use OpenJDK
- Set JAVA_HOME environment variable
- Add Java to your system PATH
Build Tool
- Install Maven or Gradle
- Add to system PATH
- Verify installation:
mvn -version # or gradle -version
IDE Setup
- Install IntelliJ IDEA (Community or Ultimate Edition)
- Install the following plugins:
- Spring Boot
- Java
- Maven/Gradle
Spring AI Configuration
- Ensure you have the necessary Spring AI dependencies in your
pom.xmlorbuild.gradle - Configure your AI provider credentials in
application.propertiesorapplication.yml
- Ensure you have the necessary Spring AI dependencies in your
Storage Requirements
- Create a directory called bookings in the root of this folder
- Ensure write permissions for the
bookingsdirectory (for storing booking information)
API Keys
- ANTHROPIC_API_KEY - https://docs.anthropic.com/en/api/admin-api/apikeys/get-api-key
- BRAVE_API_KEY - https://brave.com/search/api/
Pass the api keys as environment variables into the application
Overview
This service implements a customer support chatbot specifically designed to assist users with:
- Ferry route information in the Scottish Inner Hebrides
- Weather updates for destinations
- Local activities and destination information
- Ferry booking assistance
Features
- Real-time chat support
- Destination information
- Weather updates
- Ferry booking system with validation for:
- Passenger capacity
- Vehicle restrictions
- Route availability
- Booking information collection
Technical Stack
- Java
- Spring Boot
- Spring AI ChatClient
- RESTful API
Booking Requirements
To make a booking, the following information is required:
- First name
- Last name
- Phone number
- Number of passengers
- Number of cars (if applicable)
- Travel date
- Origin port
- Destination port
Service Limitations
The chatbot is specifically designed to handle:
- Scottish Inner Hebrides ferry-related queries only
- Ferry transport information
- Destination information within the Scottish Inner Hebrides
- Current weather information for supported destinations
Queries outside these scope will receive a standardized response indicating the service limitations.
Error Handling
The service includes validation for common booking scenarios:
- Invalid routes
- Car restrictions on specific routes
- Passenger capacity limits
- Vehicle capacity limits
Getting Started
Clone the repository:
git clone [repository-url]Navigate to the project directory:
cd scottish-inner-hebrides-ferriesConfigure application properties:
- Create
application.propertiesorapplication.ymlinsrc/main/resources - Add necessary configurations for Spring AI and other services
- Create
Build the project:
mvn clean install # or gradle buildRun the application:
mvn spring-boot:run # or gradle bootRun