Skip to main content
Glama
connerlambden

Helium MCP Server

Helium MCP Server

Real-time news with bias scoring, live market data, and AI-powered options pricing — all accessible through the Model Context Protocol.

helium-mcp MCP server

MCP Score npm version License: MIT

Overview

Helium MCP gives your AI assistant access to:

  • 3.2M+ news articles from 5,000+ sources, each scored across 15+ bias dimensions

  • Balanced news synthesis — left, right, and center perspectives aggregated into one coherent story

  • Live market data — price, IV rank, AI-generated bull/bear cases, and price forecasts

  • AI options pricing — proprietary ML models for fair-value estimates and probability ITM

  • Meme search — semantic search across viral memes with OCR text and captions

50 free queries included. No sign-up required.

Related MCP server: Stocks MCP Server

Quick Start

Cursor

Add to your Cursor MCP settings:

{
  "mcpServers": {
    "helium": {
      "url": "https://heliumtrades.com/mcp"
    }
  }
}

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "helium": {
      "type": "streamable-http",
      "url": "https://heliumtrades.com/mcp"
    }
  }
}

Windsurf

Add to your Windsurf MCP settings:

{
  "mcpServers": {
    "helium": {
      "serverUrl": "https://heliumtrades.com/mcp"
    }
  }
}

GitHub Copilot

Add to your .github/copilot-instructions.md or MCP config:

{
  "mcpServers": {
    "helium": {
      "type": "streamable-http",
      "url": "https://heliumtrades.com/mcp"
    }
  }
}

Any MCP Client

Connect to the streamable HTTP endpoint:

https://heliumtrades.com/mcp

Example Output

"What's the bull and bear case for Bitcoin?"

get_ticker("BTC")
→ Bitcoin: $71,040.01
  Bull case: "Institutional spot demand resumes... squeeze toward mid/upper-80ks to low-100ks"
  Bear case: "Higher-for-longer rates, persistent ETF outflows... slide into 40–55k plausible"
  Forecast: +1.8% over 37 days (range: -1.2% to +5.0%)
  IV Rank: available
  Options strategies: long vol + short vol packs included

"How biased is CNN?"

get_source_bias("CNN")
→ Emotionality: 7/10
  30+ bias dimensions scored (political lean, fearfulness, opinion, oversimplification...)
  Signature phrases: "trump threatens", "mortgage rates", "nuclear weapons"
  Similar sources: NBC, PBS, AP, Newsweek, CBS
  Per-article bias breakdown on recent stories included

"What are the best options trades right now?"

get_top_trading_strategies()
→ AI-ranked short vol + long vol setups
  Each includes: ticker, price, bull/bear case, 5 probability-weighted outcomes,
  full option pack (strike, expiry, Greeks, ML fair value, probability ITM)

"Give me NVIDIA's full analysis"

get_ticker("NVDA")
→ NVIDIA: $183.91
  5 probability-weighted scenarios (38% mean-revert, 25% +10-25%, 20% -5-12%...)
  Forecast: +4.2% over 37 days (range: -2.6% to +8.9%)
  IV rank, volatility surface, term structure, return profile charts
  27 time-horizon uncertainty visualizations (1-day to 995-day)

"Find me stock market crash memes"

search_memes("stock market crash")
→ Babylon Bee: "Kamala Desperately Googles 'What Is A Stock Market Crash'" (32K likes)
→ "Everyone: 'omg the stock market is crashing!' / 500 cigarettes adapter" (437K likes)
  Full OCR text, source, date, image URLs included

Tools

search_news

Full-text search across 3.2M+ articles from 5,000+ sources. Filter by source, category, date, and minimum shares. Returns bias scores, AI summaries, and context.

Parameters:

Parameter

Type

Required

Default

Description

query

string

Yes

Search keywords

limit

integer

No

20

Max results (1–100)

source

string

No

Filter by source name (e.g. "CNN", "Reuters")

category

string

No

One of: trending, tech, markets, politics, business, science, memes

days_back

integer

No

720

Only include articles from the last N days

min_shares

integer

No

-1

Minimum total social shares

sort

string

No

"rank"

One of: rank (relevance), date (newest), shares (most shared)

search_balanced_news

AI-synthesized articles that aggregate multiple sources into balanced coverage. Each story includes a summary, takeaway, evidence breakdown, potential outcomes, and relevant tickers.

