OceanBase MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OB_HOST | Yes | Hostname or IP of the OceanBase proxy or direct connect address. | |
| OB_PORT | No | Port number of the OceanBase proxy. | 2883 |
| OB_USER | Yes | Username for the OceanBase connection, typically in format user@tenant#cluster. | |
| NODE_ENV | No | Node environment. | production |
| OB_MCP_HOST | No | Bind address for the HTTP server. | 127.0.0.1 |
| OB_PASSWORD | No | Password for the OceanBase user. Either this or OB_PASSWORD_FILE must be set. | |
| OB_PRODUCTION | No | Set to 'true' for production mode. | false |
| OB_COMPATIBILITY | No | Compatibility mode: 'mysql' or 'oracle'. | mysql |
| OB_MCP_READ_ONLY | No | Must be 'true' to start the server. | true |
| OB_PASSWORD_FILE | No | Path to a file containing the password. Alternative to OB_PASSWORD. | |
| OB_MCP_AUTH_TOKEN | No | Bearer token for HTTP authentication. | |
| OB_ALLOWED_SCHEMAS | No | Comma-separated list of allowed schemas. | |
| OB_MCP_ALLOWED_IPS | No | Comma-separated IPs or CIDR for source IP allowlist. | |
| OB_ALLOW_SELECT_STAR | No | Allow SELECT * queries. | false |
| OB_MCP_ALLOWED_HOSTS | No | Comma-separated allowed Host headers. | |
| OB_MCP_AUTH_TOKEN_FILE | No | Path to a file containing the bearer token. | |
| OB_ENFORCE_READ_ONLY_TX | No | Enforce read-only transactions. | true |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ob_list_profilesA | List configured OceanBase MCP profiles with redacted settings. |
| ob_config_diagnosticsB | Check profile, policy, TLS, HTTP, and production hardening settings. |
| ob_check_opencode_setupC | Check local OpenCode config, OceanBase agent, and query skill files for the current project. |
| ob_get_usage_guideA | Return the recommended read-only OpenCode workflow, safety rules, and MySQL/Oracle notes. |
| ob_list_capabilitiesC | List supported tool groups, tool versions, active compatibility mode, and read-only limits. |
| ob_refresh_metadata_cacheB | Clear in-memory metadata cache entries for the active profile, optionally scoped by schema or table. |
| ob_get_cache_statusB | Return profile-scoped metadata cache settings and counters without exposing cached content. |
| ob_verify_permissionsB | Inspect current database grants and report whether the account appears read-only. |
| ob_pingC | Verify the configured OceanBase connection. |
| ob_policy_explainB | Explain whether a SQL statement is allowed and which read-only or access-policy checks apply. |
| ob_query_previewA | Preview policy, sensitive-column, and EXPLAIN risk for a read-only SQL statement without executing the target query. |
| ob_queryC | Run a strictly read-only SQL statement against OceanBase. |
| ob_query_pageB | Run a strictly read-only SELECT/WITH query with server-side pagination. |
| ob_start_query_sessionB | Create an in-memory read-only query context for follow-up paging, refinement, and summarization. |
| ob_get_query_sessionB | Return a read-only query session context without exposing stored parameter values. |
| ob_close_query_sessionB | Close an in-memory query session for the selected profile. |
| ob_query_next_pageC | Run the next page for a read-only query session without bypassing row, timeout, output, or policy limits. |
| ob_query_prev_pageA | Run the previous page for a read-only query session without bypassing row, timeout, output, or policy limits. |
| ob_query_refineB | Build a refined read-only SELECT from a query session using structured columns, filters, ordering, and pagination without executing it. |
| ob_summarize_resultC | Summarize already returned query rows without reading the database. |
| ob_compare_query_resultsC | Compare two already returned query results without reading the database or storing row values. |
| ob_export_result_previewA | Generate a bounded Markdown or CSV preview string from already returned rows without writing files. |
| ob_explainC | Run EXPLAIN for a strictly read-only SQL statement. |
| ob_analyze_query_planC | Run EXPLAIN for a strictly read-only SQL statement and return evidence-based plan findings. |
| ob_generate_performance_reportB | Generate a read-only SQL performance advisory report from EXPLAIN, table statistics, and index metadata. |
| ob_build_selectA | Build a parameterized read-only SELECT from validated table, columns, filters, ordering, and pagination without executing it. |
| ob_generate_queryB | Generate read-only SQL templates from policy-filtered table metadata without executing them. |
| ob_generate_query_examplesB | Generate scenario-based read-only SQL examples from policy-filtered table metadata without executing them. |
| ob_find_recent_rowsC | Read recent rows from an allowed table using an explicit or metadata-detected time column with safe pagination. |
| ob_list_schemasC | List schemas/databases visible to the current OceanBase user, filtered by access policy. |
| ob_list_tablesB | List tables visible to the current OceanBase user, filtered by access policy. |
| ob_describe_tableC | Return column metadata for an allowed OceanBase table. |
| ob_get_schema_mapC | Return a compact, policy-filtered schema map with table summaries, key fields, and relationship hints. |
| ob_get_database_dictionaryC | Generate a bounded JSON or Markdown data dictionary from visible table and column metadata. |
| ob_find_related_tablesC | Find foreign-key and conservative naming-based relationships for an allowed OceanBase table. |
| ob_generate_data_dictionaryC | Generate bounded JSON, Markdown, or simple HTML data dictionary output from visible metadata. |
| ob_search_catalogC | Search schemas, tables, columns, and comments, filtered by access policy. |
| ob_find_tables_by_business_termB | Find visible candidate tables from a business term using glossary, catalog metadata, comments, and relationship evidence. |
| ob_search_everythingC | Search visible schemas, tables, columns, comments, and business glossary entries with confidence and evidence. |
| ob_search_business_glossaryB | Search optional business terms mapped to allowed OceanBase schemas, tables, and columns. |
| ob_find_columnsB | Find visible columns across tables by name, comment, data type, table pattern, or business term. |
| ob_get_table_schemaC | Return policy-filtered table columns and types for one table. |
| ob_get_table_ddlC | Return native or structured DDL metadata for an allowed OceanBase table. |
| ob_get_table_statsB | Return table-level optimizer statistics and metadata counts for an allowed OceanBase table. |
| ob_get_table_summaryC | Return a compact table summary with inferred purpose, key fields, relationship hints, and query entry points. |
| ob_get_indexesC | Return indexes for an allowed OceanBase table. |
| ob_get_constraintsC | Return constraints for an allowed OceanBase table. |
| ob_get_partitionsC | Return partition metadata for an allowed OceanBase table. |
| ob_sample_rowsB | Return a small, policy-filtered sample from an allowed table. Sensitive-looking fields are always masked. |
| ob_get_table_contextC | Return the common read-only table context needed for SQL drafting and data inspection. |
| ob_list_objectsC | List policy-filtered Oracle object metadata such as views, sequences, synonyms, procedures, functions, and packages. |
| ob_get_object_metadataC | Return bounded, policy-filtered metadata for one Oracle view, sequence, synonym, procedure, function, or package. |
| ob_detect_time_columnsC | Detect likely create, update, and business time columns from visible table metadata. |
| ob_detect_dimension_columnsC | Detect likely status, type, channel, region, flag, and category columns from visible table metadata. |
| ob_capture_metadata_snapshotB | Capture a bounded metadata-only OceanBase snapshot for later offline diff and impact analysis. |
| ob_compare_metadata_snapshotsB | Compare two metadata-only snapshots and return evidence-based structural changes. |
| ob_analyze_change_sql_impactC | Analyze which indexed project SQL snippets are impacted by a metadata snapshot diff. |
| ob_analyze_metadata_impactC | Summarize metadata diff impact using optional SQL usage index and business glossary evidence. |
| ob_generate_metadata_change_reportC | Generate a Markdown or simple HTML metadata change report from diff and impact evidence. |
| ob_compare_tablesC | Compare two visible tables by columns, indexes, constraints, and partitions. |
| ob_compare_schemasB | Compare two visible schemas by table list and bounded per-table metadata differences. |
| ob_convert_sql_dialectC | Convert read-only SQL between OceanBase MySQL and Oracle modes with documented limitations. |
| ob_explain_errorC | Explain a SQL error with policy context and visible metadata hints without executing the SQL. |
| ob_lint_sqlB | Lint read-only SQL for policy, dialect, pagination, ordering, sensitive fields, and optional EXPLAIN risk without returning data. |
| ob_rewrite_sqlB | Rewrite SELECT/WITH SQL into a safer read-only form without executing it. |
| ob_find_sql_usagesB | Find project SQL usages from a static SQL usage index without executing SQL or reading project files. |
| ob_validate_sql_snippetC | Validate a pasted read-only SQL snippet for policy, dialect, pagination, plan risk, and visible table or column metadata. |
| ob_explain_project_queryC | Explain a read-only SQL snippet from text or a local project file without executing it. |
| ob_generate_query_docB | Generate bounded JSON or Markdown documentation for a SQL snippet without executing the target query. |
| ob_generate_mapper_contextC | Generate read-only table and column context for a MyBatis mapper, SQL file, or explicit table. |
| ob_find_unknown_columns_in_sqlA | Find unknown tables or columns in SQL and return visible metadata-based candidates without executing the SQL. |
| ob_prepare_queryC | Prepare candidate tables, fields, read-only SQL drafts, and safety previews from visible metadata without executing the target query. |
| ob_profile_tableC | Return a bounded table-level profile with metadata counts, key fields, time/status fields, and sampled null overview. |
| ob_profile_columnsC | Return bounded, policy-filtered column profiles for an allowed OceanBase table. |
| ob_get_value_distributionB | Return bounded top-value distribution for one allowed column, with masking and sample limits enforced. |
| ob_check_data_qualityB | Run bounded read-only data quality checks for nulls, duplicate key risk, dimensions, and time columns. |
| ob_generate_table_docC | Generate bounded JSON or Markdown documentation for one visible table without returning sample values. |
| ob_generate_schema_docC | Generate bounded JSON or Markdown documentation for visible tables in one schema. |
| ob_generate_onboarding_docC | Generate bounded onboarding documentation from visible OceanBase metadata and optional business glossary hints. |
| ob_explain_relationshipB | Explain visible relationship evidence between two OceanBase tables without inventing missing relationships. |
| ob_generate_er_diagramC | Generate Mermaid and JSON ER metadata from allowed OceanBase table metadata and relationships. |
| ob_generate_er_documentC | Generate Markdown, PlantUML, and DOT documentation from allowed ER metadata and relationship evidence. |
| ob_generate_entity_diagramC | Generate a local entity-focused ER diagram from a business term or table, with Mermaid, JSON, and optional HTML. |
| ob_plan_er_exportC | Plan local ER HTML export commands for large OceanBase schemas without returning large inline HTML. |
| ob_generate_er_htmlC | Generate a self-contained HTML ER diagram from allowed OceanBase metadata and relationship evidence. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| connection | Default OceanBase MCP connection settings, excluding password and SSL material. |
| profiles | Configured OceanBase profiles with redacted connection settings. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sevoniva-labs/oceanbase-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server