bank-api
erwinkramer · erwinkramer/bank-api
An MCP server that provides a design reference for a compliant and modern bank API, with live documentation and built-in security and data protection rules.
The Bank API is a design reference project suitable to bootstrap development for a compliant and modern API.
Preview
What you can do with it
- Generate compliant API endpoints for a new banking application.
- Verify an existing API's adherence to OWASP, OpenAPI, and GDPR standards.
- Develop robust data handling logic for sensitive financial information.
Safety check
Usable, but read the notes first.
- ●No clear license: check with the author before using it in a commercial product.
Automated scan of the repo files. Always review code you run.
From the README
Bank API 🏦
[![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]
The Bank API is a design reference project suitable to bootstrap development for a compliant and modern API.
See the 🔗 APIs.json (v0.21) compliant documentation.
Explore the live 🌐 API with sidecars and 🌐 MCP server (both hosted on Azure Container Apps).
Compliance
API
✅ OWASP API Security Top 10 - v2023 via Spectral OWASP API Security ruleset
✅ OpenAPI Specification v3.2.0 via Spectral "oas" ruleset
✅ NLGov (Dutch Public Sector) REST API Design Rules 2.2.1 via API Design Rules ruleset
✅ Additional naming conventions, structure, and clarity via Bank API project ruleset
✅ California Consumer Privacy Act (CCPA) and General Data Protection Regulation (GDPR) via ASP.Net Core Compliance
✅ RFC 7515 - JSON Web Signature (JWS) for response signing, via X-JWS-Signature header
✅ RFC 7517 - JSON Web Key Set (JWKs) for validating JWS responses, via /.well-known/jwks.json endpoint
EDA (Event-driven architecture) with outbox-pattern
✅ OpenAPI Specification v3.2.0 - webhook field
✅ CloudEvents - Version 1.0.2 for defining the format of event data
✅ CloudEvents - Version 1.0.2 - HTTP Protocol Binding for HTTP transport
✅ CloudEvents - Version 1.0.2 - HTTP 1.1 Web Hooks for Event Delivery for delivering events via the webhook pattern
MCP Server
✅ Model Context Protocol, version 2025-11-25
Technology stack
-
ASP.NET Core 11.0 - Minimal API for API development, with following base services:
-
Resilience for resilience when calling downstream APIs
-
Compliance for redacting sensitive data
-
Health checks for checking health status
-
Service Discovery for resolving endpoints from config
-
Hybrid Cache for caching
-
Rate limiting for rate limiting
-
API Key, JWT bearer and OpenID Connection-based authentication for security, with:
- token reuse prevention for Entra ID tokens
-
OpenApi for generating OpenAPI specifications
-
Cross-Origin Resource Sharing (CORS) for cross-origin requests
-
Validation for validating requests on endpoints
-
-
OpenTelemetry (OTel) for observability
-
Aspire for development bootstrapping and client integrations
-
Kiota API client generation for calling downstream APIs
-
Gridify for filtering, ordering and paging
-
Scalar for interactive API documentation
-
Spectral for linting
-
TUnit for unit tests
-
REST Client extension in Visual Studio Code for quick local tests via
.httpfiles -
MCPify for exposure via Model Context Protocol
-
[CloudEvent