Parameters:

Parameter

Type

Required

Default

Description

query

string

Yes

Search keywords

limit

integer

No

10

Max results (1–50)

category

string

No

One of: tech, politics, markets, business, science

days_back

integer

No

0

Only include stories from the last N days (0 = no filter)

get_source_bias

Deep bias analysis for any news outlet: political lean, emotional tone, prescriptiveness, signature phrases, similar sources, and historical trends.

Parameters:

Parameter

Type

Required

Default

Description

source

string

Yes

Source name (e.g. "Fox News") or domain (e.g. "foxnews.com")

recent_articles

integer

No

10

Number of recent articles to include (1–50)

get_bias_from_url

Analyze any article URL for per-dimension bias scores: political lean, emotionality, manipulation level, factfulness, and more.

Parameters:

Parameter

Type

Required

Default

Description

url

string

Yes

Full article URL

get_ticker

Comprehensive data for any stock, ETF, or crypto: live price, AI-generated bull/bear cases, price forecast, IV rank, volatility surface, and top-ranked options strategies.

Parameters:

Parameter

Type

Required

Default

Description

ticker

string

Yes

Ticker symbol (e.g. "AAPL", "SPY", "BTC")

get_option_price

Helium's proprietary ML model-predicted fair-value price for a specific option contract. Returns predicted price, probability ITM, and the data date.

Parameters:

Parameter

Type

Required

Default

Description

symbol

string

Yes

Ticker symbol (e.g. "AAPL", "SPY")

strike

number

Yes

Strike price (e.g. 150.0)

expiration

string

Yes

Expiration date as YYYY-MM-DD

option_type

string

Yes

"call" or "put"

get_top_trading_strategies

Helium's highest-conviction options setups ranked by AI edge score, expected value, and market conditions. Returns both short volatility and long volatility strategies.

Parameters:

Parameter

Type

Required

Default

Description

sort

string

No

"helium_rank"

One of: helium_rank, odds_of_profit, historical_performance, reward_to_risk, smallest_max_loss

limit

integer

No

5

Results per strategy type (1–20)

get_all_source_biases

Bias scores for every tracked news source — compare outlets, rank by credibility, or build a full media landscape overview. Returns all sources with >100 articles analyzed, sorted by average social shares.

Parameters: None required.

search_memes

Semantic search across viral memes — images, captions, OCR text, like counts, and source attribution.

Parameters:

Parameter

Type

Required

Default

Description

query

string

Yes

Search keywords (matched against OCR text and captions)

limit

integer

No

20

Max results (1–100)

Pricing

Plan

Cost

Details

Free

$0

50 queries per network — no sign-up needed

Pay As You Go

$0.02/query

Billed daily via Stripe. All 9 tools, unlimited queries.

Get an API key at heliumtrades.com/mcp-page.

Examples, Recipes & Interactive Demo

  • Helium News Bias Explorer — interactive single-page demo (zero dependencies) that fetches the live source-bias corpus and lets you rank, scatter, or inspect any of the 216 sources across all 37 bias dimensions. The fastest way to feel what the API can do without writing code.

  • Helium Ticker Forecast Dashboard — companion dashboard that renders the top 10 short-vol and long-vol candidates with ML 37-day forecasts, uncertainty cones, and bull/bear narratives. Single GET to mcp_top_strategies/.

  • Forecaster Honesty Board — post-hoc Brier grades for published prob_itm forecasts.

  • helium-mcp-cookbook — eight runnable Python recipes, calibration scorecard, and a citeable bias-corpus dataset snapshot.

AI discoverability (llms.txt)

Machine-readable index for LLM crawlers: docs/llms.txt and docs/llms-full.txt. Deploy copies at https://heliumtrades.com/llms.txt. Schema.org snippet for mcp-page: docs/mcp-page-schema-snippet.html.

License

MIT

Available Tools

9 tools
get_all_source_biasesAInspect

Get bias scores for every news source in the Helium database.

Returns a list of all sources (active within the last 36 days, with >100 articles analyzed),
sorted by avg_social_shares descending. Use this to compare sources, find the most credible
outlets, identify politically extreme sources, or build a ranked overview of the media landscape.

