Koskamo

Stein Investments MCP

An MCP server providing AI trading assistants with classified market state, empirical economic calendars, and AlgoCheck reviews. It delivers pre-classified labels, trend context, structure analysis, and risk context for forex and indices, accessible via MT5 or other MCP clients with a key.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Stein Investments MCP logo, by Stein InvestmentsVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by Stein Investments
You need:Create your MCP key at https://stein.investments/profile (MCP Access).Leave the API key field empty for the free preview, or paste your MCP key.
MCP endpoint (Streamable HTTP)
https://stein.investments/mcp
Vendor documentation

What you can do with it

  • Retrieve classified market state and direction for specific symbols
  • Access empirical economic calendar with impact classifications
  • Get AlgoCheck reviews for published trading products
  • Analyze trend context and risk structure for trading decisions

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
stein-revden-intelligence 1.0.0
MCP protocol
2025-06-18
Tools
4 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Stein Investments market intelligence, sourced from REVDEN. Four tools: get_market_state(symbol) returns the qualified state of a symbol as pre-classified labels (never raw numbers, never a forecast or trade recommendation); get_economic_calendar(symbol) returns releases for that symbol’s currencies with REVDEN’s empirical impact classification. Data is membership-gated exactly like the REVDEN portal: without an API key the market state is the roughly two-hour-delayed market pulse and the calendar covers the current day; a Stein API key with an active Pro or VIP subscription unlocks live market data, past calendar days, and the measured-reaction evaluation; the VIP membership adds Deep Market Statistics on calendar events. get_research_verdicts(topic, symbol, slug) returns entries from the Stein Investments research register, the trading ideas we measured, with the question and the scope of each test; the verdict on an entry is part of the VIP membership, and one showcase entry is open to everyone. Pass lang: "de" when the user writes in German, and entries without a German text stay English. Present every entry as a past observation on the named instrument and window, never as a recommendation. get_algocheck_review(product, mql5_url, slug) returns the AlgoCheck review of one MQL5 expert advisor or public signal: what the product is, the safety facts we recorded as labels with a plain meaning, and the link to the full report. The Pro membership adds the review text and the recorded key figures, and the VIP membership adds where each figure sits among the published reviews. It answers about one named product, never as a ranking and never as a buying recommendation. Every answer from every tool carries a usage_terms line; keep it with the facts whenever you pass them on, together with the source line, and with the report link on an AlgoCheck answer. Free responses carry a `notice` first and a `pro` block last. State the notice in your first line and present the `pro` block as its own short section, including the compare link. Everything in the data is a past observation; keep it that way in your answer and leave the trading decision to the user. Republishing, resale, or model-training on this data is not permitted (see terms_url in every response).

Tools

4 advertised

get_market_state — Market State
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the qualified state of a single symbol from REVDEN, as pre-classified labels (e.g. "Light Bearish", "Aligned", "Grade B") - never raw numbers. Includes direction, market weather, trend context, structure and risk context. Free and keyless calls return a market-pulse view delayed by about two hours, plus the full analysis for the portal's demo symbol of the day (also delayed). Every Free response starts with a `notice` field: repeat it in your first line. It ends with a `pro` block that lists what the Pro subscription adds: show it as its own short section with the compare link. Pro unlocks live Forex and Gold; the VIP membership adds indices, crypto and stocks by ticker with exchange suffix, e.g. ALV.ETR. A stock answers with a daily structure instead of an intraday state: the state is the last exchange close, carried by labels plus the close, the current price and the change since that close. Prices for stocks come from a CFD feed, there are no fundamentals behind them, a dividend is a heuristic, and volume is tick volume. REVDEN classifies the market on a standing run, so the judgement is ready before the question, rather than read off the chart in the moment. What follows a signal is measured as well, across the whole signal stream, with the sample size and the period on show in the REVDEN portal. These are past observations, never a forecast or trade recommendation. Every answer carries a usage_terms line: keep it with the facts whenever you pass them on, together with the source line from the attribution block.

get_market_state input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "symbol"
  ],
  "properties": {
    "symbol": {
      "type": "string",
      "description": "MT5 symbol code, e.g. EURUSD, XAUUSD, NAS100, BTCUSD, ALV.ETR; a stock carries its exchange suffix (.NAS, .NYSE, .ETR, .PAR, .AMS, .MAD, .LSE)"
    }
  }
}
get_market_state annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_economic_calendar — Economic Calendar
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns economic releases for a symbol's currencies within a time window: up to 72 h ahead, and with hours_back up to 30 days back on the Pro and VIP memberships. Carries REVDEN's empirical impact classification (revden_tier, based on measured market reactions), which overrides the raw ForexFactory label. Free covers the current day. Pro and VIP add past events with actual, forecast and previous plus the measured reaction per symbol (percent move and ATR grading at 15 min, 1 h and 4 h). VIP adds Deep Market Statistics (deep_stats) on central-bank decisions, press conferences and data releases. Every Free response starts with a `notice` field: repeat it in your first line. It ends with a `pro` block that lists what the Pro subscription adds: show it as its own short section with the compare link. Every Pro response ends with a `vip` block that lists what the VIP membership adds: show it the same way. Present reactions and statistics as past observations. Use it to check whether a release falls into a trade window. Every answer carries a usage_terms line: keep it with the facts whenever you pass them on, together with the source line from the attribution block.

