pipe-stock-analysis
This server provides read-only Taiwan stock market data retrieval and deterministic financial analysis. It does not place trades, manage portfolios, or make investment recommendations.
Data Retrieval
Historical stock prices: Fetch historical price data with automatic FinMind-to-TWSE fallback
Latest official quotes: Get the latest closing quote from TWSE or TPEx
Material announcements: Retrieve current MOPS regulatory announcements
Stock news: Fetch recent news items via Google News RSS with Yahoo fallback
Valuation data: Historical PER, PBR, and dividend yield
Monthly revenue: Historical monthly revenue figures
Institutional flows: Institutional investor buy/sell volumes
Financial reports: Income statement, balance sheet, and cash flow data
Margin trading: Margin-purchase and short-sale balance history
Analysis
Technical analysis: Calculate trend, momentum, return, and volatility metrics over a configurable lookback period
Fundamental analysis: Summarize valuation ratios and monthly revenue growth trends
Financial health: Summarize profitability, balance-sheet strength, and cash generation
Margin trading analysis: Summarize changes in margin-purchase and short-sale balances
Institutional flow analysis: Aggregate buy, sell, and net volumes by investor type
Service
Health check: Verify the MCP service is running and healthy
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@pipe-stock-analysisGet technical indicators for TSMC (2330) over the last 30 days."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Pipe Stock Analysis
Self-hostable, read-only financial-market MCP (Model Context Protocol, a standard for AI clients to invoke external tools) server for Taiwan-listed securities and global stocks. It retrieves market data and computes reproducible indicators; it does not make investment decisions or place trades.
Why this repository exists
Run your own instance. This project does not route other people to the maintainer's server, bundle API credentials, require OpenConnector, or require a hosted account.
The public default calls FinMind and Finnhub directly with credentials from your local
.env.FinMind is optional and supports anonymous access with lower limits. Finnhub-backed tools require your own API key.
Advanced deployments can select the OpenConnector adapter so this process holds only a narrow runtime token.
.env, OAuth state, private keys, SQLite databases, and generated credentials are ignored by Git.
Related MCP server: FinanceMCP
Three-step self-hosting
# 1. Clone
git clone https://github.com/Gratia2533/pipe-stock-analysis.git && cd pipe-stock-analysis
# 2. Create local configuration; optionally add FINMIND_TOKEN / FINNHUB_API_KEY
cp .env.example .env
# 3. Start with the default Direct adapter on a standard Docker bridge network
docker compose up -d --buildTo enter a Finnhub API key without exposing it in shell history, use the interactive helper and choose whether to restart the services:
./scripts/set-finnhub-key.shVerify both local services:
curl http://127.0.0.1:8010/healthz
curl http://127.0.0.1:8011/healthzInternal MCP without OAuth:
http://127.0.0.1:8010/mcpOAuth-protected MCP:
http://127.0.0.1:8011/mcp
Both endpoints are published only on 127.0.0.1. Keep port 8010 private; expose only port 8011 through a public HTTPS reverse proxy or tunnel.
Data backends
Direct (default)
DATA_BACKEND=direct
FINMIND_TOKEN=
FINNHUB_API_KEY=The service starts without either optional credential, so TWSE, TPEx, MOPS, news, and deterministic analytics remain available. FinMind uses anonymous limits when its token is empty. A Finnhub tool reports a configuration error only when called without FINNHUB_API_KEY.
OpenConnector (advanced, Linux/WSL)
Use this mode when a dedicated OpenConnector already exposes the curated FinMind and Finnhub Actions. The advanced Compose injects only its runtime token; upstream credentials remain in OpenConnector's encrypted credential store. For fail-closed separation, FINMIND_TOKEN and FINNHUB_API_KEY must be unset in this mode.
DATA_BACKEND=openconnector
OPEN_CONNECTOR_BASE_URL=http://127.0.0.1:8001
OPEN_CONNECTOR_RUNTIME_TOKEN=your-local-runtime-tokenBecause a bridged container cannot reach a connector bound to host loopback, the advanced Compose file intentionally uses Linux/WSL host networking while both services remain bound to 127.0.0.1:
docker compose -f compose.openconnector.yaml up -d --buildDirect and OpenConnector modes use the same MCP tools and analytics code. OpenConnector is an adapter, not a separate branch or repository.
Tools
Historical prices with FinMind → TWSE fallback
Latest TWSE / TPEx official close quotes
TWSE market and sector indices, ETF rankings, listing/IPO pipeline, and trading calendar
Valuation, monthly revenue, institutional flows, financial reports, margin trading
MOPS material announcements and recent news
Deterministic technical, fundamental, financial-health, institutional-flow, and margin summaries
Finnhub global symbol search, quotes, candles, company profiles, financial metrics, reported statements, and company news
Local development
Requires Python 3.11+ and uv.
cp .env.example .env
uv sync --dev
set -a; source .env; set +a
MCP_TRANSPORT=streamable-http MCP_HOST=127.0.0.1 uv run finance-mcpFor stdio clients on the same host:
MCP_TRANSPORT=stdio uv run finance-mcpHermes configuration
For a local HTTP deployment:
hermes mcp add pipe-stock-analysis --url http://127.0.0.1:8010/mcp
hermes mcp test pipe-stock-analysisFor stdio, point your MCP client to uv run finance-mcp from this repository. Configure the command and its environment in your own local client configuration; never commit tokens into this repository.
Analysis skill
The reusable cross-market Hermes analysis workflow is included at skills/stock-analysis/SKILL.md. Install it directly from the raw GitHub URL:
hermes skills install https://raw.githubusercontent.com/Gratia2533/pipe-stock-analysis/main/skills/stock-analysis/SKILL.mdOAuth deployment
Compose starts a separate OAuth-protected instance on port 8011 while leaving the port 8010 instance available for trusted local clients. Set FINANCE_OAUTH_ISSUER_URL, FINANCE_OAUTH_RESOURCE_URL, FINANCE_OAUTH_USERNAME, and FINANCE_OAUTH_PASSWORD for the public deployment. OAuth runtime data is stored in a persistent private volume and excluded by .gitignore.
The issuer and resource URLs must use the same public HTTPS hostname that forwards to 127.0.0.1:8011.
Verification
uv run ruff check .
uv run pytest -qScope and disclaimer
Read-only data and deterministic calculations only.
No orders, broker accounts, portfolio access, or personalized investment recommendations.
Data availability, latency, and accuracy depend on upstream providers. Verify material information independently.
This is software, not investment advice.
References and inspiration
FinMind: upstream open-source project behind the optional FinMind market-data integration. This repository does not vendor FinMind code or credentials.
Finnhub: optional upstream provider for global-stock data. Endpoint availability depends on the user's Finnhub plan.
TradingAgents: conceptual reference for role-based research workflows. This server deliberately keeps data retrieval and deterministic calculations separate from agent orchestration and investment decisions.
License
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseCqualityDmaintenanceProvides comprehensive Taiwan stock market data and analysis through MCP tools. Enables querying real-time stock prices, historical data, company information, technical analysis, and market overviews for TWSE and TPEx listed companies.Last updated816MIT
- AlicenseBqualityDmaintenanceProfessional financial data MCP server integrating Tushare API, providing real-time financial data and technical indicators analysis for stocks, indices, funds, bonds, and cryptocurrencies across multiple markets (A-share, US, HK, crypto).Last updated18262MIT
- Flicense-qualityBmaintenanceRead-only MCP server for Taiwan active ETF research database, providing tools to list ETFs, track buy/sell deltas, view stock history and PnL, and find consensus buys across ETFs.Last updated4
- AlicenseAqualityDmaintenanceRead-only Python MCP server for TA-Lib indicator discovery and computation.Last updated5MIT
Related MCP Connectors
Open-source MCP server for Zerodha Kite Connect. Portfolio, market data, backtesting, alerts.
Hosted MCP for stocks, options, Greeks, brokers, order previews, alerts, and workflows.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Gratia2533/pipe-stock-analysis'
If you have feedback or need assistance with the MCP directory API, please join our Discord server