Each entry contains:
- source_name, slug_name, page_url
- articles_analyzed: total articles analyzed for this source
- avg_social_shares: average social shares per article (proxy for reach/influence)
- emotionality_score (0-10): average emotional intensity of the writing
- prescriptiveness_score (0-10): how much the source tells readers what to think/do
- bias_values: dict mapping classifier key → integer score (-50 to +50 for bipolar,
  0 to +50 for unipolar). These keys are identical to what get_bias_from_url returns,
  so you can compare article-level and source-level scores directly.

  Political / ideological (bipolar: neg=left pole, pos=right pole):
    'liberal conservative bias'      neg=liberal, pos=conservative
    'libertarian authoritarian bias' neg=libertarian, pos=authoritarian
    'dovish hawkish bias'            neg=dovish, pos=hawkish
    'establishment bias'             neg=anti-establishment, pos=pro-establishment

  Credibility / quality (bipolar):
    'overall credibility'            neg=uncredible, pos=credible
    'integrity bias'                 neg=low integrity, pos=high integrity
    'article intelligence'           neg=low intelligence, pos=high intelligence
    'delusion bias'                  neg=truth-seeking, pos=delusional
    'objective subjective bias'      neg=objective, pos=subjective
    'bearish bullish bias'           neg=bearish, pos=bullish
    'emotional bias'                 neg=negative tone, pos=positive tone

  Unipolar bias dimensions (higher = more of that trait):
    'objective sensational bias'     sensationalism
    'opinion bias'                   opinion vs informative
    'descriptive prescriptive bias'  prescriptive vs descriptive
    'political bias'                 political content
    'fearful bias'                   fear-based framing
    'overconfidence bias'            overconfidence
    'gossip bias'                    gossip
    'manipulation bias'              manipulative framing
    'ideological bias'               ideological rigidity
    'conspiracy bias'                conspiracy content
    'double standard bias'           double standards
    'virtue signal bias'             virtue signaling
    'oversimplification bias'        oversimplification
    'appeal to authority bias'       appeal to authority
    'begging the question bias'      question-begging
    'victimization bias'             victimization framing
    'terrorism bias'                 terrorism content
    'scapegoat bias'                 scapegoating
    'suicidal empathy bias'          suicidal-empathy framing
    'cruelty bias'                   cruelty
    'woke bias'                      woke framing
    'written by AI'                  AI-written likelihood
    'immature bias'                  immaturity
    'circular reasoning bias'        circular reasoning
    'covering the response bias'     covering-the-response tactic
    'spam bias'                      spam-like content

Tip: use get_source_bias for full narrative descriptions and recent articles on a specific source.
Tip: bias_values keys here are identical to those in get_bias_from_url and search_news — compare them directly.
Warning: get_source_bias returns bias_scores with emoji-prefixed display keys (e.g. '🔵 Liberal <—> Conservative 🔴')
that are NOT interchangeable with the plain-text keys used here. Do not cross-reference them.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's behavior: it returns a filtered list (active within last 36 days, >100 articles analyzed), sorted by avg_social_shares descending, and details the structure and meaning of the output data. However, it lacks information on potential limitations like rate limits, data freshness, or error conditions, which would be helpful for a tool with such rich output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and usage, but it becomes overly detailed in listing all bias dimensions, which might be better summarized or referenced. While the information is valuable, the extensive enumeration of bias keys (over 30 items) makes it less concise, though the tips and warnings at the end are well-placed for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (rich output data, no input parameters, and an output schema), the description is highly complete. It explains the filtering criteria, sorting order, output structure, and detailed semantics of bias scores, including comparisons to sibling tools. With an output schema present, it appropriately focuses on clarifying the meaning and usage of the returned data rather than just its format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so the baseline is 4. The description appropriately does not discuss parameters, as none exist, and instead focuses on the output semantics, which is valuable given the complexity of the returned data. It adds significant meaning by explaining the bias_values mapping and the distinction between bipolar and unipolar scores.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get bias scores for every news source in the Helium database.' It specifies the verb ('Get'), resource ('bias scores for every news source'), and scope ('Helium database'), and distinguishes itself from sibling tools like get_source_bias by indicating this returns comprehensive data for all sources rather than a specific one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool versus alternatives. It states 'Use this to compare sources, find the most credible outlets, identify politically extreme sources, or build a ranked overview of the media landscape,' and includes tips and warnings that differentiate it from get_source_bias and get_bias_from_url, clarifying key distinctions in output formats and use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_bias_from_urlAInspect

Get bias analysis for a specific article by its URL.

