Banking Model Context Protocol Server

by Abhinav-pyth

Banking Chatbot with MCP Integration

A sophisticated banking chatbot application that uses Azure OpenAI and Model Context Protocol (MCP) for secure and efficient message handling.

Features

  • AI-Powered Banking Assistant: Uses Azure OpenAI to provide intelligent responses to banking queries
  • Model Context Protocol (MCP): Implements a secure message communication protocol
  • Real-time Chat Interface: Modern, responsive UI for seamless user interaction
  • Comprehensive Logging: Detailed logging system for monitoring and debugging
  • Bank Information Integration: Dynamic display of bank details and services
  • Markdown Support: Rich text formatting for responses

Project Structure

. ├── app.py # Main Flask application ├── mcp_server.py # MCP server implementation ├── mcp_client.py # MCP client implementation ├── requirements.txt # Python dependencies ├── .env # Environment variables ├── templates/ # HTML templates │ └── index.html # Chat interface └── logs/ # Log files ├── client_messages.log ├── mcp_client.log └── mcp_server.log

Prerequisites

  • Python 3.8 or higher
  • Azure OpenAI API access
  • Required Python packages (see requirements.txt)

Installation

  1. Clone the repository:
    git clone <repository-url> cd banking-chatbot
  2. Create and activate a virtual environment:
    python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
  3. Install dependencies:
    pip install -r requirements.txt
  4. Create a .env file with your credentials:
    ENDPOINT_URL=your_azure_endpoint AZURE_OPENAI_API_KEY=your_api_key DEPLOYMENT_NAME=your_deployment_name

Usage

  1. Start the MCP server:
    python mcp_server.py
  2. In a new terminal, start the Flask application:
    python app.py
  3. Access the chatbot interface at http://localhost:5000

MCP Protocol

The Model Context Protocol (MCP) is implemented to handle message communication between the chatbot and the server. It provides:

  • Secure message transmission
  • Message queuing and reliability
  • Detailed logging
  • Real-time message handling

Message Types

  • Chat Messages: User queries and AI responses
  • System Messages: Administrative and control messages

Logging

The application maintains detailed logs in the logs directory:

  • client_messages.log: Chat message history
  • mcp_client.log: Client connection and operation logs
  • mcp_server.log: Server operation logs

Bank Information

The chatbot is configured with comprehensive bank information including:

  • Business hours
  • Branch locations
  • Available services
  • Contact information
  • Support channels

Development

Adding New Features

  1. Update the BANK_INFO dictionary in app.py for new bank information
  2. Modify the SYSTEM_MESSAGE for updated AI behavior
  3. Add new message handlers in mcp_client.py for additional functionality

Testing

Run the test client to verify MCP functionality:

python test_client.py

Clear logs for testing:

python clear_logs.py

Security

  • API keys and sensitive information are stored in .env
  • MCP provides secure message transmission
  • Input validation and error handling are implemented

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Implements a secure message communication protocol for handling exchanges between the banking chatbot and Azure OpenAI, providing message queuing, reliability, and detailed logging.

  1. Features
    1. Project Structure
      1. Prerequisites
        1. Installation
          1. Usage
            1. MCP Protocol
              1. Message Types
            2. Logging
              1. Bank Information
                1. Development
                  1. Adding New Features
                  2. Testing
                2. Security
                  1. Contributing
                    1. License

                      Related MCP Servers

                      • A
                        security
                        A
                        license
                        A
                        quality
                        Enables natural language interaction with Azure services through Claude Desktop, supporting resource management, subscription handling, and tenant selection with secure authentication.
                        Last updated -
                        3
                        4
                        13
                        TypeScript
                        MIT License
                      • -
                        security
                        A
                        license
                        -
                        quality
                        A Model Context Protocol server implementation that enables Claude to interact with RabbitMQ message queues and topics, allowing read/write operations on a RabbitMQ instance.
                        Last updated -
                        18
                        Python
                        Apache 2.0
                        • Apple
                      • -
                        security
                        F
                        license
                        -
                        quality
                        A Model Context Protocol server that allows Claude to make API requests on your behalf, providing tools for testing various APIs including HTTP requests and OpenAI integrations without sharing your API keys in the chat.
                        Last updated -
                        Python
                        • Linux
                        • Apple
                      • -
                        security
                        A
                        license
                        -
                        quality
                        Model Context Protocol server implementation that integrates the LINE Messaging API to connect AI agents with LINE Official Accounts, enabling agents to send messages to users.
                        Last updated -
                        TypeScript
                        Apache 2.0

                      View all related MCP servers

                      ID: m2s89cwebx