Connect Hero to Gemini CLI

Gemini doesn't support custom MCP connectors in its chat app — but Gemini CLI does. Here's how to configure Hero and query your Oracle ERP and HCM data from the terminal.

Read this first

Consumer Gemini is not supported

Gemini chat can't add custom MCP servers

Google's consumer Gemini app at gemini.google.com only allows Google-curated Connected Apps — Workspace, Maps, YouTube and similar. There is no option to add a custom MCP server, so Hero cannot be connected there.

This is a Google platform limitation, not a Dayos one. See Google's Connected Apps documentation.

The good news: Gemini CLI fully supports Hero. Instead of pasting a connector URL into a settings screen, you add the Dayos MCP server to a local JSON config file and authenticate with a long-lived access token.

The same configuration works in Antigravity, Claude Code, and Cursor — only the config file location changes. See Step 3 for the full path table.

Prefer a chat interface?

If you'd rather work in a chat app than a terminal, Claude and ChatGPT both support the Hero connector directly. Follow the Claude setup guide or the ChatGPT setup guide.

Before you begin

Requirement 01

Gemini CLI

Installed and signed in to your Google account.

Requirement 02

Node.js 18+

Providesnpx, which runs the MCP bridge.

Requirement 03

Oracle access

An active Oracle Fusion Cloud environment and your login.

Check your IP allowlist first

Some organizations restrict which external IP addresses can reach Oracle. If your IT team uses IP allowlisting, Dayos's IP ranges must be approved before you start. Contact support@dayos.com first.

01

Install Node.js

Hero connects throughmcp-remote, which runs vianpx. Confirm you have it before editing any config:

npx --version

If you see a version number, you're set. If you getcommand not found, install Node.js from nodejs.org and run the check again.

02

Get your access token

Unlike the chat connectors, Gemini CLI doesn't run an interactive OAuth flow. You generate a token once and place it in your config file.

  1. Go to dev.dayos.com/mcp.
  2. Enter your Oracle Fusion details — tenant code, datacenter, username, and password. How to find your tenant code and datacenter.
  3. Submit the form. Your access token is displayed on the next screen.
  4. Copy the token now and store it somewhere safe — it is shown only once.
Dayos · MCP access token
dev.dayos.com/mcp

Your access token

eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhYmNkLXVzMiIsInRlbmFudCI6ImFiY2QiLCJkYyI6InVzMiIsImlhdCI6MTc1MzgzMjAwMH0.
Shown once — copy it now

SS-G1The access token screen at dev.dayos.com/mcp.

Treat this token like a password

The token authenticates as your Oracle user and is valid for one year. Never commit it to a shared repository. If it leaks, generate a new one at dev.dayos.com/mcp to invalidate the old token.

03

Find your config file

Gemini CLI reads MCP servers from a JSON config in your home directory. If the file doesn't exist yet, create it.

EditorConfig file location
Gemini CLI~/.gemini/config/mcp_config.json
Claude Code CLI.mcp.json (project) or ~/.claude/mcp.json (global)
Cursor~/.cursor/mcp.json or .cursor/mcp.json (project)
The config format below is identical across all three editors — only the file path differs.
04

Add the Dayos MCP server

Paste the following inside themcpServers key, replacingYOUR_JWT_TOKEN with the token from Step 2. Pick the tab for your operating system — the only difference is thePATH value.

{ "mcpServers": { "dayos-hero-ai": { "command": "npx", "args": [ "-y", "mcp-remote", "https://ai-ms-dev.api.dayos.com/mcp", "--header", "Authorization: Bearer YOUR_JWT_TOKEN" ], "env": { "PATH": "/usr/local/bin:/opt/homebrew/bin:/usr/bin:/bin" } } } }
{ "mcpServers": { "dayos-hero-ai": { "command": "npx", "args": [ "-y", "mcp-remote", "https://ai-ms-dev.api.dayos.com/mcp", "--header", "Authorization: Bearer YOUR_JWT_TOKEN" ], "env": { "PATH": "C:\\Program Files\\nodejs;C:\\Windows\\System32" } } } }

