Toolstem Mcp Server について
Toolstem は AI エージェント向けの金融データ MCP サーバーです。株価、企業の基礎情報、評価、財務指標を統合し、分析シグナルを計算したフラットな JSON を返します。ホスト型エンドポイントへの接続とサーバーの自前運用に対応します。
主な機能
- 01株価スナップショットと DCF 評価の取得
- 02収益性、キャッシュフロー、成長指標の統合
- 032〜5社の比較
- 04評価、健全性、成長シグナルの計算
- 05統合データをフラットな JSON で返却
活用シーン
- 01個別銘柄の株価と評価の概要を取得
- 02企業の財務健全性と成長傾向を分析
- 03複数企業の指標を比較
- 04エージェントによる株式調査に金融データを利用
MCP 対応
Toolstem MCP サーバーは、株式スナップショット、企業指標、企業比較の3つの複合ツールを提供します。ホスト型エンドポイントは x402 で呼び出しごとに USDC を課金し、FMP API キーを使った自前運用も可能です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| symbol | string | はい | 株式ティッカーシンボル(例:AAPL、MSFT、TSLA) |
詳細
📊 Toolstem — AI エージェント向け金融データ MCP | 株式分析と DCF
AI エージェント向けに厳選された金融データ MCP — 1 回の呼び出しで株式調査を実行できます。
Toolstem は、AI による株式分析、株式調査、エージェント主導の投資ワークフロー向けに構築された金融データ MCPです。リアルタイムの株価データ、企業のファンダメンタルズ、DCF 評価、財務指標、企業を横並びで比較する機能を、導出シグナルをあらかじめ計算した、エージェントが扱いやすいフラットな JSON で返します。
Claude、OpenAI Agents SDK、LangChainでネイティブに動作します。従量課金制で、サブスクリプションはありません。さらに多くの金融 MCP サーバー(SEC 提出書類、インサイダー取引、機関投資家の保有銘柄)も近日公開予定です。
ベンダーの REST API をそのまま公開するだけのラッパーとは異なり、Toolstem の各ツールは複数のデータソースを組み合わせ、シグナルを導出し、エージェントが本来行う必要のある計算を事前に済ませます。
1 回の呼び出しで、エージェントが扱いやすい JSON レスポンスを返します。解析が必要なネストされた配列も、複数エンドポイント間のデータ連結も、null チェックの定型コードも不要です。
クイックスタート — ホストされたエンドポイント(推奨)
MCP クライアントまたはエージェントを、ホストされたエンドポイントに接続します。API キーもインフラもセットアップも不要です。 課金は x402 による従量制で、エージェントのウォレットから Base メインネット上の USDC で直接支払われます。
https://mcp.toolstem.com/mcp/finance
- FMP API キーは不要です — 上流データのキーを用意したり、管理したりする必要はありません。
- インフラは不要です — インストール、ホスト、継続稼働が必要なものはありません。
- セットアップは不要です — MCP クライアントを接続して、ツールを呼び出すだけです。
initializeとtools/listは無料です(検出とスキーマのイントロスペクション)。- 各
tools/callの料金は、x402 経由で決済される Base メインネット上の $0.01 USDC です。
Claude Desktop
これを claude_desktop_config.json に追加します。
{
"mcpServers": {
"toolstem-finance": {
"url": "https://mcp.toolstem.com/mcp/finance"
}
}
}
Claude Desktop を再起動し、次のように尋ねます。「Toolstem を使って NVDA のスナップショットを取得して。」
任意の MCP クライアント(LangChain.js)
公式の @langchain/mcp-adapters ライブラリを使うと、ホストされた URL に直接接続できます。
import { MultiServerMCPClient } from "@langchain/mcp-adapters";
import { ChatOpenAI } from "@langchain/openai";
import { createReactAgent } from "@langchain/langgraph/prebuilt";
const client = new MultiServerMCPClient({
toolstem_finance: {
transport: "http",
url: "https://mcp.toolstem.com/mcp/finance",
// Add your x402-signing middleware via headers, OR run an x402
// proxy locally and point url at it. See https://www.x402.org/clients.
},
});
const tools = await client.getTools();
const agent = createReactAgent({ llm: new ChatOpenAI({ model: "gpt-4o-mini" }), tools });
await agent.invoke({ messages: "Compare AAPL, MSFT, and GOOGL on valuation and growth." });
LangChain クイックスタート(langchain-toolstem)
langchain-toolstem ラッパーが x402 の支払いを処理します。資金を入れたウォレットキーを渡すだけで、ツールが呼び出しごとに自動で支払います。
import { createToolstemTools } from 'langchain-toolstem';
const tools = await createToolstemTools({ walletPrivateKey: process.env.WALLET_KEY });
// Tools auto-pay $0.01 USDC per call via x402
独自の FMP キーを使ってサーバーを自分で実行する場合は、末尾の上級者向け:セルフホストを参照してください。
Toolstem playgroundでツールを試せます。
製品ページ:https://toolstem.com/finance/.
料金
- MCP の
initializeとtools/listは無料です — 検出、スキーマのイントロスペクション、ヘルスチェックに料金はかかりません。 tools/callは呼び出しごとに Base メインネット上で $0.01 USDC かかり、x402 経由で支払います。 API キー、サインアップ、マーケットプレイスのアカウントは不要です — エージェントのウォレットから直接支払われます。
| ツール | 呼び出しごとの料金 |
|---|---|
get_stock_snapshot | $0.01 USDC |
get_company_metrics | $0.01 USDC |
compare_companies | $0.01 USDC |
課金の仕組み
Toolstem は x402 決済プロトコルを使用します。エージェントは Base 上の USDC で呼び出しごとに支払います。API キー、サブスクリプション、請求書は不要です。エージェントのウォレットが EIP-3009 経由で各呼び出しを自動的に決済します。
仕組み
Toolstem は、Node MCP サーバー(このリポジトリ)と、ホスト型の x402 ゲート付きプロキシとして提供されています。
Agent ──MCP──▶ Cloudflare Worker (x402 paywall) ──MCP──▶ Toolstem MCP server ──REST──▶ Financial Modeling Prep
│ │
└─ free: initialize, tools/list └─ composite tool: fans out to 3–5 FMP endpoints
└─ paid: tools/call → 0.01 USDC on Base in parallel, derives signals, returns flat JSON
- Cloudflare Worker は、
mcp.toolstem.comでパブリック MCP 接続を終端し、tools/callの x402 決済を適用します。 - MCP サーバー(このパッケージ)は、3 つの複合ツールを実装し、Financial Modeling Prep と通信します。
- Base mainnet 上の x402 がマイクロペイメントを処理します。決済は 1 秒未満で完了し、オフチェーンアカウントは不要です。
ツール
それぞれが複数の FMP エンドポイントを統合し、派生シグナルと事前計算済みの数値を提供する、3 つの複合ツールです。
| ツール | タイトル | 必須入力 | 任意入力 |
|---|---|---|---|
get_stock_snapshot | 株式スナップショット | symbol(文字列) | — |
get_company_metrics | 企業指標 | symbol(文字列) | period(annual | quarter、デフォルトは annual) |
compare_companies | 企業比較 | symbols(文字列[2..5]) | — |
3 つのツールはいずれも読み取り専用で、冪等性があり、エージェントによる再試行も安全です。
get_stock_snapshot
株価、企業プロフィール、DCF 評価、レーティングを組み合わせた包括的な株式概要を、単一のレスポンスで返します。
入力:
{
"symbol": "AAPL"
}
出力例(一部省略):
{
"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"
}
}
派生フィールド(元の API にはありません):
dcf_signal— DCF の上昇余地が 10% を超える場合はUNDERVALUED、-10% 未満の場合はOVERVALUED、それ以外はFAIRLY VALUEDです。market_cap_readable—$2.78T、$450.2B、$12.5M形式の、人が読みやすい値です。distance_from_52w_high_percent/distance_from_52w_low_percent— レンジ内の位置を事前計算した値です。
get_company_metrics
5 つの財務諸表エンドポイントから情報を統合し、収益性、財務健全性、キャッシュフロー、成長、1 株当たりの指標を詳しく分析します。
入力:
{
"symbol": "AAPL",
"period": "annual"
}
period は annual(デフォルト)または quarter を指定できます。
出力例(一部省略):
{
"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"
}
}
派生フィールド:
margin_trend— 純利益率の推移に基づき、EXPANDING、STABLE、CONTRACTINGのいずれかを返します。health_signal— 負債資本比率、流動比率、インタレスト・カバレッジに基づき、STRONG、ADEQUATE、WEAKのいずれかを返します。growth_signal— 前年比成長率の推移に基づき、ACCELERATING、STEADY、DECELERATINGのいずれかを返します。revenue_cagr、net_income_cagr、fcf_cagr— 分析対象期間における年平均成長率です。fcf_margin、fcf_yield— キャッシュフロー、売上高、時価総額から事前計算した値です。
compare_companies
株価、評価、収益性、財務健全性、成長、配当、アナリスト評価について、2~5 社を並べて比較します。
入力:
{
"symbols": ["AAPL", "MSFT", "GOOGL"]
}
symbols は、2~5 個のティッカー文字列を含む配列である必要があります。
出力例(一部省略):
{
"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
}
}
派生フィールド:
rankings—lowest_pe、highest_margin、strongest_balance_sheet、best_growth、most_undervalued、highest_ratedを自動的に算出します。- 評価、収益性、健全性、成長に関するすべての指標を、企業ごとに事前計算します。
- 複数シンボルの株価を効率よく取得するため、一括株価取得を使用します。
Toolstem を選ぶ理由
多くの金融 MCP サーバーは API エンドポイントごとに 1 つのツールを公開するため、エージェントは 4~5 回の逐次呼び出しを行い、つなぎ込み用のコードを書き、生データの構造を解釈しなければなりません。Toolstem は異なるアプローチを採用しています。
- 並列データ取得 — 各ツールは複数のソースに同時にリクエストを送ります。
- 派生シグナル —
UNDERVALUED、STRONG、ACCELERATINGのような人が読みやすい推奨値を、生の数値から算出します。 - 事前計算済みの数値 — CAGR、前年比成長率、利益率の傾向、52 週高値・安値からの距離、FCF 利回りなどを、レスポンスにあらかじめ含めています。
- フラットで予測しやすいスキーマ — ベンダー固有の癖が深くネストした状態でエージェントのプロンプトに入り込むことはありません。
- 柔軟な縮退動作 — 上流エンドポイントのいずれかに障害が発生しても、残りのレスポンスは該当箇所を null にして返されます。
上級者向け:セルフホスト
ほとんどのユーザーには、上記のホステッドエンドポイントの利用をおすすめします — API キーもインフラもセットアップも不要です。このセクションは、サーバーを自分で実行したいユーザー向けです。
独自の FMP キーを使って Node MCP サーバーをローカルで実行します — x402 は不要で、FMP の利用枠を超える従量課金もありません。独自の FMP_API_KEY の取得と管理、および実行するインフラの管理は、ご自身の責任で行ってください。
npm
npm install -g toolstem-mcp-server
stdio(デフォルト — Claude Desktop、Cursor など向け):
FMP_API_KEY=your_key_here toolstem-mcp-server
HTTP — ローカルのみ(デフォルト、127.0.0.1 にバインド):
FMP_API_KEY=your_key_here toolstem-mcp-server --http
HTTP — リモート+認証(0.0.0.0 にバインドし、ベアラートークンが必要):
FMP_API_KEY=your_key ALLOW_REMOTE=1 MCP_AUTH_TOKEN=my-secret toolstem-mcp-server --http
クライアントは、各 /mcp リクエストに Authorization: Bearer my-secret を付けて送信する必要があります。
HTTP — 認証無効(ローカルのみ):
FMP_API_KEY=your_key MCP_AUTH_DISABLED=1 toolstem-mcp-server --http
MCP_AUTH_DISABLED=1を設定すると、ALLOW_REMOTEの値にかかわらず、サーバーは127.0.0.1にバインドされます。開発時に安全に「認証を省略し、ローカルのみ」で実行できるモードです。
HTTP — 認証なしのリモート接続(危険):
FMP_API_KEY=your_key ALLOW_REMOTE=1 MCP_AUTH_DISABLED=1 I_KNOW_THIS_IS_DANGEROUS=1 toolstem-mcp-server --http
警告: ポートにアクセスできるすべてのユーザーに FMP API キーが公開されます。3 つすべての環境変数が必要です。起動時に
[SECURITY WARNING]バナーが表示され、その後も 60 秒ごとに繰り返し表示されます。信頼できるネットワークまたは開発環境でのみ使用してください。
Claude Desktop(セルフホスト)
{
"mcpServers": {
"toolstem": {
"command": "npx",
"args": ["-y", "toolstem-mcp-server"],
"env": {
"FMP_API_KEY": "your_fmp_api_key"
}
}
}
}
ソースから実行
npm install
npm run build
FMP_API_KEY=your_key npm run start:http
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
FMP_API_KEY | はい(セルフホストの場合) | Financial Modeling Prep API キー。financialmodelingprep.com で取得できます。ホステッドエンドポイントを呼び出す場合は不要です。 |
PORT | いいえ | HTTP トランスポート用のポートです。デフォルトは 3000 です。 |
ALLOW_REMOTE | いいえ | 1 に設定すると、HTTP を 127.0.0.1 ではなく 0.0.0.0 にバインドします。 |
MCP_AUTH_TOKEN | ALLOW_REMOTE=1 の場合 | /mcp リクエストを認証するためのベアラートークンです。 |
MCP_AUTH_DISABLED | いいえ | 1 に設定すると、認証を省略します。I_KNOW_THIS_IS_DANGEROUS=1 も設定されていない限り、バインド先は 127.0.0.1 になります。 |
I_KNOW_THIS_IS_DANGEROUS | いいえ | ALLOW_REMOTE=1 および MCP_AUTH_DISABLED=1 とともに 1 に設定すると、認証なしでリモートアクセスを許可します。定期的に警告バナーが表示されます。 |
開発
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
アーキテクチャ
src/
├── index.ts # MCP server entry (stdio + Streamable HTTP)
├── actor.ts # Apify Actor entry (legacy)
├── services/
│ └── fmp.ts # Financial Modeling Prep API client
├── tools/
│ ├── get-stock-snapshot.ts
│ ├── get-company-metrics.ts
│ └── compare-companies.ts
└── utils/
└── formatting.ts # Market cap formatting, CAGR, trend signals
すべての FMP エンドポイントは、単一の FmpClient クラスでラップされています。ツールの実装では、Promise.all を使って複数のクライアントメソッドを並行して実行し、結合した結果を統合します。
ライセンス
MIT — LICENSE を参照してください。
Toolstem — エージェントネイティブな経済に向けた、厳選された金融インテリジェンス。https://toolstem.com/finance/
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。