Sponsored by Deepsite.site

Toolstem Mcp Server

Created By
toolstem16 days ago
Agent-ready financial intelligence tools for AI agents. Derives signals like UNDERVALUED, STRONG, and ACCELERATING — one call, one agent-friendly response.
Content

Toolstem MCP Server

npm version MCP Registry Apify Store License: MIT

Agent-ready financial intelligence tools — curated, not raw.

Toolstem is an MCP (Model Context Protocol) server that turns raw financial market data into curated, synthesized intelligence for AI agents. Unlike passthrough wrappers that just expose a vendor's REST API, every Toolstem tool combines multiple data sources, derives signals, and pre-computes the math an agent would otherwise have to do itself.

One call. One agent-friendly JSON response. No nested arrays to parse, no cross-endpoint stitching, no null-checking boilerplate.


Why Toolstem?

Most financial MCP servers expose one tool per API endpoint — forcing your agent to make 4–5 sequential calls, write glue code, and reason about raw data shapes. Toolstem is built differently:

  • Parallel data fetching — every tool fans out to multiple sources concurrently.
  • Derived signals — human-readable recommendations like UNDERVALUED, STRONG, ACCELERATING computed from raw numbers.
  • Pre-computed math — CAGRs, YoY growth, margin trends, distance from 52-week high/low, FCF yield, and more are already in the response.
  • Flat, predictable schema — no deeply nested vendor quirks leaking into agent prompts.
  • Graceful degradation — if one upstream endpoint fails, the rest of the response still comes through with nulls in place.

Tools

get_stock_snapshot

Comprehensive stock overview combining quote, profile, DCF valuation, and rating into a single response.

Input:

{
  "symbol": "AAPL"
}

Example output (truncated):

{
  "symbol": "AAPL",
  "company_name": "Apple Inc.",
  "sector": "Technology",
  "industry": "Consumer Electronics",
  "exchange": "NASDAQ",
  "price": {
    "current": 178.52,
    "change": 2.34,
    "change_percent": 1.33,
    "day_high": 179.80,
    "day_low": 175.10,
    "year_high": 199.62,
    "year_low": 130.20,
    "distance_from_52w_high_percent": -10.57,
    "distance_from_52w_low_percent": 37.11
  },
  "valuation": {
    "market_cap": 2780000000000,
    "market_cap_readable": "$2.78T",
    "pe_ratio": 29.5,
    "dcf_value": 195.20,
    "dcf_upside_percent": 9.35,
    "dcf_signal": "FAIRLY VALUED"
  },
  "rating": {
    "score": 4,
    "recommendation": "Buy",
    "dcf_score": 5,
    "roe_score": 4,
    "roa_score": 4,
    "de_score": 5,
    "pe_score": 3
  },
  "fundamentals_summary": {
    "beta": 1.28,
    "avg_volume": 55000000,
    "employees": 164000,
    "ipo_date": "1980-12-12",
    "description": "Apple Inc. designs, manufactures..."
  },
  "meta": {
    "source": "Toolstem via Financial Modeling Prep",
    "timestamp": "2026-04-17T18:30:00Z",
    "data_delay": "End of day"
  }
}

Derived fields (not in raw APIs):

  • dcf_signalUNDERVALUED if DCF upside > 10%, OVERVALUED if < -10%, else FAIRLY VALUED.
  • market_cap_readable — human-friendly $2.78T, $450.2B, $12.5M format.
  • distance_from_52w_high_percent / distance_from_52w_low_percent — pre-computed range position.

get_company_metrics

Deep fundamentals analysis — profitability, financial health, cash flow, growth, and per-share metrics — synthesized from 5 financial statements endpoints.

Input:

{
  "symbol": "AAPL",
  "period": "annual"
}

period accepts annual (default) or quarter.

Example output (truncated):

