Back to Home
mejakitadev icon

sarana-ai-eduall-mcp-server

by mejakitadev

Overview

A multi-component platform providing AI-powered omnichannel customer service, intelligent chat agents with knowledge base integration and tool use, OCR for document processing (KTP, STNK, BPKB, KK), analytics, and specialized data management for business operations (orders, support tickets, job vacancies) and agricultural intelligence (plantation data analysis and recommendations).

Installation

Run Command
bash run.sh

Environment Variables

  • PORT
  • IS_DEBUG
  • DB_CONNECTION_STRING
  • REDIS_HOST
  • REDIS_PORT
  • REDIS_PASSWORD
  • REDIS_DB
  • REDIS_PREFIX
  • RABBITMQ_HOST
  • RABBITMQ_PORT
  • RABBITMQ_USER
  • RABBITMQ_PASS
  • RABBITMQ_VIRTUAL_HOST
  • OCR_ANALYSIS_QUEUE
  • BUCKET_NAME
  • FERNET_KEY
  • GOOGLE_CLOUD_PROJECT
  • VERTEX_AI_DEFAULT_REGION
  • VERTEX_AI_DEFAULT_MODEL
  • EMBEDDING_MODEL_NAME
  • AGENT_TRANSFER_THRESHOLD_FAILURES
  • AGENT_TRANSFER_THRESHOLD_FAILURE_SECONDS
  • AGENT_TRANSFER_REDIS_TTL_HOURS
  • WORKER_TYPE

Security Notes

The server generally uses SQLAlchemy ORM for database interactions, which protects against common SQL injection. However, 'api/archive/analytics.py' uses f-strings in SQL query construction for 'date_group', though currently mitigated by using a 'Literal' type. One hardcoded Google Cloud Storage bucket name ('bprks_sarana_temp') is present in 'api/archive/loan_origination.py'. File upload/decryption (`helper/encrypt.py`, `helper/cloud_storage.py`) and GCS interaction flows are implemented, requiring careful management of encryption keys and cloud storage permissions. Binding to '0.0.0.0' for uvicorn should be secured by external firewalling in production environments.

Similar Servers

Stats

Interest Score0
Security Score8
Cost ClassHigh
Avg Tokens2500
Stars0
Forks0
Last Update2025-12-03

Tags

AIMLOmnichannelCustomer ServiceChatbotOCRFastAPIPostgreSQLRabbitMQRedisGCPLangChainPlantation ManagementBusiness OperationsAnalytics