Use this when you have a direct link to an article and want to know its political leaning,
credibility, emotionality, and other bias dimensions — without needing to know the source name first.

On success (found=true), returns:
- title, source, date, link, category
- teaser: article excerpt
- summary: one-sentence AI summary
- context: AI-generated context for the article
- bias_description: narrative description of this specific article's bias
- bias_values: dict of per-dimension bias scores using plain-text keys (same schema as
  get_all_source_biases and search_news),
  e.g. {"liberal conservative bias": 12.3, "overall credibility": 40.1, "emotional bias": -5.2, ...}
  Positive values lean toward the second pole of each dimension (conservative, authoritarian, etc.).
- total_shares: total social shares
- wayback_link: Wayback Machine archive URL if available
- image: article image URL if available

On failure (found=false, HTTP 404):
- found: false
- message: explanation string
The URL is automatically queued for ingestion; retry after ~24 hours.

Tip: if you want source-level bias (not article-level), use get_source_bias instead.
Tip: bias_values keys here use plain-text format (e.g. 'liberal conservative bias') and are
identical to those in get_all_source_biases and search_news. Note: get_source_bias returns
bias_scores with emoji-prefixed display keys — do not cross-reference them with bias_values here.

Args:
    url: Full article URL, e.g. 'https://www.nytimes.com/2024/01/01/us/politics/example.html'.
ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so well by disclosing key behaviors: it describes success/failure outcomes (including HTTP 404 details), automatic queuing for ingestion with retry advice (~24 hours), and clarifies differences in bias value formats compared to other tools. It doesn't mention rate limits or auth needs, but covers most operational aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose, followed by usage guidance, detailed return values, and parameter info. While comprehensive, some sections (like the detailed bias_values explanation) are slightly verbose but still informative. Most sentences earn their place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (bias analysis with multiple dimensions), no annotations, and an output schema (implied by the detailed return description), the description is highly complete. It thoroughly documents success/failure outcomes, return fields, behavioral notes (queuing, retry), parameter details, and sibling tool differentiation, leaving no significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage (no schema descriptions), but the description fully compensates by providing detailed parameter semantics in the 'Args' section: it explains the 'url' parameter with a clear example and formatting guidance ('Full article URL, e.g. ...'). This adds substantial value beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Get bias analysis') and resources ('for a specific article by its URL'), explicitly distinguishing it from sibling tools like get_source_bias for source-level analysis. It specifies the analysis includes political leaning, credibility, emotionality, and other bias dimensions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool ('when you have a direct link to an article and want to know its political leaning... without needing to know the source name first') and when not to use it (with tips directing to get_source_bias for source-level bias). It also mentions retry timing after failures.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_option_priceAInspect

Get Helium's proprietary ML model-predicted price for a specific option contract.

Helium trains per-symbol regression models on historical options data. This tool
looks up the most recent available options chain for the symbol (today or up to
5 days back), finds the exact contract matching strike/expiration/type, and runs
it through that model to produce a predicted fair-value price.

Returns:
- symbol: the ticker
- strike: the strike price used
- expiration: the expiration date used
- option_type: 'call' or 'put'
- predicted_price: Helium's model-predicted option price in dollars
- prob_itm: probability of expiring in the money (0.0–1.0), or null if model unavailable
- options_data_date: the date of the options chain snapshot the model was run on
  (so you know how fresh the underlying market data is)

Throws an error if no options chain data is available for the symbol within the past 5 days,
or if the exact contract (strike/expiration/type combination) does not exist in that chain.

Args:
    symbol: Ticker symbol, e.g. 'AAPL', 'SPY'.
    strike: Strike price as a number, e.g. 150.0.
    expiration: Expiration date as 'YYYY-MM-DD', e.g. '2026-06-20'.
    option_type: Must be 'call' or 'put'.
ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes
strikeYes
expirationYes
option_typeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: it's a read operation (implied by 'Get'), uses historical data up to 5 days back, throws errors for missing data or contracts, and returns specific fields. It could improve by mentioning rate limits or authentication needs, but covers core operational aspects well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and appropriately sized. It front-loads the purpose, explains the process, lists return values, and details parameters—all in clear, efficient sentences with zero waste. Every sentence adds value, such as clarifying data freshness or error conditions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (ML-based prediction with 4 parameters) and the presence of an output schema (implied by the detailed return fields), the description is complete. It covers purpose, process, return values, parameters, and error conditions, providing all necessary context for an AI agent to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds significant meaning beyond the schema: explains what each parameter represents (e.g., 'Ticker symbol', 'Strike price as a number'), provides examples (e.g., 'AAPL', 150.0), and specifies constraints (e.g., date format 'YYYY-MM-DD', option_type must be 'call' or 'put'). This fully documents all 4 parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get Helium's proprietary ML model-predicted price for a specific option contract.' It specifies the verb ('Get'), resource ('price'), and method ('Helium's proprietary ML model-predicted'), distinguishing it from siblings that focus on biases, news, or tickers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool: to obtain a predicted fair-value price for a specific option contract using Helium's ML model. It mentions prerequisites (options chain data availability within 5 days) but does not explicitly state when not to use it or name alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_source_biasAInspect

