Market Indicators in Pi
Calculate market indicators. The MCP server is https://indicators.openkrill.app/mcp. No key. The steps below are only for Pi. A call to compute_indicators was checked against that server on 2026-10-01.
What this server answers
Calculate technical indicators over a price series: SMA, EMA, RSI, MACD, Bollinger Bands, ATR, stochastic oscillator and VWAP. Each answer gives the latest value and a short series of recent values, with the source and the date of the last price.
Ask "calculate the RSI and MACD for euro-dollar", "show the 50-day SMA and Bollinger Bands for dollar-yen" or paste your own candles and ask for ATR, stochastic or VWAP. Your own prices can be anything: stocks, crypto, commodities or a spreadsheet column.
For currency pairs it reads the daily euro foreign exchange reference rates of the European Central Bank (30 currencies, history of about 12 months daily or three years weekly) and calculates close-based indicators from them. The ECB publishes one rate per day, so ATR, stochastic and VWAP, which need high, low and volume, are calculated only from candles you supply.
The maths is done by trading-signals 8.3.0 (MIT licence, Benny Neugebauer). The indicators are calculated by this plugin; they are not published or endorsed by the European Central Bank. Rates are cached for up to an hour and are not real time.
It is informational only and not financial advice. It reports numbers: it gives no buy or sell signals, no price predictions and no recommendations, and it has no trading, broker, wallet or backtesting features.
It stores nothing about you or your prices: the only lasting record is a daily count of calls per tool.
What it can do
- Calculates SMA, EMA, RSI, MACD, Bollinger Bands, ATR, stochastic oscillator and VWAP
- Works on candles you paste, up to 250, with no outside lookup
- Reads ECB daily euro reference rates for 30 currencies, daily or weekly, and calculates close-based indicators
- Returns the latest value and a short series of recent values, with the settings used
- Names the source, the library and the date of the last price in every answer
- Reports numbers only: no signals, no recommendations, no trading features
Tools
compute_indicators, Compute indicators. Calculates indicators from prices the user gives. Use it when the user gives their own prices and wants indicators calculated, such as "calculate ATR and stochastic from these candles". Pass prices (2 to 250 candles, oldest first, each with a numeric close and optionally time, open, high, low and volume) and indicators from sma, ema, rsi, macd, bollinger, atr, stochastic and vwap; optionally periods and series_length. atr and stochastic need high and low on every candle, and vwap needs high, low and volume. Returns the latest value and a short series for each indicator, with the settings used. Makes no outside request and keeps nothing. Informational only, not financial advice; gives no signals.get_indicators, Get indicators. Calculates indicators for a currency pair. Use it when the user names a currency pair and wants indicators, such as "RSI and MACD for euro-dollar" or "50-day SMA for dollar-yen on the weekly chart". Pass symbol as two ISO currency codes (for example euro-dollar), interval 1d (default) or 1w, and indicators from sma, ema, rsi, macd and bollinger; optionally periods and series_length. Reads the European Central Bank's daily euro reference rates, so it covers its 30 currencies and only close-based indicators; stocks, crypto, atr, stochastic and vwap need compute_indicators with the user's own candles. Returns the latest value and a short series for each indicator, with the source and the date of the last rate. Informational only, not financial advice; gives no signals.
Add Market Indicators in Pi
Pi does not speak MCP on its own. The pi-mcp-adapter extension (these steps match version 2.34.0) loads remote servers and keeps their schemas out of the prompt until you ask. Install it once, then restart Pi:
pi install npm:pi-mcp-adapter
Add the server to a shared MCP file. Use .mcp.json in the project if only that project needs Market Indicators, or ~/.config/mcp/mcp.json if you want it in every project. Pi also reads ~/.agents/mcp.json. A Pi-only override lives in ~/.pi/agent/mcp.json or .pi/mcp.json and wins over the shared file.
{
"mcpServers": {
"market-indicators": {
"url": "https://indicators.openkrill.app/mcp"
}
}
}
The url is enough. Do not set command: that field is for a local process. No API key header. After restart, run /mcp and confirm the server is listed. The first call connects lazily. Ask: Calculate ATR and stochastic from these OHLC candles The adapter should offer compute_indicators, get_indicators.
Leave directTools off unless you want those schemas in every turn. With a handful of tools the cost is small. The default proxy is the better fit: search for the tool, then call it. /mcp disable market-indicators writes a project override in .pi/mcp.json without editing the shared file. Run /reload after that change.
Pi will not find this server by scanning Cursor or Claude config unless you run /mcp setup and import it. Putting the url in .mcp.json is the direct path and the one this page tests against. The server is the same public endpoint the other clients use, with the same limits and the same privacy rules.
A call checked on 2026-10-01
Five closes and a 3-period simple moving average stay inside the worker and make no outside request. The result is a number, not a buy or sell signal, and not financial advice. The request below was posted to https://indicators.openkrill.app/mcp as tools/call. HTTP 200. Source: the Market Indicators server, read 2026-10-01.
{
"method": "tools/call",
"params": {
"name": "compute_indicators",
"arguments": {
"prices": [
{
"close": 10
},
{
"close": 11
},
{
"close": 12
},
{
"close": 13
},
{
"close": 14
}
],
"indicators": [
"sma"
],
"periods": {
"sma": 3
}
}
}
}
- status. ok
- as of. 2026-10-01
- source. Prices supplied in the request
- latest. 13
- notice. Informational only, not financial advice. These are calculated values, not buy or sell signals.
Repeat the call yourself if you need a newer reading. Cached answers expire. A rate limit is not a result: wait and try again. Nothing in the call is a ranking, a filing, or advice.