Installing the MCP server RPM
The Vertica MCP server RPM cannot be installed on a host that has Vertica installed, whether Vertica is running or not. Install the MCP server on a dedicated host outside the Vertica cluster. An existing Vertica database cluster is not required at RPM installation time, but you must specify the required connection information before the MCP server can connect to the database.
Upgrading from a bundled MCP server to a standalone MCP server
Vertica version 26.2 and earlier bundle the MCP server with the database. To upgrade to the 26.3 standalone MCP server from an earlier release:
- Upgrade the Vertica cluster to version 26.2.0-1.
- On a host that does not have Vertica installed, install the MCP server RPM by following the steps described here.
Installing the MCP server
-
As root or with sudo, install the
vertica-mcp-serverRPM:MCP_OWNER_USER=mcpuser rpm -Uvh --replacepkgs --ignoresize mcp_server_rpmwhere
mcp_server_rpmis the RPM path and filename, for example/tmp/vertica-mcp-server-26.3.0-0.x86_64.rpm.MCP_OWNER_USERsets the operating system user that owns the MCP server installation. The default value ismcpuser. Use--owner-userto specify a different user.On success, you should see the following output:
Installed MCP binary to /opt/vertica/bin/vertica_mcp_server Ensured log directory exists at /opt/vertica/log Set ownership to mcpuser:mcpuserThe installation process runs a compatibility check with the Vertica cluster. The check is skipped if the cluster is not reachable or the cluster URL is not provided at installation time.
-
Confirm the installed RPM version:
rpm -qa vertica-mcp-serverThe output shows the installed version, for example:
vertica-mcp-server-26.3.0-0.x86_64 -
Switch to the MCP user:
su - mcpuserCaution
You must switch to the MCP user before starting the MCP server for the first time. Starting the server as root sets incorrect permissions on/opt/vertica/configand/opt/vertica/log. If you start the server as root, you must manually correct permissions on those directories before the MCP user can start the server. -
View the contents of the MCP server configuration file:
cat /opt/vertica/config/mcp_server.yamlThe file contains default values after a fresh installation, for example:
# MCP Server Configuration File # This file was auto-generated with default values # # Configuration priority (highest to lowest): # 1. Environment variables (MCP_*) # 2. This YAML file # 3. Built-in defaults # # For environment variable overrides, use: # MCP_SERVER_ADDR, MCP_LOG_DIR, MCP_SSL_BASE_PATH, etc. # server_addr: :8667 read_timeout: 15s write_timeout: 1m40s idle_timeout: 1m0s shutdown_timeout: 30s max_header_bytes: 1048576 ssl_base_path: /opt/vertica/config/mcp_server ssl_cert_path: /opt/vertica/config/mcp_server/server.pem ssl_key_path: /opt/vertica/config/mcp_server/server.key ca_cert_path: /opt/vertica/config/mcp_server/ca.pem ca_key_path: /opt/vertica/config/mcp_server/ca.key use_pg_client: false vertica_host: vnode1 vertica_port: "5433" vertica_dbname: "" vertica_sslmode: require query_timeout: 20s max_query_rows: 10000 storage_type: leveldb storage_path: /opt/mcp_storage/userdb vcluster_enabled: true vcluster_server_url: https://vnode1:8665 vcluster_cert_path: /opt/vertica/config/vcluster_server/admin.pem vcluster_key_path: /opt/vertica/config/vcluster_server/admin.key vcluster_ca_cert_path: /opt/vertica/config/vcluster_server/ca.pem vcluster_skip_tls_verify: true vcluster_nodes_cache_ttl: 5m0s log_dir: /opt/vertica/log max_active_jobs: 5 max_running_jobs: 3 max_finished_jobs: 50 finished_job_retention: 240h0m0s query_tree_retention: 8760h0m0s external_url: "" node_host_overrides: 192.168.1.101: vnode1 192.168.1.102: vnode2 192.168.1.103: vnode3 192.168.1.104: vnode4 job_queue_path: /opt/mcp_storage/job_queue -
Edit the following fields in
mcp_server.yaml:vi /opt/vertica/config/mcp_server.yamlvertica_host: The hostname or IP address of the Vertica database server.vertica_dbname: The name of the Vertica database to connect to.vcluster_server_url: The URL of the VCluster Web Service, for examplehttps://<vcluster_server_node>:8665.
Note
If you are upgrading from a previous bundled MCP server deployment, you can use your existingmcp_server.yamlconfig file instead of manually editing the default values. -
Copy the VCluster server SSL certificate files to the MCP server host.
scp -r <vcluster-server-node>:/opt/vertica/config/vcluster_server/admin.pem <mcp-server-node>:/opt/vertica/config/vcluster_server/ scp -r <vcluster-server-node>:/opt/vertica/config/vcluster_server/admin.key <mcp-server-node>:/opt/vertica/config/vcluster_server/ scp -r <vcluster-server-node>:/opt/vertica/config/vcluster_server/ca.pem <mcp-server-node>:/opt/vertica/config/vcluster_server/ -
Start the MCP server:
/opt/vertica/bin/manage_mcp_server.sh start mcp_serverOn success, you should see output similar to the following:
Doing action start Starting MCP server Started MCP server with PID 874791 MCP server startup verified successfullyVerify that the MCP server binary exists at
/opt/vertica/bin/vertica_mcp_serverand certificate files exist at/opt/vertica/config/mcp_server. -
Generate a JWT token for the MCP server. For more information about JWT token generation options, see MCP server.
/opt/vertica/bin/vertica_mcp_server --generate-token --userid user_id --dbpass password -
Copy the JWT token string from the output of the previous command.
-
Update your AI agent configuration with the JWT token and the MCP server URL. The steps required depend on the type of agent you are using.
For an example using Claude Desktop, see Claude Desktop example.
The MCP server URL has the following format:
https://<mcp_server_node>:8667/mcp
The AI agent can now connect to the database and query data.
Starting and stopping the MCP server
Switch to the MCP user and run the following command to start the MCP server:
/opt/vertica/bin/manage_mcp_server.sh start mcp_server
To stop the MCP server:
/opt/vertica/bin/manage_mcp_server.sh stop mcp_server
Uninstalling the MCP server
To uninstall the MCP server:
rpm -e vertica-mcp-server
To verify uninstallation:
rpm -qa | grep -i vertica-mcp-server
After uninstallation, the MCP server binary is removed from /opt/vertica/bin. The configuration .yaml file and log files are preserved.