Get comprehensive bias analysis for a news source.

Returns:
- source_name, slug_name, page_url
- articles_analyzed: total articles in the bias database for this source
- avg_social_shares: average social shares per article
- emotionality_score (0-10): how emotional the writing is
- prescriptiveness_score (0-10): how much the source tells readers what to think/do
- bias_scores: dict of all measured bias dimensions with scores (-50 to +50 for bipolar,
  0 to +50 for unipolar). WARNING: this endpoint returns emoji-prefixed display keys
  (e.g. '🔵 Liberal <—> Conservative 🔴') rather than the plain-text keys used by
  get_bias_from_url, get_all_source_biases, and search_news (e.g. 'liberal conservative bias').
  Do not attempt to cross-reference bias_scores keys here with bias_values keys from other endpoints.
- bias_description: AI-generated overall bias summary narrative
- liberal_conservative_description: narrative on political leaning
- libertarian_authoritarian_description: narrative on authority stance
- signature_phrases: words/phrases uniquely overrepresented vs other sources
- signature_negative_phrases: uniquely negative/alarming phrases
- most_shared_phrases: phrases in their most viral articles
- most_emotional_phrases: phrases used in their most emotional articles
- pays_for_traffic_keywords: keywords this source buys ads for
- similar_sources: sources with the most similar bias profile
- most_different_sources: sources with the most different bias profile
- trends_graph_url: URL to a chart of this source's coverage volume over time
- bias_plot_urls: dict of 2D bias scatter plot image URLs (political_lib_auth, subjective_objective, informative_opinion, oversimplification_factful) — only present when available
- recent_articles: list of most recent articles with full article fields and per-article bias_values

Throws an error if the source is not found.

Args:
    source: Source name (e.g. 'Fox News', 'CNN', 'Reuters') or domain (e.g. 'foxnews.com').
            Slug-style input (e.g. 'fox-news') is NOT supported — use full name or domain only.
    recent_articles: Number of recent articles to include (1-50, default 10).
ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYes
recent_articlesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and excels at behavioral disclosure. It details the comprehensive return structure (16+ fields), warns about key format differences from other endpoints, specifies error conditions ('Throws an error if the source is not found'), and explains optional field availability ('only present when available').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized for a complex tool with extensive returns. It's well-structured with clear sections for returns, warnings, and parameters. While comprehensive, every sentence adds value - no fluff or repetition. Could be slightly more front-loaded by moving the parameter details earlier.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (comprehensive bias analysis with 2 parameters and extensive returns), no annotations, and an output schema (which handles return structure), the description is remarkably complete. It covers purpose, usage, detailed return semantics, parameter details, warnings, and error conditions - leaving no significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description fully compensates by providing detailed parameter semantics. It explains the 'source' parameter accepts name or domain (not slug), gives examples, and clarifies the 'recent_articles' parameter's range (1-50) and default value (10) - information not in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get comprehensive bias analysis for a news source.' It specifies the verb ('Get') and resource ('bias analysis for a news source'), and distinguishes it from siblings like get_bias_from_url (which analyzes URLs) and get_all_source_biases (which lists all sources).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool: for analyzing bias of a specific news source. It distinguishes from get_bias_from_url (URL analysis) and get_all_source_biases (all sources list), but doesn't explicitly state when NOT to use it or mention alternatives like search_news for article-level analysis.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tickerAInspect

Get comprehensive data for a stock, ETF, or crypto ticker.

