CG Alpha MCP
The CG Alpha MCP server integrates crypto news, sentiment data, and technical analysis tools to help users analyze token performance and market trends.
Core Features:
ELFA API Integration: Access trending tokens, token-specific news, keyword mentions, and make custom queries to any ELFA API endpoint
Technical Analysis: Calculate RSI and Bollinger Bands from price data, with options to compute multiple indicators in a single call
Configuration Management: Set and manage ELFA authentication (API keys, headers, base URL) and reload environment variables during runtime
Status Monitoring: Check current ELFA configuration and environment variable status
Integration & Compatibility:
Designed to work with MCP clients like Claude Desktop or Cursor
Interoperates with other MCP servers like CoinGecko (for price data) and Nansen (for smart money insights)
Supports customizable timeframes, chains, and query parameters for enhanced token analysis
Provides cryptocurrency market data and analysis tools including trending tokens, token news, keyword mentions, RSI calculations, and Bollinger Bands through ELFA API integration for Bitcoin and other cryptocurrencies
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CG Alpha MCP show me trending tokens with RSI analysis for the last 24 hours"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
cg-alpha-mcp
An MCP server that connects Elfa (crypto news & twitter sentiment data) and works alongside the CoinGecko MCP. Includes a tiny TA module (RSI + Bollinger Bands) to quickly inform users of token performance in various timeframes. Ideally used with CoinGecko feature top gainers/losers, which can be called directly from the LLM with CoinGecko Pro. Users can also connect the Nansen MCP for additional context in their token alpha searches.
Features
ELFA integrations
/v2/aggregations/trending-tokens/v2/data/token-news/v2/data/keyword-mentions
Generic ELFA proxy: call any ELFA path with
elfa_queryAuth from
.env(no key pasting into the chat)TA utilities: RSI (Wilder) and Bollinger Bands (SMA + population stdev)
Designed to run with any MCP client (Claude Desktop, Cursor, etc. - n.b. designed with Claude desktop)
Related MCP server: Crypto Indicators MCP Server
Prompts and responses
See the full set here: promts_responses_images/
Quick Start
1) Requirements
Node.js 20+ (works on 22 as well)
A modern MCP client (e.g., Claude Desktop or Cursor)
2) Install
git clone https://github.com/<you>/cg-alpha-mcp.git
cd cg-alpha-mcp
npm install # installs dependencies (node_modules is ignored in Git)3) Configure environment
cp .env.example .env
Edit
.envand setELFA_API_KEY(andCOINGECKO_API_KEYif you use the CoinGecko MCP with a key)Keep
.envprivate — it’s already in.gitignore.
4) Hook into your MCP client
Most MCP clients let you add a custom server command. Use:
Command:
nodeArgs:
C:/Users/YOUR-FILE-NAME/cg-alpha-mcp/mcp-server.js(or./mcp-server.json macOS/Linux)Working directory: the repo root On Windows, paths often look like:
C:\Users\YOUR-FILE-NAME\cg-alpha-mcp\mcp-server.js
5) Once added, your client should show tools like:
elfa_statuselfa_reload_envelfa_trending / elfa_trending_tokenselfa_token_newselfa_keyword_mentionselfa_query
6) Environment Variables
See .env.example for all options.
ELFA_API_KEY (required for ELFA calls)
Get from ELFA (https://www.elfa.ai/api).
COINGECKO_API_KEY - add to Claude config file.
Advanced (optional):
ELFA_HEADER: header name for auth (defaults tox-elfa-api-key)ELFA_AUTH_TYPE: set tox-elfa-api-key(default) or bearerELFA_BASE: ELFAbase URL (defaults tohttps://api.elfa.ai)
7) Claude config file - structure at bottom of README
8) (Optional) - Nansen paid users can download .dxt file to install
Either drag and drop into Extensions or
Extensions > Advanced Setting > Install Extension > Choose
.dxtfile > Enter your API key
9) Troubleshooting:
401 “API key is required”
Check
.envhasELFA_API_KEY=...Run
elfa_reload_env(no restart needed)Verify header style: ELFA expects
x-elfa-api-key(the server auto-tries both)
404 “Cannot GET …/data/trending”
Use
/v2/aggregations/trending-tokens(the server’selfa_trendingalready points here).envin the right place?Put
.envin the same folder asmcp-server.js(repo root)
Windows path issues
Use absolute paths in the MCP client if needed, e.g.
C:\Users\YOUR-FILE-NAME\cg-alpha-mcp\mcp-server.js
Security
.envis ignored by git.Include a public, safe
.env.exampleso others can configure their own keys.
Useful Tools & What They Do
elfa_status - Shows current base URL and masked auth status.
elfa_reload_env - Reloads .env at runtime (no restart). Use this after editing the
.env.elfa_set_auth - Manually sets the API key and header style if needed:
{ "key": "sk-...", "headerName": "x-elfa-api-key", "scheme": "" }
elfa_trending / elfa_trending_tokens - Wrapper around /v2/aggregations/trending-tokens:
{ "timeframe": "24h", "limit": 10, "chain": "all" }
elfa_token_news - Token news:
{ "symbols": "BTC,ETH", "limit": 20, "start": "2025-08-01", "end": "2025-08-16" }
elfa_keyword_mentions - Multi-keyword mentions:
{ "keywords": ["bitcoin","halving"], "limit": 50 }
elfa_query - Generic ELFA proxy for any path:
{ "path": "/v2/aggregations/trending-tokens", "method": "GET", "query": { "timeframe": "24h", "limit": 10 } }
Technical Analysis (TA)
We provide a tiny pure JS TA module in services/ta.js:
rsi(values, period=14)→ last RSI value (0–100)bollinger(values, period=20, mult=2)→{ mean, upper, lower, last, percentB, bandwidth }Inputs are arrays of numeric closes in order oldest → newest. Your MCP orchestration fetches price series (e.g., via CoinGecko MCP) and then calls TA.
Intended Prompt Workflow:
"Show me the top 15 trending tokens on coingecko via their mcp, and the top 10 trending tokens on Elfa." (- Nansen users can ask for the recent smart money flows and activity.) "Show me the top 10 gainers and top 10 losers over the past 7 days in USD (specify timeframe: 24hours, 7days, 30days, specify token range: top 1000 or all tokens)." (- Goingecko Pro API users can call this from the MCP. Demo API users can ask Claude to determine this manually - *tokens with 24hr volume over 50k.)
User Chooses Specific Coins/Tokens of Interest from above lists:
"For (selected coins/tokens), show me the token news from Elfa AI, the trends in mentions and mentions delta from Elfa, and give me the RSI and Bollinger Bands for each." (- Nansen users can also ask for smart money data/comparison for these tokens - who is buying (selected coins/tokens)?)
Other prompts:
Built-in timeframe (fast): "Show me the top 10 gainers and top 10 losers over the past 7 days in USD, and give me the RSI and Bollinger Bands for each." Custom timeframe (computed): "Find the best and worst performing coins over the past 12 hours, limited to the top 200 by market cap. Add RSI and Bollinger Bands." Specific coins/tokens: "For BTC, ETH, and SOL, calculate the percentage change over the last 72 hours and display RSI(14) and Bollinger Bands(20,2)." Multi-window snapshot: "Create a snapshot: "top 5 gainers and losers for 24h, 7d, and 30d, with RSI and Bollinger for each result." Latest Trending Tokens (ELFA) "Show me the top trending tokens from ELFA." RSI Calculation "Fetch Bitcoin's last 50 closing prices from CoinGecko and calculate RSI." Bollinger Bands "Get ETH’s last 30 days of prices and calculate Bollinger Bands." Gainers & Losers "Find the top 5 gainers and losers in the last 24h and calculate their RSI."
Claude config file structure:
{
"mcpServers": {
"cg-alpha-mcp": {
"command": "node",
"args": [
"/absolute/path/to/cg-alpha-mcp/mcp-server.js"
]
},
"coingecko_mcp_local": {
"command": "npx",
"args": [
"-y",
"@coingecko/coingecko-mcp"
],
"env": {
"COINGECKO_DEMO_API_KEY": "YOUR_DEMO_KEY",
"COINGECKO_ENVIRONMENT": "demo"
}
}
}
}Available Tools
12 toolselfa_keyword_mentionsBRead-only
Multi-keyword mentions. Params: keywords (array|string), start, end, chain, limit, cursor, sources.
Inputs: keywords, start, end, chain, +3 more.
elfa_queryBRead-only
Generic ELFA proxy. Call any ELFA path with method/query/body. Returns JSON.
Inputs: path (required), method, query, body.
elfa_reload_envB
Reload .env files from common locations.
Inputs: no named parameters.
elfa_set_authA
Set ELFA API auth. Params: key (string), headerName (Authorization|x-elfa-api-key), scheme (e.g., Bearer).
Inputs: key (required), headerName, scheme.
elfa_set_baseB
Set ELFA base URL (e.g., https://api.elfa.ai).
Inputs: base (required).
elfa_statusBRead-only
Show current ELFA config (key masked) and .env load info.
Inputs: no named parameters.
elfa_token_newsCRead-only
Token news. Params: symbols (comma), chain, start, end, limit, cursor, sources.
Inputs: symbols, chain, start, end, +3 more.
elfa_trendingCRead-only
Alias to /v2/aggregations/trending-tokens (timeframe, chain, limit, cursor).
Inputs: timeframe, chain, limit, cursor.
elfa_trending_tokensCRead-only
Trending tokens aggregation. Params: timeframe, chain, limit, cursor.
Inputs: timeframe, chain, limit, cursor.
ta_bollingerBRead-only
Compute Bollinger Bands (SMA + population stdev). Inputs: values:number[] (oldest→newest), period?:number(20), mult?:number(2).
Inputs: values (required), period, mult.
ta_rsiARead-only
Compute RSI (Wilder). Inputs: values:number[] (oldest→newest), period?:number(14). Returns latest RSI.
Inputs: values (required), period.
ta_summaryBRead-only
Return both RSI and Bollinger in one call. Inputs: values:number[] (oldest→newest), rsiPeriod?:number(14), bbPeriod?:number(20), bbMult?:number(2).
Inputs: values (required), rsiPeriod, bbPeriod, bbMult.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 12 tools
Most tools have distinct purposes, but there is some overlap: 'elfa_trending' and 'elfa_trending_tokens' appear to serve similar functions, with the former being an alias. The ELFA configuration tools (set_auth, set_base, reload_env, status) are clearly distinct from query and analysis tools, and the technical analysis tools (bollinger, rsi, summary) are well-differentiated, though 'ta_summary' combines functionality from the other two.
Naming is mostly consistent with a clear prefix pattern: 'elfa_' for ELFA-related tools and 'ta_' for technical analysis tools. However, there are minor deviations: 'elfa_trending' is an alias that doesn't follow the verb_noun pattern as strictly as others, and 'elfa_query' uses a generic term that could be more descriptive. Overall, the conventions are readable and predictable.
With 12 tools, the count is well-scoped for the server's purpose, which combines ELFA API interactions and technical analysis. Each tool earns its place, covering configuration, data retrieval, and analysis without being overly broad or sparse. This number allows for comprehensive functionality while remaining manageable.
The tool surface is largely complete for its domain, covering ELFA API configuration, data querying (keyword mentions, token news, trending tokens), and technical analysis (RSI, Bollinger Bands). A minor gap is the lack of tools for more advanced ELFA operations beyond basic queries, but core workflows are well-supported, and agents can work around this with the generic 'elfa_query' tool.
Related MCP Connectors
Crypto market signals, technical indicators, and sentiment analysis for AI agents.
Crypto market intelligence: social sentiment, on-chain, trending narratives & analyst insights.
Track crypto token and narrative attention across platforms. Free key at trendsapi.ai
Crypto market data for AI agents: live prices, OHLCV, sentiment, indicators and exchanges.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceEnables advanced technical and fundamental analysis of financial markets including stocks and cryptocurrencies. Provides trading opportunity screening, risk management tools, sentiment analysis from financial news, and comprehensive market indicators like RSI, MACD, and Bollinger Bands.MIT
- FlicenseNot gradedqualityDmaintenanceProvides real-time cryptocurrency market data and technical indicators (EMA, MACD, RSI, ATR, Bollinger Bands) from Aster DEX with multi-timeframe analysis support for trading pairs like BTC, ETH, and SOL.-
- AlicenseAqualityCmaintenanceProvides crypto market intelligence including price quotes, momentum analysis, trending coins, and a composite scored verdict, using the free CoinGecko API.437 PyPIMIT
- AlicenseCqualityDmaintenanceEnables AI assistants to access comprehensive cryptocurrency market analysis, including real-time prices, 35+ technical indicators, market sentiment, futures data, and economic events.502MIT