Skip to main content
Glama
Abhinav-pyth

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

Related MCP server: AWS SecurityHub MCP Server

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

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Abhinav-pyth/Banking_assistant'

If you have feedback or need assistance with the MCP directory API, please join our Discord server