Returns:
- ticker, name, type (e.g. 'stock', 'etf', 'crypto'), industry
- latest_price, page_url
- bullish_case, bearish_case, potential_outcomes, takeaway, analysis_date (AI-generated)
- price_forecast_days, price_forecast_percent, price_forecast_lower/upper_bound_percent (model price forecast)
- future_uncertainty_urls: dict with image URLs for future_uncertainty, term_structure, volatility_surface, return_profile (when available)
- future_uncertainty_last_updated, term_structure_last_updated
- iv_rank_percentile (0-100, IV rank over past year)
- long_vol_call, long_vol_put, short_vol_call, short_vol_put: full option pack dicts (when available)

Throws an error if the ticker is not recognized.

Args:
    ticker: Ticker symbol, e.g. 'AAPL', 'AMZN', 'BTC', 'ETH', 'SPY'.
ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: it returns structured data (including AI-generated analysis and forecasts), throws an error for unrecognized tickers, and notes conditional availability of certain fields (e.g., 'when available'). However, it omits details like rate limits or authentication needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose, followed by detailed return values and parameter explanation. While comprehensive, some sentences could be more concise (e.g., listing return fields is lengthy but necessary). Overall, it avoids waste and maintains clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (returns extensive data) and the presence of an output schema, the description is complete enough. It thoroughly details return values, parameter semantics, and error behavior, compensating for the lack of annotations and low schema coverage, making it self-sufficient for agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds significant meaning beyond the input schema, which has 0% coverage. It explains the 'ticker' parameter with examples (e.g., 'AAPL', 'BTC'), clarifies it's for stocks, ETFs, or crypto, and notes error behavior for unrecognized symbols, fully compensating for the schema's lack of documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('Get comprehensive data') and resources ('stock, ETF, or crypto ticker'), distinguishing it from siblings like get_option_price or search_news. It precisely identifies what data is retrieved, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by specifying the tool returns comprehensive ticker data, but it lacks explicit guidance on when to use this tool versus alternatives like get_option_price or search_news. No exclusions or prerequisites are mentioned, leaving usage context inferred rather than clearly defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_top_trading_strategiesAInspect

Get the top-ranked short volatility and long volatility option trading strategies.

Returns two ranked lists — short_volatility (sell premium / theta strategies) and
long_volatility (buy premium / gamma strategies) — each containing up to `limit` tickers.

Each entry has the same fields as get_ticker:
- ticker, name, latest_price, page_url
- bullish_case, bearish_case, potential_outcomes, takeaway, analysis_date (AI-generated, when available)
- price_forecast_days, price_forecast_percent, price_forecast_lower/upper_bound_percent (when available)
- iv_rank_percentile (0-100, IV rank over past year, when available)
- short_vol_call, short_vol_put: best short volatility option packs (when available)
- long_vol_call, long_vol_put: best long volatility option packs (when available)

Sort options:
- "helium_rank" (default): Helium AI edge score — best overall expected value
- "odds_of_profit": Highest probability of profit
- "historical_performance": Best annualized historical P&L across backtested trades
- "reward_to_risk": Best reward-to-risk ratio
- "smallest_max_loss": Strategies with the smallest maximum possible loss

Args:
    sort: Ranking method (default "helium_rank"). One of: 'helium_rank', 'odds_of_profit',
          'historical_performance', 'reward_to_risk', 'smallest_max_loss'.
    limit: Number of results per strategy type (1-20, default 5).
ParametersJSON Schema
NameRequiredDescriptionDefault
sortNohelium_rank
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and does well by disclosing key behaviors: it returns two separate ranked lists, explains what fields each entry contains, documents the five sort options with their meanings, and specifies default values. However, it doesn't mention rate limits, authentication requirements, or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and appropriately sized, starting with the core purpose, then detailing return format, then sort options, then parameters. While comprehensive, some sentences could be more concise, and the field listing is quite detailed but necessary for understanding the output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple sort options, detailed return structure) and the presence of an output schema, the description is remarkably complete. It explains the dual-list return format, documents all sort options with semantics, fully describes parameters, and references the output structure. The output schema existence means the description doesn't need to exhaustively document return values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 0% schema description coverage, the description fully compensates by providing comprehensive parameter semantics. It explains both parameters in detail: 'sort' with all five possible values and their meanings, and 'limit' with its range (1-20) and default. This adds significant value beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to retrieve top-ranked trading strategies, specifically distinguishing between short volatility and long volatility strategies. It explicitly names the resource (trading strategies) and verb (get), and differentiates itself from sibling tools like get_ticker by focusing on ranked lists rather than individual ticker data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by specifying it returns ranked lists of strategies, but doesn't explicitly state when to use this tool versus alternatives like get_ticker or search tools. No guidance is provided about prerequisites, timing, or when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_balanced_newsAInspect

