Skip to main content
Glama
ycjcl868

Fear & Greed Index MCP Server

by ycjcl868

MCP Server Fear & Greed Index

NPM Downloads

Install MCP Server

A Model Context Protocol (MCP) server that provides access to the CNN Fear & Greed Index for the US stock market. This server fetches real-time market sentiment data and presents it in both structuredContent and text content.

Features

  • Real-time Fear & Greed Index: Get the current market sentiment score (0-100)

  • Historical Comparisons: View previous close, week, month, and year data

  • Detailed Market Indicators: Access individual component scores including:

    • Market Momentum (S&P 500 & S&P 125)

    • Stock Price Strength & Breadth

    • Put/Call Options Ratio

    • Market Volatility (VIX)

    • Junk Bond Demand

    • Safe Haven Demand

  • Flexible Output: Choose between structured markdown or raw JSON format

Related MCP server: MCP Yahoo Finance

Requirements

  • Node.js 18 or newer

  • VS Code, Cursor, Windsurf, Claude Desktop or any other MCP client

Getting Started

Local (Stdio)

First, install the Fear & Greed MCP server with your client. A typical configuration looks like this:

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-fear-greed@latest"
      ]
    }
  }
}

You can also install the mcp-server-fear-greed MCP server using the VS Code CLI:

# For VS Code
code --add-mcp '{"name":"mcp-server-fear-greed","command":"npx","args":["mcp-server-fear-greed@latest"]}'

After installation, the Fear & Greed MCP server will be available for use with your GitHub Copilot agent in VS Code.

Go to Cursor Settings -> MCP -> Add new MCP Server. Name to your liking, npx mcp-server-fear-greed. You can also verify config or add command like arguments via clicking Edit.

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "command": "npx",
      "args": [
        "mcp-server-fear-greed@latest"
      ]
    }
  }
}

Follow Windsurf MCP documentation. Use following configuration:

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "command": "npx",
      "args": [
        "mcp-server-fear-greed@latest"
      ]
    }
  }
}

Follow the MCP install guide, use following configuration:

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "command": "npx",
      "args": [
        "mcp-server-fear-greed@latest"
      ]
    }
  }
}

Remote (SSE / Streamable HTTP)

At the same time, use --port $your_port arg to start the browser mcp can be converted into SSE and Streamable HTTP Server.

# normal run remote mcp server
npx mcp-server-fear-greed --port 8089

You can use one of the two MCP Server remote endpoint:

  • Streamable HTTP(Recommended): http://127.0.0.1::8089/mcp

  • SSE: http://127.0.0.1::8089/sse

And then in MCP client config, set the url to the SSE endpoint:

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "url": "http://127.0.0.1::8089/sse"
    }
  }
}

url to the Streamable HTTP:

{
  "mcpServers": {
    "mcp-server-fear-greed": {
      "type": "streamable-http", // If there is MCP Client support
      "url": "http://127.0.0.1::8089/mcp"
    }
  }
}

In-memory call

If your MCP Client is developed based on JavaScript / TypeScript, you can directly use in-process calls to avoid requiring your users to install the command-line interface to use Fear & Greed MCP.

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';

// type: module project usage
import { createServer } from 'mcp-server-fear-greed';
// commonjs project usage
// const { createServer } = await import('mcp-server-fear-greed')

const client = new Client(
  {
    name: 'test fear greed client',
    version: '1.0',
  },
  {
    capabilities: {},
  },
);

const server = createServer();
const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();

await Promise.all([
  client.connect(clientTransport),
  server.connect(serverTransport),
]);

// list tools
const result = await client.listTools();
console.log(result);

// call tool
const toolResult = await client.callTool({
  name: 'get_fear_greed_index',
  arguments: {
    format: 'json'
  },
});
console.log(toolResult);

API Reference

Tool: get_fear_greed_index

Fetches the current Fear & Greed Index and related market indicators.

Parameters

  • format (optional): Output format

    • "structured" (default): Returns formatted markdown with organized data

    • "json": Returns raw JSON data

Example Usage

// Get structured output
await client.callTool("get_fear_greed_index");

// Get JSON output
await client.callTool("get_fear_greed_index", { format: "json" });

Response Structure

The tool returns data in the following structure:

{
  "fear_and_greed": {
    "score": 75,
    "rating": "greed",
    "timestamp": "2025-07-18T23:59:57+00:00",
    "previous_close": 75.31,
    "previous_1_week": 75.26,
    "previous_1_month": 54.29,
    "previous_1_year": 45.94
  },
  "fear_and_greed_historical": {
    "timestamp": 1752883197000,
    "score": 75,
    "rating": "greed"
  },
  "market_momentum_sp500": {
    "timestamp": 1752871567000,
    "score": 61.2,
    "rating": "greed"
  },
  "market_momentum_sp125": {
    "timestamp": 1752871567000,
    "score": 61.2,
    "rating": "greed"
  },
  "stock_price_strength": {
    "timestamp": 1752883197000,
    "score": 80,
    "rating": "extreme greed"
  },
  "stock_price_breadth": {
    "timestamp": 1752883197000,
    "score": 84,
    "rating": "extreme greed"
  },
  "put_call_options": {
    "timestamp": 1752871897000,
    "score": 79.6,
    "rating": "extreme greed"
  },
  "market_volatility_vix": {
    "timestamp": 1752869701000,
    "score": 50,
    "rating": "neutral"
  },
  "market_volatility_vix_50": {
    "timestamp": 1752869701000,
    "score": 50,
    "rating": "neutral"
  },
  "junk_bond_demand": {
    "timestamp": 1752877800000,
    "score": 88.8,
    "rating": "extreme greed"
  },
  "safe_haven_demand": {
    "timestamp": 1752868799000,
    "score": 81.4,
    "rating": "extreme greed"
  }
}

Fear & Greed Index Ratings

The index uses the following rating scale:

  • 0-25: Extreme Fear

  • 26-45: Fear

  • 46-55: Neutral

  • 56-75: Greed

  • 76-100: Extreme Greed

Development

Access http://127.0.0.1:6274/:

npm run dev

Error Handling

The server includes comprehensive error handling:

  • Network request failures are caught and reported

  • Invalid API responses are handled gracefully

  • Missing data fields are filled with sensible defaults

  • All errors include descriptive messages

Available Tools

1 tool
get_fear_greed_indexA

Get US stock market Fear & Greed Index data. Returns comprehensive market sentiment analysis including the main composite index and 7 individual indicators (market momentum, stock price strength/breadth, options sentiment, volatility, safe haven demand, junk bond demand). Each indicator includes score (0-100), rating, and timestamp. See schema for detailed field descriptions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes

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. It effectively describes the tool's behavior: it returns comprehensive sentiment analysis with specific components (main index, 7 indicators), each with score, rating, and timestamp. It doesn't mention rate limits, authentication needs, or data freshness, but provides substantial behavioral context for a read-only operation.

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 with the core purpose, followed by detailed return value information. Every sentence adds value: the first states what it does, the second details the return structure, and the third directs to schema for field details. No wasted words.

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 multiple indicators with scores and ratings), the description provides complete context. It explains what the tool returns in detail, and since an output schema exists, it doesn't need to explain return values further. The combination of description and output schema coverage makes this fully adequate.

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 description doesn't need to compensate. The baseline for 0 parameters is 4, and the description appropriately focuses on output semantics rather than input parameters, which is correct given the tool's nature.

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 verb ('Get') and resource ('US stock market Fear & Greed Index data'). It distinguishes what it returns ('comprehensive market sentiment analysis including the main composite index and 7 individual indicators') and provides details about the indicators. No siblings exist, so differentiation isn't needed.

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 obtaining market sentiment data but doesn't provide explicit guidance on when to use it versus alternatives. Since there are no sibling tools, there's no need for differentiation, but it lacks context about when this tool is appropriate versus other market analysis methods.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • First observedget_fear_greed_index

TDQS

A4.1/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and singular.

Naming Consistency5/5

The single tool name 'get_fear_greed_index' follows a clear verb_noun pattern, and with no other tools, consistency is inherently perfect.

Tool Count2/5

One tool is too few for a server's purpose, as it limits functionality and flexibility. A single tool feels thin and under-scoped, even for a focused domain like market sentiment.

Completeness3/5

The tool provides comprehensive data retrieval for the Fear & Greed Index, but there are notable gaps such as no historical data access, filtering, or comparison tools. This limits agents to a single, static operation.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

  • A
    license
    B
    quality
    B
    maintenance
    A Model Context Protocol server providing real-time stock data and options analysis through Yahoo Finance, enabling LLMs to access market data, analyze stocks, and evaluate options strategies.
    3
    25
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    A Model Context Protocol server that enables interaction with Yahoo Finance to retrieve stock pricing, company information, and historical financial data through natural language queries.
    10
    29
    MIT
  • A
    license
    C
    quality
    Not graded
    maintenance
    A Model Context Protocol server that provides tools for interacting with Yahoo Finance, allowing users to retrieve stock prices, company information, and perform financial data comparisons.
    11
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that provides access to Federal Reserve Economic Data (FRED), enabling users to retrieve, analyze, and compare economic indicators and time series data through natural language.
    2
    -

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/ycjcl868/mcp-server-fear-greed'

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