Mind the space after Bearer

The header must readAuthorization: Bearer TOKEN. Omitting the space is the most common setup error.

No trailing slash

The server URL ends in/mcp — not/mcp/. A trailing slash prevents tools from loading.

The env block is required

CLI editors don't inherit your shell'sPATH. Leaving out theenv block is the usual cause of a 30-second connection timeout.

05

Verify the connection

Save the config file and restart Gemini CLI — configuration is read only at startup. Then list your MCP servers:

gemini mcp list
gemini cli — mcp list

SS-G2A healthy connection: status connected, 13 tools loaded.

If you can test the bridge outside the editor, run it directly — useful for reading raw errors:

npx -y mcp-remote https://ai-ms-dev.api.dayos.com/mcp \ --header "Authorization: Bearer YOUR_TOKEN"
06

Run your first report

Hero is connected. Ask in plain English — Gemini picks the right tool path automatically.

"Run the Trial Balance report for the current period.
"What are the five suppliers with the largest overdue balances?
"Add a cost-center column to the GL summary report.Tier 2 — BIP admin
gemini cli — hero

SS-G3Hero running an existing Oracle report from Gemini CLI, with CSV output.

Available tools

Hero exposes 13 tools across three workflow paths. Gemini chooses a path from your intent — you never call these directly.

What you askPathStarting tool
"Show me…", "Build a query…", "I need a report for…"A — Create newdiscover_schema
"Change the…", "Add a column to…", "Fix the GL report…"B — Edit existingsearch_reports
"Run the…", "Pull data from…", "Execute the… report"C — Run existingsearch_reportsrun_report
Path A

Create a new report

discover_schema

Explore Oracle Fusion tables by domain (GL, AP, HR…); auto-loads join patterns.

inspect_table

Get columns, data types, and sample rows for a specific table.

lookup_values

Find exact stored values for WHERE clauses — ledger names, department codes.

explore_sql

Run an arbitrary SELECT for investigation. Capped at 20 rows; last resort.

get_domain_skill

Load domain-specific Oracle knowledge: join patterns, SQL templates, anti-patterns.

validate_sql

Validate SQL structure against Oracle BIP rules. Local, no network call.

execute_report

Deploy a new SQL query to Oracle BIP, execute it, return data plus a CSV download.

Path B

Edit an existing report

search_reports

Find existing BIP data models by name or path — "Trial Balance", "AP Invoices".

get_report_sql

Fetch the current SQL datasets from a data model.

validate_sql

Validate the modified SQL before saving.

apply_report_change

Save modified SQL back to the data model. Auto-clones Oracle-seeded reports.

Path C

Run an existing report

search_reports

Find the report by name or path.

run_report

Execute a data model and return rows plus CSV. Auto-converts .xdm paths to .xdo companion reports, with ephemeral fallback for standalone models.

list_reports

Browse the full BIP report catalog by domain. Shared utility.

Troubleshooting

The server connection times out and the initialize request never completes.

  • Verify the env block with PATH is present — it's required for CLI editors.
  • Check your token hasn't expired. Tokens are valid for one year.
  • Test the bridge manually with npx -y mcp-remote … --header "Authorization: Bearer YOUR_TOKEN" to see the raw error.
  • Check the header format — "Authorization: Bearer TOKEN" needs a space after Bearer.
  • Confirm the token is valid and not expired.
  • Look for typos in the --header argument.
  • Restart the editor — config changes are only read at startup.
  • Check the editor logs for MCP connection errors.
  • Verify there is no trailing slash in the URL: /mcp, not /mcp/.
  • Ensure the header has a space: "Authorization: Bearer", not "Authorization:Bearer".
  • Check for proper quoting in the JSON — the whole header is one string.
  • Install Node.js from nodejs.org.
  • Verify with npx --version.
  • Update PATH in your config to include the Node.js bin directory.
  • Still stuck? Ask in the Dayos community — our team monitors it daily.
Was this helpful?