Prerequisites
Cryptohopper MCP configured in an MCP client — see the setup overview.
A rough idea of what you want to ask. Prompt discipline helps most when the question is already clear in your head.
The meta-rules
Rule | What it means in practice |
Be specific about what, not how | Name the pair, exchange, timeframe, lookback, output format. Do not name the MCP tool or describe the call mechanics — the model picks the right tool better than you specify it. |
State constraints explicitly | "Use only ticker data" or "limit candle lookback to 100 bars" prevents the agent from over-fetching. |
Demand concrete numbers | "Include at least one price, percentage, or ratio per claim" turns vague verdicts into grounded ones. |
Fix the output format | If you want a table, say so. If you want a specific column order, say so. Without this, format drifts run-to-run. |
Give latitude for reasoning, not routing | The model should be free to conclude what it wants — but not to choose the timeframe. That's your call. |
Setup steps
1. Start with a blunt, direct prompt
Don't worry about elegance. "Using the Cryptohopper MCP, get the current BTC/USDT ticker on Binance." Run it. Look at the output. Note what you wish was different.
2. Iterate by adding specifics one at a time
Layer constraints until the output is what you want. Each sentence should add one tightening constraint — pair, exchange, lookback, indicator, output question, data-handling rule. For example: "Pull 1h candles for ETH/USDT on Binance, last 150 bars. Compute RSI(14). Tell me the current RSI value and whether the last 10 bars show any divergence between RSI and price. Base all calculations on closed bars only; ignore the current incomplete bar."
3. Save what works and version your library
The moment a prompt produces output you'd actually use, save it with a clear name (daily_digest_v3, ta_single_pair, multi_venue_depth_check). When you change a prompt, keep the old version — occasionally the simpler one worked better.
4. Tag prompts by cost profile
Keeps you from running an expensive prompt when a cheap one would do.
Tag | Meaning |
cheap | Ticker-only, runs on any tier |
medium | Tickers + candles, Explorer+ |
expensive | Includes orderbooks or deep history |
The patterns that earn their keep
Ten patterns cover ~90% of what you'll actually want. Full discussion at prompt patterns that work with the Cryptohopper MCP.
Pattern | Shape | Use case |
The scan | "For {set}, show me {N} that {criterion}" | Daily movers, watchlist checks |
The deep look | "Pull {timeframe} candles for {pair}. Compute {indicators}. Tell me {interpretation}" | On-demand TA |
Multi-timeframe | "Compare {indicator} across 1h/4h/daily. Do they agree?" | Swing-trade validation |
Depth check | "For {pair} on {exchange}, what would {size} cost given the book?" | Pre-trade slippage |
Scheduled report | "Every {cadence}, do {scans}. Summarise in {format}" | Digests and alerts |
Constrained question | "Use only ticker data. {question}" | Quota-conscious workflows |
Compare-and-explain | "Compare {A} and {B} on {axis}. Tell me which is {stronger}" | Relative-strength analysis |
News-plus-context | "Here's {article}. Identify tokens, pull live context, tell me what the market is doing" | News-driven research |
Self-check | "Cross-check against {second source}. If divergent, tell me and don't commit." | High-stakes decisions |
Meta-prompt | "What MCP tools do you have for crypto?" | Debugging, discovery |
Examples that work vs. examples that don't
✗ Bad
"Tell me about ETH."
No exchange, no timeframe, no specific question. The agent invents a generic summary.
✓ Good
"Pull the current ETH/USDT ticker on Binance and the last 100 × 4h candles. Tell me the current price, 24h change, and whether the 4h trend is up/down/ranging. Keep the answer to three sentences."
Pair, exchange, timeframe, lookback, specific questions, fixed output length.
✗ Bad
"Should I buy BTC?"
Asks the model for advice it can't responsibly give. It will either refuse or invent a plausible-sounding answer not grounded in data.
✓ Good
"For BTC/USDT on Binance, pull 1h candles (last 150). Report: current trend, RSI(14), distance from the 50-period EMA, and whether volume today is above or below the 7-day average. Don't give buy/sell advice — just the data and your read of the setup."
Same underlying question, translated into things the model can actually answer with data.
✗ Bad
"Run a TA."
No pair, no exchange, no timeframe. Every run will ask which.
✓ Good
"Run a TA on {pair} on Binance, 4h timeframe, last 150 bars. Include RSI(14), MACD, 20/50/200 EMAs, and recent support/resistance. Output: three paragraphs — trend, momentum, key levels."
Parameterised for pair; all other choices fixed.
Troubleshooting
The output is generic and doesn't match what you wanted
Re-read your prompt. If you find adjectives like "good", "strong", or "healthy" — they're subjective. Replace with numeric thresholds. "Strong uptrend" → "price above 20 EMA, EMA rising, RSI above 55."
The agent makes the wrong tool call
Usually means you named the wrong timeframe or exchange. Check your prompt before blaming the model.
The same prompt gives differently shaped answers across runs
You haven't fixed the output format. Add an explicit template: "output as markdown table with columns X, Y, Z in that order."
The prompt works but is long and unwieldy
Break it into named sections: [CONTEXT], [TASK], [OUTPUT]. Models handle structured prompts better than a wall of text.
The agent pulls data you already have in context
Tell it: "I've already provided X above; do not re-fetch." Especially useful with thin-context workflows — see how to feed an agent market context without burning tokens.
You find yourself writing the same paragraph at the top of every prompt
That's your context block. Extract it into a reusable snippet your client can inject automatically. See how to add memory to your crypto AI agent.