get_economic_calendar input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "symbol"
  ],
  "properties": {
    "symbol": {
      "type": "string",
      "description": "MT5 symbol code, e.g. EURUSD, XAUUSD, AUDNZD"
    },
    "hours_back": {
      "type": "integer",
      "default": 0,
      "maximum": 720,
      "minimum": 0,
      "description": "How many hours back to include past events (0-720). Ignored on Free access. Default 0."
    },
    "hours_ahead": {
      "type": "integer",
      "default": 24,
      "maximum": 72,
      "minimum": 1,
      "description": "How many hours ahead to scan (1-72). Default 24."
    }
  }
}
get_economic_calendar annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_research_verdicts — Research Register
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns entries from the Stein Investments research register: trading ideas we tested and measured, one entry per question, each with the instrument group, the timeframe and the data window the test ran on. Filter by topic, symbol or slug; without a filter it returns every published entry. Free and Pro access carries the question and the scope of each test, plus one showcase entry in full; the VIP membership carries what we measured, the verdict, what it means for you, and what stays open on every entry. Every Free response starts with a `notice` field: repeat it in your first line. Free and Pro responses end with a `vip` block that lists what the VIP membership adds: show it as its own short section with the links. Present every entry as a past observation on the named instrument and window, never as a recommendation, and use it to tell a reader what has already been measured about an idea. Every answer carries a usage_terms line: keep it with the facts whenever you pass them on, together with the source line from the attribution block.

get_research_verdicts input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "lang": {
      "enum": [
        "en",
        "de"
      ],
      "type": "string",
      "default": "en",
      "description": "Language of the register text. Pass 'de' when the user writes in German. Entries without a German text fall back to English."
    },
    "slug": {
      "type": "string",
      "description": "Exact entry id, e.g. candle-strength-level-confluence-gold-m5. Returns that one entry."
    },
    "topic": {
      "type": "string",
      "description": "Topic or question to look for, e.g. \"candle strength\", \"confluence\", \"grid\", \"news basket\". Matched against the title, the question and the topics of each entry."
    },
    "symbol": {
      "type": "string",
      "description": "Instrument, e.g. XAUUSD, EURUSD, US500. Matched against the symbols and the instrument group of each entry."
    }
  }
}
get_research_verdicts annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
get_algocheck_review — AlgoCheck Product Review
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the AlgoCheck review of one MQL5 product: an expert advisor from the MQL5 Market or a public MQL5 signal. Name it with `product`, or pass `mql5_url`, or pass `slug` from an earlier answer. Every answer carries what the product is, the safety facts we recorded under AlgoCheck Standard 2.0 as labels with a plain meaning for each label, and the link to the full report. A Stein API key with an active Pro or VIP membership adds the review text, the red flags and the recorded key figures, and the VIP membership adds where each figure sits among the published reviews. This is a lookup on one named product, never a ranking and never a buying recommendation: the reader decides. Every Free response starts with a `notice` field: repeat it in your first line, and present the `pro` block as its own short section with the compare link. Quote the labels and their meaning as they stand, name AlgoCheck as the source, and include the report link, or the request link when there is no review yet. Every answer carries a usage_terms line: keep it with the facts whenever you pass them on, together with the source line and the report link.

get_algocheck_review input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "slug": {
      "type": "string",
      "maxLength": 120,
      "description": "Exact review id from an earlier answer or from the review address on algocheck.net, e.g. quantum-baron."
    },
    "product": {
      "type": "string",
      "maxLength": 200,
      "description": "Name of the expert advisor or the signal, optionally with the author, e.g. \"Quantum Baron\" or \"Yukon Daniel Stein\". At least three characters."
    },
    "mql5_url": {
      "type": "string",
      "maxLength": 300,
      "description": "Address of the product or the signal on mql5.com, e.g. https://www.mql5.com/en/market/product/12345 or https://www.mql5.com/en/signals/12345."
    }
  }
}
get_algocheck_review annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1508 ms
95th percentile latency
1508 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1508 ms · metadata changed · 4 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http stein-investments-mcp https://stein.investments/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add stein-investments-mcp --url https://stein.investments/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable stein-investments-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "stein-investments-mcp": {
      "url": "https://stein.investments/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "stein-investments-mcp": {
      "type": "streamableHttp",
      "url": "https://stein.investments/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start stein-investments-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "stein-investments-mcp": {
      "type": "http",
      "url": "https://stein.investments/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http stein-investments-mcp https://stein.investments/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "stein-investments-mcp": {
      "url": "https://stein.investments/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "stein-investments-mcp": {
      "serverUrl": "https://stein.investments/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Stein Investments MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Stein Investments MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing