ocean-agent
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PACIFICA_ENV_FILE | Yes | Absolute path to the .env file containing Pacifica configuration (ADDRESS, PACIFICA_API_KEY, PACIFICA_BASE_URL, or testnet variants). |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scan_fundingA | Scan funding rates across all Pacifica perp markets, ranked by annualized funding APR (absolute value). Positive funding means shorts collect, negative means longs collect. Set hedgeable_only=true to only show coins that also have a spot market (required for delta-neutral farming). |
| recommend_settingsA | Read the connected account and recommend how to size trading: risk per trade, number of concurrent positions, leverage, margin mode (isolated vs cross), and the notional cap, with the reasoning behind each number. Read-only: it changes nothing, it only proposes. Every figure is derived from the account balance, the exchange's own market specs (max leverage, maintenance margin), and win rates measured by walk-forward validation over ~9 years of price history, not from convention or rules of thumb. The central point most people get wrong: leverage does NOT make positions bigger. Position size comes from the stop distance (notional = capital x risk% / stop%), where leverage cancels out. Leverage only changes how much margin is locked, so the best leverage is the SMALLEST one that fits the notional you want, going higher just moves the liquidation price closer for no gain. This tool computes that minimum for the connected account. |
| account_statusA | Get the connected Pacifica account: USDC balance, equity, open positions, and any funding-farm position opened by this tool. |
| open_funding_positionA | Open a funding-farming position on the best available market. mode='hedged': buy spot + short perp of equal size (delta-neutral, price-risk free, only works on spot-listed coins). mode='directional': single perp position following the funding sign (collects funding but IS exposed to price moves). max_usd caps the position size. Requires PACIFICA_API_KEY. IMPORTANT: this places a REAL order. First call with confirm=false (default) to preview; only call with confirm=true after the user explicitly approves. All orders carry builder code 'mustache' (attached only if the account approved it; otherwise the order still goes through without it). |
| close_funding_positionA | Close the funding-farm position previously opened by this tool (both legs for hedged mode). Requires PACIFICA_API_KEY. IMPORTANT: places a REAL closing order. Call with confirm=false first to preview; only confirm=true after the user approves. |
| plan_oi_hedgeA | Plan OI farming on Pacifica with a cross-exchange hedge. For each coin, compares funding rates across 10+ exchanges (Binance, Bybit, Hyperliquid, Coinbase, Variational, etc.) and recommends: which side to hold on Pacifica (this builds your OI / points), which exchange to open the OPPOSITE position on (this cancels the price risk), and the resulting net funding carry APR. Positive carry = you get PAID to farm OI delta-neutrally. Note: extreme APRs on exotic/pre-market symbols are often illiquid, prefer major coins. |
| open_pacifica_legA | Open the Pacifica leg of an OI-farming hedge: a perp position on the given symbol and side ('long' or 'short'). Use plan_oi_hedge first to pick the symbol/side, and open the opposite position on the recommended exchange yourself, this tool only executes the Pacifica side. Requires PACIFICA_API_KEY. IMPORTANT: places a REAL order. Call with confirm=false first to preview; only confirm=true after the user approves. Orders carry builder code 'mustache' (attached only if approved). |
| evaluate_printA | Evaluate a Pacifica Print offer statistically. Print pays daily APY while a target-price order waits, but fills you at your target when the 24h checkpoint lands beyond it (often with the market already past your price). This tool uses ~9 YEARS of hourly history (Binance history joined to Pacifica) to compute: fill probability, average overshoot (instant mark-to-market loss when filled), and the BREAKEVEN APY that would compensate it. Pass shown_apy (the % displayed in the Pacifica UI) to get a verdict: favorable or negative expected value. distance_pct is the target's distance from mark (0.5–5). Measured result as of 2026-08-05: Print is unfavorable in normal conditions (Pacifica implied vol 26-38% vs realized 40-53%). The one exception found is ETH short at 2% distance while the trailing 7-day realized vol is under 24.2% (~+17%/yr, about 3% of the time). print_eval's vol_gate() reports whether that window is open right now. |
| print_quoteA | Get a LIVE quote for a Pacifica Print order: the premium (yield) you would earn per 24h cycle, implied volatility, and liquidation price. Print = place a target-price (strike) order that earns premium while waiting; fills at your strike if the 24h checkpoint lands beyond it. side long = buy below market, short = sell above market. strike_price 0 = auto (1% away from mark). Uses Pacifica's own simulator (undocumented web API, may change without notice). Free, no execution. |
| print_orderA | Place a Pacifica Print order via API (what the web UI does, first programmatic access; undocumented, may change). Deposits usd into the Print market: you earn premium each 24h cycle while your strike order waits, and get filled at your strike if the checkpoint lands beyond it. IMPORTANT: moves real funds, call with confirm=false first to preview, confirm=true only after the user approves. Run evaluate_print and print_quote first to check the expected value. |
| print_statusA | List my active Pacifica Print deposits: market, direction, deposit, strike price, leverage, entry mark price, premium collected, and age. |
| print_closeA | End a Pacifica Print deposit early and withdraw (signed end_game + withdraw_from_game). IMPORTANT: moves funds, confirm=false previews, confirm=true executes after user approval. |
| top_setupsA | Scan top-volume Pacifica perps across three horizons and return the highest-probability setups RIGHT NOW: entry, direction, leverage, margin size, take-profit and stop-loss (as price move AND as % of margin), win rate with sample count, and fee-adjusted expected value. The three timeframes are NOT fixed, they are whichever ones currently measure the highest expected value, re-selected every 7 days by the re-measurement job. Ask analyze_chart if you need a specific timeframe. The win rate shown is MEASURED, not a backtest number: it comes from walk-forward validation over ~9 years (Binance history joined to Pacifica), where a prediction is formed using only data available at that moment and then checked against what actually happened. That measurement found the realistic ceiling in this market is about 58%, and that raw backtest values above ~55% do not survive out of sample (a backtest claiming 73% came out at 51% in reality). So expect numbers in the low-to-mid 50s. A setup showing "70%" would be a bug, not an opportunity. STRICT honesty gates: 30+ occurrences on that exact coin+timeframe, at least 2%p above the base rate, positive EV after fees, and the signal must beat the unconditional baseline for its direction (otherwise it is riding market drift, not skill). Returning ZERO setups is common and correct. Every shown setup is logged for later scoring via review_predictions. Takes 1-2 minutes to scan. |
| learned_winratesA | Show the signal win rates LEARNED from continuous observation, the bot records every firing signal across the top-volume coins (whether or not it traded them) and grades them against what actually happened, building a real-world win-rate database over time. This is measured live performance, not backtest. Empty early on; fills up as the autonomous loop runs. |
| learned_combosA | Show COMBINATION signal win rates learned from live observation, cases where multiple indicators fire together (e.g. RSI-overbought + Bollinger-upper) in a given market regime (fear/neutral/greed). Combos usually carry a stronger edge than any single signal, and the setup scanner automatically boosts picks that match a high-win-rate combo. Empty until enough co-firing signals are graded; fills as the bot runs. |
| review_predictionsA | Score past setups from top_setups against what actually happened: per-prediction hit/miss, cumulative realized win rate vs predicted win rate (calibration). If realized falls 10%p+ below predicted, it flags a likely regime change and recommends re-measuring the signal statistics. This is the feedback loop that keeps recommendations honest over time. |
| open_with_bracketA | Open a perp position with EXCHANGE-NATIVE take-profit / stop-loss attached, so the position is protected even if this bot or the user's computer is off, Pacifica closes it at the trigger price. side: 'long'/'short'. usd: notional size. stop_loss_pct / take_profit_pct: distance from entry as a percent (e.g. 3 = 3%); 0 disables that leg. Triggers use mark price. IMPORTANT: places a REAL order, call with confirm=false first to preview, confirm=true only after the user approves. Carries builder code 'mustache' (if approved). |
| protect_positionA | Attach EXCHANGE-NATIVE stop-loss / take-profit to a position that is ALREADY OPEN (opened anywhere, this bot, the website, or another tool). Percentages are distances from the current mark price (e.g. 3 = 3%); 0 disables that leg. Once set, Pacifica enforces the triggers even if this bot or the user's PC is offline. IMPORTANT: modifies live protection, call with confirm=false first to preview, confirm=true after the user approves. |
| market_contextA | Live market context to pair with chart analysis: crypto Fear & Greed index (with a regime note, dip-buying historically loses in extreme fear), the latest headlines, and the current funding-rate extremes on Pacifica. Use this before acting on any indicator signal, since signal hit-rates depend heavily on the market regime. Context is for risk management and regime read, not news-chasing entries. |
| analyze_chartA | Technical analysis for a Pacifica market from real candle data (never estimated). DEFAULT interval='multi' runs the full playbook: FOUR timeframes at once (1h/4h/12h/1d), each with a state snapshot (trend/RSI/MACD/Bollinger) PLUS the measured historical win rates of indicator signals on THIS exact coin+timeframe (only signals passing 30+ samples, +5%p edge, positive EV after fees are shown), marking which are firing right now vs waiting. Pass a single interval (1m/3m/5m/15m/30m/1h/2h/4h/8h/12h/1d/1w) for a deep 8-indicator snapshot of just that timeframe (incl. StochRSI, ATR, VWAP). Takes ~30s in multi mode. Win rates are past-regime measurements, not guarantees, pair with market_context for regime read. |
| check_positionA | Check the health of the current farm position: live funding APR, price move since entry, and whether exit conditions are met. Use this periodically to decide whether to close. |
| accept_termsA | Record the user's answer to the Terms of Use question. Call ONLY after the user has explicitly answered in chat. confirm=true records acceptance (which approves the builder code from the Terms with the user's key); confirm=false records the decline. Either answer is asked only once. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/oceanagent/ocean-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server