Sign inSign up

cibseven/cibseven-mcp-restapi

By cibseven

Updated about 5 hours ago

CIB seven MCP REST API — exposes the CIB seven engine REST API as MCP tools for LLMs

Image
0

1.6K

cibseven/cibseven-mcp-restapi repository overview

CIB seven MCP Server

A ready-to-run Model Context Protocol (MCP) server for CIB seven. It exposes the CIB seven engine REST API — or any other OpenAPI-described API — as MCP tools that LLM clients (claude.ai, VS Code, Claude Desktop, MCP Inspector, …) can call.

MCP client (claude.ai, VS Code, …)
        │  OAuth2 bearer token (e.g. Entra ID)
        ▼
cibseven-mcp-restapi  /mcp        ← this image
        │  passthrough token or freshly minted CIB seven JWT
        ▼
CIB seven engine-rest            ← external engine (not part of this image)

The server parses an OpenAPI document at startup, registers one MCP tool per operation, and executes tool calls against the target engine. It also ships secure-by-design plumbing: OAuth2 resource-server protection of the /mcp endpoint (including the RFC 9728 discovery metadata MCP clients need) and a pluggable strategy for authenticating the outbound call to engine-rest.

Why is the image named cibseven-mcp-restapi? The name is historical and kept for compatibility with existing deployments and the Helm chart. The image is built from the cibseven-mcp-server application, which hosts the cibseven-mcp-restapi library.

Quick start

docker run -p 8080:8080 \
  -e CIBSEVEN_WEBCLIENT_ENGINEREST_URL=https://my-engine.example.org \
  cibseven/cibseven-mcp-restapi

Then connect an MCP client to http://localhost:8080/mcp, or check health at http://localhost:8080/actuator/health.

⚠️ Without an OAuth2 issuer configured, the /mcp endpoint is unprotected — this is for local development only. Never expose an unprotected MCP server. Set SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URI to protect it (see below).

Configuration

All configuration is standard Spring Boot, so any property can be supplied as an environment variable (uppercased, ./-_). The most common ones:

Environment variablePurpose
CIBSEVEN_WEBCLIENT_ENGINEREST_URLThe engine-rest endpoint the MCP tools call.
CIBSEVEN_OPENAPI_URLOpenAPI document to expose as tools (defaults to the published CIB seven spec).
SPRING_SECURITY_OAUTH2_RESOURCESERVER_JWT_ISSUER_URIProtects /mcp as an OAuth2 resource server (e.g. Entra ID).
CIBSEVEN_MCP_OAUTH2_SCOPES_SUPPORTEDScopes advertised to MCP clients that have no scope input (e.g. the claude.ai connector).
CIBSEVEN_MCP_ENGINE_REST_AUTHOutbound auth: passthrough (default) or minted-jwt.
CIBSEVEN_MCP_ENGINE_REST_MINTED_JWT_RESOLVERIdentity mapping in minted-jwt mode: claim, graph, or static (dev/test).
ENGINE_REST_JWT_SECRETBase64 HMAC secret shared with engine-rest (minted-jwt mode). Inject as a secret.
GRAPH_CLIENT_ID / GRAPH_CLIENT_SECRETEntra app registration for the graph resolver.

See the library README for the full reference, including the inbound OAuth2 and outbound engine-rest authentication chains.

Image details

  • Base image: amazoncorretto:21-alpine — small, actively maintained, low OS CVE surface. (Corretto 21 runs the app's Java 17 bytecode.)
  • Built with jib — no Dockerfile; assembled directly from compiled classes.
  • Runs as non-root (uid:gid 1000:1000).
  • Exposes port 8080 (HTTP: /mcp, /actuator/health, OAuth2 discovery metadata).
  • JVM tuned for containers: -XX:MaxRAMPercentage=75.0.
Tags
TagContents
latestThe latest released (stable) version.
X.Y.ZA specific immutable release (e.g. 1.0.0).
X.Y.Z-SNAPSHOTDevelopment build from main (mutable, may be re-published).

Kubernetes / Helm

A Helm chart with hardened security defaults, actuator HTTP probes, and per-deployment configuration rendered into a Kubernetes Secret ships in the cibseven-mcp-server repository.

Reachability note. The claude.ai connector reaches the MCP server from Anthropic's cloud over the public internet, so the /mcp endpoint must be publicly reachable (lock inbound down to Anthropic's IP ranges); engine-rest itself stays internal.

License

Apache License 2.0.

Tag summary

Content type

Image

Digest

sha256:11d4f94b1

Size

205.7 MB

Last updated

about 5 hours ago

docker pull cibseven/cibseven-mcp-restapi