Search Helium's balanced news stories — AI-synthesized articles that aggregate multiple sources.

Unlike search_news (which returns individual RSS articles), this returns Helium's own
synthesized stories: each one draws from multiple sources and includes an AI-written
summary, takeaway, context, evidence breakdown, potential outcomes, and relevant tickers.

Returns a list of stories, each with:
- title, simple_title, date, category
- page_url: full URL to the story on heliumtrades.com
- image: story image URL (when available)
- summary: Helium's synthesized overview
- takeaway: key conclusion
- context: background context
- evidence: numbered evidence items
- potential_outcomes: forward-looking outcomes with probabilities
- relevant_tickers: related stock tickers
- num_sources: number of source articles synthesized
- rank: search relevance score

Args:
    query: Search keywords (required).
    limit: Max results (1-50, default 10).
    category: Filter by category. One of: 'tech', 'politics', 'markets', 'business', 'science'.
    days_back: Only include stories from the last N days. 0 means no date filter.
ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
limitNo
categoryNo
days_backNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden and does well by detailing the return format (list of stories with specific fields), search functionality, and filtering capabilities. However, it doesn't mention rate limits, authentication requirements, or error behaviors, leaving some behavioral aspects uncovered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficiently structured with purpose statement, sibling differentiation, return format details, and parameter explanations in logical order. Every sentence adds value with zero wasted text, making it easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which covers return values), the description provides excellent context: clear purpose, sibling differentiation, detailed parameter semantics, and behavioral transparency about what the tool returns. This is complete for a search tool with output schema support.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate fully. It provides detailed semantic explanations for all 4 parameters: query purpose, limit range and default, category options with explicit enum values, and days_back meaning. This adds substantial value beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for 'balanced news stories — AI-synthesized articles that aggregate multiple sources' and explicitly distinguishes it from sibling tool 'search_news' which returns individual RSS articles. This provides specific verb+resource differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool versus alternatives: 'Unlike search_news (which returns individual RSS articles), this returns Helium's own synthesized stories.' This directly addresses sibling tool differentiation with clear context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_memesAInspect

Search Helium's meme database by text (OCR + caption).

Returns matching memes ranked by relevance. Each result includes:
- id, caption, ocr (text extracted from the image)
- image: full URL to the meme image
- source: origin platform (e.g. 'reddit')
- num_likes: likes/upvotes on the original post
- date, is_video, rank

Args:
    query: Search keywords (required). Matched against OCR text and captions.
    limit: Max results (1-100, default 20).
ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses key behavioral traits: it's a search operation (implied read-only), returns ranked results by relevance, and details the structure of each result (including fields like id, image URL, source, etc.). However, it lacks information on rate limits, authentication needs, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded, starting with the core purpose, followed by return details and parameter explanations. Every sentence adds value without redundancy, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity, no annotations, and the presence of an output schema (which covers return values), the description is complete. It adequately explains the purpose, parameters, and result structure, leaving no critical gaps for an agent to understand and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds significant meaning beyond the input schema, which has 0% coverage. It explains that 'query' matches against OCR text and captions, clarifies 'limit' as max results with a range (1-100) and default (20), and notes that 'query' is required. This fully compensates for the schema's lack of descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Search Helium's meme database by text') and resource ('meme database'), distinguishing it from sibling tools that focus on news, biases, or financial data. It explicitly mentions OCR and caption matching, which defines the search scope precisely.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for searching memes by text, but it does not explicitly state when to use this tool versus alternatives like sibling tools (e.g., search_news). No exclusions or prerequisites are mentioned, leaving the context somewhat open-ended.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_newsAInspect

Search news articles.

Returns a list of matching articles. Each article includes:
- title, source, date, link, category, rank, shares, summary
- bias_values: dict of per-dimension bias scores using plain-text keys (e.g. 'liberal conservative bias'),
  same schema as get_bias_from_url and get_all_source_biases (when available)
- context: AI-generated contextual background for the article (when available)
- raw_data: additional raw metadata fields (when available)