{
  "symbol": "AAPL",
  "period": "annual",
  "latest_period_date": "2025-09-30",
  "profitability": {
    "revenue": 394328000000,
    "revenue_readable": "$394.3B",
    "revenue_growth_yoy": 7.8,
    "net_income": 96995000000,
    "net_income_readable": "$97.0B",
    "gross_margin": 46.2,
    "operating_margin": 31.5,
    "net_margin": 24.6,
    "roe": 160.5,
    "roa": 28.3,
    "roic": 56.2,
    "margin_trend": "EXPANDING"
  },
  "financial_health": {
    "total_debt": 111000000000,
    "total_cash": 65000000000,
    "net_debt": 46000000000,
    "debt_to_equity": 1.87,
    "current_ratio": 1.07,
    "interest_coverage": 41.2,
    "health_signal": "STRONG"
  },
  "cash_flow": {
    "operating_cash_flow": 118000000000,
    "free_cash_flow": 104000000000,
    "free_cash_flow_readable": "$104.0B",
    "fcf_margin": 26.4,
    "capex": 14000000000,
    "dividends_paid": 15000000000,
    "buybacks": 89000000000,
    "fcf_yield": 3.7
  },
  "growth_3yr": {
    "revenue_cagr": 8.2,
    "net_income_cagr": 10.1,
    "fcf_cagr": 9.5,
    "growth_signal": "ACCELERATING"
  },
  "per_share": {
    "eps": 6.42,
    "book_value_per_share": 3.99,
    "fcf_per_share": 6.89,
    "dividend_per_share": 0.96,
    "payout_ratio": 14.9
  },
  "meta": {
    "source": "Toolstem via Financial Modeling Prep",
    "timestamp": "2026-04-17T18:30:00Z",
    "periods_analyzed": 3,
    "data_delay": "End of day"
  }
}

Derived fields:

  • margin_trendEXPANDING, STABLE, or CONTRACTING based on net margin series direction.
  • health_signalSTRONG, ADEQUATE, or WEAK from debt-to-equity, current ratio, and interest coverage.
  • growth_signalACCELERATING, STEADY, or DECELERATING based on YoY growth trajectory.
  • revenue_cagr, net_income_cagr, fcf_cagr — compound annual growth rates over the analyzed window.
  • fcf_margin, fcf_yield — pre-computed from cash flow + revenue + market cap.

screen_stocks

Screen and filter stocks by sector, market cap, price range, beta, volume, dividend yield, exchange, and country. Returns derived category signals for every match.

Input:

{
  "sector": "Technology",
  "market_cap_min": 10000000000,
  "exchange": "NASDAQ",
  "volume_min": 500000,
  "limit": 20
}

All parameters are optional — omit any filter to leave that dimension open.

Example output (truncated):

{
  "query_summary": "20 stocks matching: sector=Technology, mktCap≥$10.0B, exchange=NASDAQ, volume≥500,000",
  "total_results": 20,
  "stocks": [
    {
      "symbol": "AAPL",
      "company_name": "Apple Inc.",
      "sector": "Technology",
      "industry": "Consumer Electronics",
      "exchange": "NASDAQ",
      "country": "US",
      "price": 178.52,
      "market_cap": 2780000000000,
      "market_cap_readable": "$2.78T",
      "beta": 1.28,
      "volume": 55000000,
      "last_annual_dividend": 0.96,
      "cap_category": "MEGA",
      "volatility_category": "MODERATE",
      "liquidity_category": "HIGH"
    }
  ],
  "meta": {
    "source": "Toolstem via Financial Modeling Prep",
    "timestamp": "2026-04-20T18:30:00Z",
    "data_delay": "Real-time during market hours",
    "filters_applied": ["sector: Technology", "market_cap_min: 10000000000", "exchange: NASDAQ", "volume_min: 500000", "limit: 20"]
  }
}

Derived fields:

  • cap_categoryMEGA (>$200B), LARGE ($10B–$200B), MID ($2B–$10B), SMALL ($300M–$2B), MICRO ($50M–$300M), NANO (<$50M).
  • volatility_categoryLOW (beta < 0.8), MODERATE (0.8–1.3), HIGH (> 1.3).
  • liquidity_categoryHIGH (volume > 1M), MODERATE (100K–1M), LOW (< 100K).

compare_companies

Side-by-side comparison of 2–5 companies across price, valuation, profitability, financial health, growth, dividends, and analyst ratings.

Input:

{
  "symbols": ["AAPL", "MSFT", "GOOGL"]
}

Example output (truncated):

