MCPDBWizard

Documentation  ·  Getting started

Docker parameters

This page is an outline. What is here is accurate, but it is not yet the whole story — each section ends with a note on what is still to be written. For anything it does not answer, DEPLOYMENT.md and USING-MCP.md in the repository are the complete references.

Two kinds of setting, and why it matters

This trips people up, so it is worth stating plainly.

Generation-time flags live in the config and decide what code is emitted. Changing one means regenerating. Examples: MCP_SERVER, MCP_HTTP_TOKEN, MCP_HTTPS, PROMETHEUS_SERVER, DAO_POOL, TARGET_JVM.

Runtime environment variables are read when the server starts and change how it behaves.

Setting a runtime variable does nothing if the server was generated without the matching flag — the code to read it was never written. That is the single commonest “I changed it and nothing happened”.

The console

VariableMeaning
MCPDBWIZARD_ORACLE_HOST / _PORT / _SIDWhere. A leading / on the SID selects the service-name form.
MCPDBWIZARD_ORACLE_USERThe account to connect as. Recorded upper-cased, because that is how Oracle stores owners.
MCPDBWIZARD_ORACLE_OTHER_USEROptional second schema to list as well as your own. Empty for none.
MCPDBWIZARD_ORACLE_USER_OBJECTSfalse lists only the other schema. Ignored unless a second schema is named.
DB_PASS / DB_PASS_FILEThe password, and the only Oracle secret. Set exactly one.
MCPDBWIZARD_CONFIG_DIRWhere configs, accounts and workspaces live. /data in the container.

Generated servers

VariableMeaning
MCP_HTTP_TOKENThe bearer secret. The config flag of the same name emits the check.
MCP_METRICS_PORT / MCP_METRICS_HOSTPrometheus listener. Unset means no listener.
MCP_RATE_LIMIT / MCP_RATE_BURSTCalls per second, and the burst allowance. Off by default.
MCP_MAX_REQUEST_BYTESRefuse an over-large request with 413. Off by default.
DAO_QUERY_TIMEOUT_SECONDSCap on any one statement. The control that actually protects the database.
DAO_POOL_*Pool sizing — see Connection pooling.
MCP_AUDIT_*The audit trail — see Setting up auditing.
MCPDBWIZARD_LOG_BACKENDOverrides the generated DAO_LOG_TYPE at startup.

A mistyped value stops start-up rather than leaving a server silently unlimited, unaudited or unmetered. That is deliberate in every case where believing a control was on would be worse than a failure to boot.

To write. The full table with defaults and units; which are read by the console versus a generated server versus both; a worked example per deployment shape.