Args:
    query: Search keywords (required).
    limit: Max results (1-100, default 20).
    source: Filter by source name, e.g. 'CNN', 'Reuters'.
    category: Filter by category. One of: 'trending', 'tech', 'markets', 'politics',
              'business', 'science', 'memes'.
    days_back: Only include articles from the last N days. 0 means no date filter. Default: 720 (2 years).
    min_shares: Minimum total social shares.
    sort: Sort order. One of: 'rank' (relevance, default), 'date' (newest), 'shares' (most shared).
ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
limitNo
sourceNo
categoryNo
days_backNo
min_sharesNo
sortNorank

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the return format in detail (list of articles with specific fields) and mentions availability conditions ('when available'), which adds useful context. However, it lacks information on rate limits, authentication needs, or error handling, leaving gaps for a mutation-free search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and appropriately sized. It starts with the core purpose, details the return format, and lists parameters with clear explanations. While slightly verbose due to the parameter details, every sentence adds value, and it's front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no annotations) and the presence of an output schema (implied by 'Returns a list'), the description is largely complete. It thoroughly documents parameters and return values, though it could benefit from more behavioral context (e.g., rate limits). The output schema reduces the need to explain returns in depth.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds significant meaning beyond the input schema, which has 0% schema description coverage. It explains each parameter's purpose, constraints (e.g., '1-100' for limit, enum values for category and sort), and defaults, fully compensating for the schema's lack of documentation. This is essential given the 7 parameters with minimal structured info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search news articles.' It specifies the verb ('search') and resource ('news articles'), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'search_balanced_news' or 'search_memes', which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'search_balanced_news' or 'search_memes', nor does it specify prerequisites or exclusions. Usage is implied by the parameters but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.9/5.0
Disambiguation3/5

The tool set covers three distinct domains: news bias analysis (get_all_source_biases, get_bias_from_url, get_source_bias, search_news, search_balanced_news), financial data (get_ticker, get_option_price, get_top_trading_strategies), and meme search (search_memes). However, within the news bias domain, there is significant overlap between get_all_source_biases, get_source_bias, and search_news, as they all retrieve bias scores with similar data structures, potentially causing confusion about which tool to use for source-level vs. article-level analysis.

Naming Consistency4/5

Most tools follow a consistent verb_noun pattern (e.g., get_all_source_biases, get_bias_from_url, get_source_bias, get_option_price, get_ticker, get_top_trading_strategies, search_balanced_news, search_memes, search_news). The naming is clear and predictable, with 'get_' for retrieval and 'search_' for querying. Minor deviations include 'get_all_source_biases' using 'all' as a modifier, but overall the pattern is well-maintained.

Tool Count4/5

With 9 tools, the count is reasonable for a server covering news bias, financial data, and memes. It's slightly broad in scope, but each domain has a focused set of tools: 5 for news bias, 3 for finance, and 1 for memes. The number is manageable and aligns with the server's purpose of providing diverse analytical insights, though the overlap in news tools might suggest some consolidation could improve efficiency.

Completeness3/5

For the news bias domain, the tools offer robust retrieval and search capabilities but lack explicit update, delete, or creation operations, which is acceptable for a read-only analysis service. In finance, tools cover ticker data, option pricing, and trading strategies, but there's no direct market data updates or portfolio management. The meme tool is standalone. Overall, the set supports core queries but has notable gaps for interactive or write operations, limiting agent workflows to read-only tasks.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Aggregates news from 7 APIs and unlimited RSS feeds with AI-powered bias removal and synthesis. Provides over 7,300 free daily requests with conversation-aware caching and 25 comprehensive news analysis tools.
    1
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time access to financial market data including stock quotes, company information, cryptocurrency exchange rates, historical options chains, and time series data through the Alpha Vantage API.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables quantitative trading analysis with 12 tools for real-time market data, 28+ technical indicators, FinBERT-powered news sentiment analysis, and automated trading signal generation for stocks and forex.
    1
  • A
    license
    C
    quality
    D
    maintenance
    Provides AI agents with institutional-grade quantitative finance tools including real-time market data, paper trading via Alpaca, risk analysis with Monte Carlo simulations, backtesting, and multi-source news sentiment analysis for portfolio management and trading strategy development.
    31
    5
    MIT

Latest Blog Posts

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/connerlambden/helium-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server