{
  "symbols_compared": ["AAPL", "MSFT", "GOOGL"],
  "comparison_date": "2026-04-20T18:30:00Z",
  "companies": [
    {
      "symbol": "AAPL",
      "company_name": "Apple Inc.",
      "sector": "Technology",
      "price": { "current": 178.52, "change_percent": 1.33 },
      "valuation": { "pe_ratio": 29.5, "dcf_upside_percent": 9.35 },
      "profitability": { "net_margin": 24.6, "roe": 160.5, "roic": 56.2 },
      "financial_health": { "debt_to_equity": 1.87, "current_ratio": 1.07 },
      "growth": { "revenue_growth_yoy": 7.8, "earnings_growth_yoy": 10.1 },
      "dividend": { "dividend_yield": 0.5, "payout_ratio": 14.9 },
      "rating": { "score": 4, "recommendation": "Buy" }
    }
  ],
  "rankings": {
    "lowest_pe": "GOOGL",
    "highest_margin": "AAPL",
    "strongest_balance_sheet": "GOOGL",
    "best_growth": "MSFT",
    "most_undervalued": "GOOGL",
    "highest_rated": "MSFT"
  },
  "meta": {
    "source": "Toolstem via Financial Modeling Prep",
    "timestamp": "2026-04-20T18:30:00Z",
    "data_delay": "Real-time during market hours",
    "api_calls_made": 19
  }
}

Derived fields:

  • rankings — automatically computed: lowest_pe, highest_margin, strongest_balance_sheet, best_growth, most_undervalued, highest_rated.
  • All valuation, profitability, health, and growth metrics pre-computed per company.
  • Uses batch quote for efficient multi-symbol price retrieval.

Installation

npm

npm install -g toolstem-mcp-server

Run as stdio server:

FMP_API_KEY=your_key_here toolstem-mcp-server

Run as HTTP (Streamable HTTP transport) server:

FMP_API_KEY=your_key_here PORT=3000 toolstem-mcp-server --http

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "toolstem": {
      "command": "npx",
      "args": ["-y", "toolstem-mcp-server"],
      "env": {
        "FMP_API_KEY": "your_fmp_api_key"
      }
    }
  }
}

Apify

Available on the Apify Store as the toolstem-financial-data Actor. Call it from your Apify workflow with input:

{
  "tool": "get_stock_snapshot",
  "symbol": "AAPL"
}

or

{
  "tool": "screen_stocks",
  "sector": "Technology",
  "market_cap_min": 10000000000,
  "limit": 20
}

or

{
  "tool": "compare_companies",
  "symbols": ["AAPL", "MSFT", "GOOGL"]
}

Results are pushed to the default dataset. The actor monetizes per tool call via Apify's Pay-Per-Event model.

Self-hosting (Cloudflare Workers / any Node runtime)

Build and run the HTTP transport:

npm install
npm run build
FMP_API_KEY=your_key npm run start:http

Your MCP client can then connect to POST http://your-host:3000/mcp.


Environment Variables

VariableRequiredDescription
FMP_API_KEYYesFinancial Modeling Prep API key. Get one at financialmodelingprep.com.
PORTNoPort for HTTP transport. Defaults to 3000.

Development

npm install
npm run dev           # stdio, hot reload via tsx
npm run build         # TypeScript -> dist/
npm start             # run built stdio server
npm run start:http    # run built HTTP server

Architecture

src/
├── index.ts          # MCP server entry (stdio + Streamable HTTP)
├── actor.ts          # Apify Actor entry
├── services/
│   └── fmp.ts        # Financial Modeling Prep API client
├── tools/
│   ├── get-stock-snapshot.ts
│   ├── get-company-metrics.ts
│   ├── screen-stocks.ts
│   └── compare-companies.ts
└── utils/
    └── formatting.ts # Market cap formatting, CAGR, trend signals

All FMP endpoints are wrapped in a single FmpClient class. Tool implementations fan out to multiple client methods in parallel via Promise.all, then synthesize the merged result.


License

MIT — see LICENSE.


Toolstem — curated financial intelligence for the agent-native economy.

Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
ChatWiseThe second fastest AI chatbot™
Y GuiA web-based graphical interface for AI chat interactions with support for multiple AI models and MCP (Model Context Protocol) servers.
CursorThe AI Code Editor
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
RedisA Model Context Protocol server that provides access to Redis databases. This server enables LLMs to interact with Redis key-value stores through a set of standardized tools.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Serper MCP ServerA Serper MCP Server
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
Playwright McpPlaywright MCP server
WindsurfThe new purpose-built IDE to harness magic
Tavily Mcp
Amap Maps高德地图官方 MCP Server
DeepChatYour AI Partner on Desktop