Skip to main content
Glama
banking-system-export.json26 kB
{ "version": "1.0", "type": "system_designer_model", "metadata": { "name": "Banking System", "modelType": "class", "description": "A comprehensive banking system for managing accounts, customers, transactions, and loans", "createdAt": "2025-09-30T13:37:26.335Z", "exportedBy": "system-designer-mcp" }, "model": { "id": "banking_system", "name": "Banking System", "type": "class", "description": "A comprehensive banking system for managing accounts, customers, transactions, and loans", "entities": [ { "id": "customer", "name": "Customer", "type": "class", "attributes": [ { "name": "customerId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "firstName", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "lastName", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "email", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "phone", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "dateOfBirth", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "address", "type": "Address", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "creditScore", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "openAccount", "parameters": [ { "name": "accountType", "type": "string" } ], "returnType": "Account", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "closeAccount", "parameters": [ { "name": "account", "type": "Account" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "applyForLoan", "parameters": [ { "name": "loanAmount", "type": "number" }, { "name": "loanType", "type": "string" } ], "returnType": "LoanApplication", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getAccountBalance", "parameters": [ { "name": "account", "type": "Account" } ], "returnType": "number", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "transferFunds", "parameters": [ { "name": "fromAccount", "type": "Account" }, { "name": "toAccount", "type": "Account" }, { "name": "amount", "type": "number" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "account", "name": "Account", "type": "class", "attributes": [ { "name": "accountNumber", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "accountType", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "balance", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "interestRate", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "dateOpened", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "isActive", "type": "boolean", "visibility": "private", "isStatic": false, "isReadOnly": true }, { "name": "minimumBalance", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "deposit", "parameters": [ { "name": "amount", "type": "number" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "withdraw", "parameters": [ { "name": "amount", "type": "number" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getBalance", "parameters": [], "returnType": "number", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getTransactionHistory", "parameters": [], "returnType": "Transaction[]", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "calculateInterest", "parameters": [], "returnType": "number", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "closeAccount", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "transaction", "name": "Transaction", "type": "class", "attributes": [ { "name": "transactionId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "transactionType", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "amount", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "timestamp", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "description", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "status", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "fromAccount", "type": "Account", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "toAccount", "type": "Account", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "processTransaction", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "validateTransaction", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getTransactionDetails", "parameters": [], "returnType": "string", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "loan", "name": "Loan", "type": "class", "attributes": [ { "name": "loanId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "loanType", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "principalAmount", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "interestRate", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "termMonths", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "startDate", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "endDate", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "monthlyPayment", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "outstandingBalance", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "loanStatus", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "calculateMonthlyPayment", "parameters": [], "returnType": "number", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "makePayment", "parameters": [ { "name": "amount", "type": "number" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getRemainingBalance", "parameters": [], "returnType": "number", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "refinanceLoan", "parameters": [ { "name": "newInterestRate", "type": "number" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "branch", "name": "Branch", "type": "class", "attributes": [ { "name": "branchId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "branchName", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "address", "type": "Address", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "phoneNumber", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "manager", "type": "Employee", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "operatingHours", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "openBranch", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "closeBranch", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "addCustomer", "parameters": [ { "name": "customer", "type": "Customer" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getBranchDetails", "parameters": [], "returnType": "string", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "employee", "name": "Employee", "type": "class", "attributes": [ { "name": "employeeId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "firstName", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "lastName", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "position", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "department", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "salary", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "hireDate", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "branch", "type": "Branch", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "processTransaction", "parameters": [ { "name": "transaction", "type": "Transaction" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "approveLoan", "parameters": [ { "name": "loanApplication", "type": "LoanApplication" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "openCustomerAccount", "parameters": [ { "name": "customer", "type": "Customer" }, { "name": "accountType", "type": "string" } ], "returnType": "Account", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getEmployeeDetails", "parameters": [], "returnType": "string", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "address", "name": "Address", "type": "class", "attributes": [ { "name": "street", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "city", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "state", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "zipCode", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "country", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "validateAddress", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getFullAddress", "parameters": [], "returnType": "string", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "updateAddress", "parameters": [ { "name": "newAddress", "type": "Address" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false } ] }, { "id": "loanApplication", "name": "LoanApplication", "type": "class", "attributes": [ { "name": "applicationId", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "customer", "type": "Customer", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "loanType", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "requestedAmount", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "applicationDate", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "applicationStatus", "type": "string", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "creditScore", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "income", "type": "number", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "approvedBy", "type": "Employee", "visibility": "private", "isStatic": false, "isReadOnly": false }, { "name": "approvalDate", "type": "Date", "visibility": "private", "isStatic": false, "isReadOnly": false } ], "methods": [ { "name": "submitApplication", "parameters": [], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "updateStatus", "parameters": [ { "name": "status", "type": "string" } ], "returnType": "boolean", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "getApprovalStatus", "parameters": [], "returnType": "string", "visibility": "public", "isStatic": false, "isAbstract": false }, { "name": "calculateLoanTerms", "parameters": [], "returnType": "Loan", "visibility": "public", "isStatic": false, "isAbstract": false } ] } ], "relationships": [ { "id": "customer_accounts", "from": "customer", "to": "account", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "owns" }, { "id": "account_transactions", "from": "account", "to": "transaction", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "has" }, { "id": "customer_loans", "from": "customer", "to": "loan", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "has" }, { "id": "customer_loan_applications", "from": "customer", "to": "loanApplication", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "submits" }, { "id": "branch_customers", "from": "branch", "to": "customer", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "serves" }, { "id": "branch_employees", "from": "branch", "to": "employee", "type": "association", "multiplicity": { "from": "1", "to": "0..*" }, "name": "employs" }, { "id": "employee_branch", "from": "employee", "to": "branch", "type": "association", "multiplicity": { "from": "1", "to": "1" }, "name": "works at" }, { "id": "customer_address", "from": "customer", "to": "address", "type": "association", "multiplicity": { "from": "1", "to": "1" }, "name": "lives at" }, { "id": "branch_address", "from": "branch", "to": "address", "type": "association", "multiplicity": { "from": "1", "to": "1" }, "name": "located at" }, { "id": "loanApplication_approvedBy", "from": "loanApplication", "to": "employee", "type": "association", "multiplicity": { "from": "1", "to": "0..1" }, "name": "approved by" }, { "id": "loanApplication_loan", "from": "loanApplication", "to": "loan", "type": "association", "multiplicity": { "from": "1", "to": "0..1" }, "name": "results in" } ] } }

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/chevyfsa/system-designer-mcp'

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