@houtini/fmp-mcp 1.0.2 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +267 -54
- package/build/index.js +584 -2
- package/build/index.js.map +1 -1
- package/package.json +8 -3
- package/src/index.ts +622 -2
- package/commit_msg.txt +0 -8
package/README.md
CHANGED
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
# Financial Modeling Prep MCP Server
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
[](https://smithery.ai/server/@houtini/fmp-mcp)
|
|
5
4
|
[](https://badge.fury.io/js/@houtini%2Ffmp-mcp)
|
|
6
5
|
[](https://opensource.org/licenses/MIT)
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
Model Context Protocol (MCP) server providing access to Financial Modeling Prep's comprehensive financial data API. Get real-time stock quotes, company fundamentals, financial statements, market insights, analyst data, and technical indicators directly in Claude Desktop.
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
- **Company Information**: Detailed profiles including industry, sector, and key executives ✅ Free
|
|
12
|
-
- **Financial Statements**: Income statements, balance sheets, and cash flow statements ✅ Free
|
|
13
|
-
- **Symbol Search**: Find companies by name or ticker across global exchanges ✅ Free
|
|
14
|
-
- **Stock News**: Latest news articles and market sentiment for specific symbols 💰 Paid Only
|
|
9
|
+
## Features
|
|
15
10
|
|
|
16
|
-
|
|
11
|
+
- **Real-time Market Data**: Live stock quotes with price, volume, and market metrics
|
|
12
|
+
- **Company Information**: Detailed profiles including industry, sector, and key executives
|
|
13
|
+
- **Financial Statements**: Income statements, balance sheets, and cash flow statements
|
|
14
|
+
- **Market Performance**: Track gainers, losers, most active stocks, and sector performance
|
|
15
|
+
- **Analyst Data**: Price targets, estimates, ratings, and upgrades/downgrades
|
|
16
|
+
- **Insider Trading**: Monitor insider transactions and institutional holdings
|
|
17
|
+
- **Technical Indicators**: RSI, SMA, EMA with multiple timeframes
|
|
18
|
+
- **Economic Data**: GDP, unemployment, inflation, treasury rates, and economic calendar
|
|
19
|
+
- **Historical Charts**: Intraday data from 1-minute to 4-hour intervals
|
|
20
|
+
- **Symbol Search**: Find companies by name or ticker across global exchanges
|
|
17
21
|
|
|
18
22
|
## Installation
|
|
19
23
|
|
|
@@ -53,7 +57,9 @@ Replace `your_api_key_here` with your actual API key from Financial Modeling Pre
|
|
|
53
57
|
|
|
54
58
|
## Available Tools
|
|
55
59
|
|
|
56
|
-
###
|
|
60
|
+
### Core Market Data
|
|
61
|
+
|
|
62
|
+
#### `get_quote`
|
|
57
63
|
Get real-time stock quote data.
|
|
58
64
|
|
|
59
65
|
**Parameters:**
|
|
@@ -61,7 +67,7 @@ Get real-time stock quote data.
|
|
|
61
67
|
|
|
62
68
|
**Returns:** Current price, volume, market cap, P/E ratio, day high/low, and more.
|
|
63
69
|
|
|
64
|
-
|
|
70
|
+
#### `search_symbol`
|
|
65
71
|
Search for stock symbols by company name or ticker.
|
|
66
72
|
|
|
67
73
|
**Parameters:**
|
|
@@ -69,7 +75,9 @@ Search for stock symbols by company name or ticker.
|
|
|
69
75
|
|
|
70
76
|
**Returns:** Matching symbols with company names and exchange information.
|
|
71
77
|
|
|
72
|
-
###
|
|
78
|
+
### Company Fundamentals
|
|
79
|
+
|
|
80
|
+
#### `get_company_profile`
|
|
73
81
|
Get detailed company profile and fundamental data.
|
|
74
82
|
|
|
75
83
|
**Parameters:**
|
|
@@ -77,7 +85,7 @@ Get detailed company profile and fundamental data.
|
|
|
77
85
|
|
|
78
86
|
**Returns:** Company description, industry, sector, CEO, employee count, headquarters, website, and key financial metrics.
|
|
79
87
|
|
|
80
|
-
|
|
88
|
+
#### `get_income_statement`
|
|
81
89
|
Retrieve company income statement data.
|
|
82
90
|
|
|
83
91
|
**Parameters:**
|
|
@@ -87,7 +95,7 @@ Retrieve company income statement data.
|
|
|
87
95
|
|
|
88
96
|
**Returns:** Revenue, expenses, net income, EPS, and other profitability metrics.
|
|
89
97
|
|
|
90
|
-
|
|
98
|
+
#### `get_balance_sheet`
|
|
91
99
|
Retrieve company balance sheet data.
|
|
92
100
|
|
|
93
101
|
**Parameters:**
|
|
@@ -97,7 +105,7 @@ Retrieve company balance sheet data.
|
|
|
97
105
|
|
|
98
106
|
**Returns:** Assets, liabilities, shareholder equity, and detailed line items.
|
|
99
107
|
|
|
100
|
-
|
|
108
|
+
#### `get_cash_flow`
|
|
101
109
|
Retrieve company cash flow statement data.
|
|
102
110
|
|
|
103
111
|
**Parameters:**
|
|
@@ -107,7 +115,194 @@ Retrieve company cash flow statement data.
|
|
|
107
115
|
|
|
108
116
|
**Returns:** Operating cash flow, investing activities, financing activities, and free cash flow.
|
|
109
117
|
|
|
110
|
-
|
|
118
|
+
#### `get_key_metrics`
|
|
119
|
+
Get key financial metrics and ratios.
|
|
120
|
+
|
|
121
|
+
**Parameters:**
|
|
122
|
+
- `symbol` (required): Stock ticker symbol
|
|
123
|
+
- `period` (optional): "annual" or "quarter" (default: "annual")
|
|
124
|
+
- `limit` (optional): Number of periods to return (default: 5)
|
|
125
|
+
|
|
126
|
+
**Returns:** P/E ratio, ROE, ROA, debt ratios, current ratio, and more.
|
|
127
|
+
|
|
128
|
+
#### `get_financial_ratios`
|
|
129
|
+
Get detailed financial ratios (profitability, liquidity, efficiency).
|
|
130
|
+
|
|
131
|
+
**Parameters:**
|
|
132
|
+
- `symbol` (required): Stock ticker symbol
|
|
133
|
+
- `period` (optional): "annual" or "quarter" (default: "annual")
|
|
134
|
+
- `limit` (optional): Number of periods to return (default: 5)
|
|
135
|
+
|
|
136
|
+
**Returns:** Comprehensive ratio analysis including profitability, liquidity, and efficiency metrics.
|
|
137
|
+
|
|
138
|
+
### Market Performance
|
|
139
|
+
|
|
140
|
+
#### `get_market_gainers`
|
|
141
|
+
Get stocks with the largest price increases.
|
|
142
|
+
|
|
143
|
+
**Parameters:** None
|
|
144
|
+
|
|
145
|
+
**Returns:** Top gaining stocks with price changes and volume.
|
|
146
|
+
|
|
147
|
+
#### `get_market_losers`
|
|
148
|
+
Get stocks with the largest price drops.
|
|
149
|
+
|
|
150
|
+
**Parameters:** None
|
|
151
|
+
|
|
152
|
+
**Returns:** Top losing stocks with price changes and volume.
|
|
153
|
+
|
|
154
|
+
#### `get_most_active`
|
|
155
|
+
Get most actively traded stocks by volume.
|
|
156
|
+
|
|
157
|
+
**Parameters:** None
|
|
158
|
+
|
|
159
|
+
**Returns:** Stocks with highest trading volume.
|
|
160
|
+
|
|
161
|
+
#### `get_sector_performance`
|
|
162
|
+
Get current sector performance snapshot.
|
|
163
|
+
|
|
164
|
+
**Parameters:**
|
|
165
|
+
- `date` (optional): Date in YYYY-MM-DD format (defaults to latest)
|
|
166
|
+
|
|
167
|
+
**Returns:** Performance metrics for all market sectors.
|
|
168
|
+
|
|
169
|
+
### Analyst Data
|
|
170
|
+
|
|
171
|
+
#### `get_analyst_estimates`
|
|
172
|
+
Get analyst financial estimates (revenue, EPS forecasts).
|
|
173
|
+
|
|
174
|
+
**Parameters:**
|
|
175
|
+
- `symbol` (required): Stock ticker symbol
|
|
176
|
+
- `period` (optional): "annual" or "quarter" (default: "annual")
|
|
177
|
+
- `limit` (optional): Number of periods to return (default: 10)
|
|
178
|
+
|
|
179
|
+
**Returns:** Analyst revenue and earnings estimates with consensus figures.
|
|
180
|
+
|
|
181
|
+
#### `get_price_target`
|
|
182
|
+
Get analyst price target summary.
|
|
183
|
+
|
|
184
|
+
**Parameters:**
|
|
185
|
+
- `symbol` (required): Stock ticker symbol
|
|
186
|
+
|
|
187
|
+
**Returns:** Average, high, low, and median price targets from analysts.
|
|
188
|
+
|
|
189
|
+
#### `get_analyst_ratings`
|
|
190
|
+
Get analyst ratings and upgrades/downgrades.
|
|
191
|
+
|
|
192
|
+
**Parameters:**
|
|
193
|
+
- `symbol` (required): Stock ticker symbol
|
|
194
|
+
|
|
195
|
+
**Returns:** Recent analyst rating changes, upgrades, downgrades, and recommendations.
|
|
196
|
+
|
|
197
|
+
### Insider Trading & Institutional
|
|
198
|
+
|
|
199
|
+
#### `get_insider_trading`
|
|
200
|
+
Get recent insider trading activity.
|
|
201
|
+
|
|
202
|
+
**Parameters:**
|
|
203
|
+
- `symbol` (required): Stock ticker symbol
|
|
204
|
+
- `limit` (optional): Number of transactions to return (default: 100)
|
|
205
|
+
|
|
206
|
+
**Returns:** Insider buy/sell transactions with names, dates, and amounts.
|
|
207
|
+
|
|
208
|
+
#### `get_institutional_holders`
|
|
209
|
+
Get institutional ownership (13F filings).
|
|
210
|
+
|
|
211
|
+
**Parameters:**
|
|
212
|
+
- `symbol` (required): Stock ticker symbol
|
|
213
|
+
- `limit` (optional): Number of holders to return (default: 100)
|
|
214
|
+
|
|
215
|
+
**Returns:** Top institutional holders with share counts and filing dates.
|
|
216
|
+
|
|
217
|
+
### Technical Indicators
|
|
218
|
+
|
|
219
|
+
#### `get_technical_indicator_rsi`
|
|
220
|
+
Get Relative Strength Index (RSI).
|
|
221
|
+
|
|
222
|
+
**Parameters:**
|
|
223
|
+
- `symbol` (required): Stock ticker symbol
|
|
224
|
+
- `timeframe` (required): "1min", "5min", "15min", "30min", "1hour", "4hour", "1day"
|
|
225
|
+
- `period` (optional): Period length (default: 14)
|
|
226
|
+
|
|
227
|
+
**Returns:** RSI values with timestamps for momentum analysis.
|
|
228
|
+
|
|
229
|
+
#### `get_technical_indicator_sma`
|
|
230
|
+
Get Simple Moving Average (SMA).
|
|
231
|
+
|
|
232
|
+
**Parameters:**
|
|
233
|
+
- `symbol` (required): Stock ticker symbol
|
|
234
|
+
- `timeframe` (required): "1min", "5min", "15min", "30min", "1hour", "4hour", "1day"
|
|
235
|
+
- `period` (optional): Period length (default: 10)
|
|
236
|
+
|
|
237
|
+
**Returns:** SMA values with timestamps for trend analysis.
|
|
238
|
+
|
|
239
|
+
#### `get_technical_indicator_ema`
|
|
240
|
+
Get Exponential Moving Average (EMA).
|
|
241
|
+
|
|
242
|
+
**Parameters:**
|
|
243
|
+
- `symbol` (required): Stock ticker symbol
|
|
244
|
+
- `timeframe` (required): "1min", "5min", "15min", "30min", "1hour", "4hour", "1day"
|
|
245
|
+
- `period` (optional): Period length (default: 10)
|
|
246
|
+
|
|
247
|
+
**Returns:** EMA values with timestamps for trend analysis.
|
|
248
|
+
|
|
249
|
+
### Historical Data
|
|
250
|
+
|
|
251
|
+
#### `get_historical_chart`
|
|
252
|
+
Get historical price data with flexible time intervals.
|
|
253
|
+
|
|
254
|
+
**Parameters:**
|
|
255
|
+
- `symbol` (required): Stock ticker symbol
|
|
256
|
+
- `interval` (required): "1min", "5min", "15min", "30min", "1hour", "4hour"
|
|
257
|
+
- `from` (optional): Start date in YYYY-MM-DD format
|
|
258
|
+
- `to` (optional): End date in YYYY-MM-DD format
|
|
259
|
+
|
|
260
|
+
**Returns:** OHLC price data with volume for the specified interval.
|
|
261
|
+
|
|
262
|
+
### Economic Data
|
|
263
|
+
|
|
264
|
+
#### `get_economic_calendar`
|
|
265
|
+
Get upcoming economic data releases calendar.
|
|
266
|
+
|
|
267
|
+
**Parameters:**
|
|
268
|
+
- `from` (optional): Start date in YYYY-MM-DD format
|
|
269
|
+
- `to` (optional): End date in YYYY-MM-DD format
|
|
270
|
+
|
|
271
|
+
**Returns:** Scheduled economic announcements with dates and expected impact.
|
|
272
|
+
|
|
273
|
+
#### `get_economic_indicator`
|
|
274
|
+
Get economic indicator data (GDP, unemployment, inflation, etc.).
|
|
275
|
+
|
|
276
|
+
**Parameters:**
|
|
277
|
+
- `name` (required): Indicator name (e.g., "GDP", "unemploymentRate", "CPI")
|
|
278
|
+
- `from` (optional): Start date in YYYY-MM-DD format
|
|
279
|
+
- `to` (optional): End date in YYYY-MM-DD format
|
|
280
|
+
|
|
281
|
+
**Returns:** Historical values for the specified economic indicator.
|
|
282
|
+
|
|
283
|
+
### Events & Calendars
|
|
284
|
+
|
|
285
|
+
#### `get_earnings_calendar`
|
|
286
|
+
Get upcoming earnings announcements calendar.
|
|
287
|
+
|
|
288
|
+
**Parameters:**
|
|
289
|
+
- `from` (optional): Start date in YYYY-MM-DD format
|
|
290
|
+
- `to` (optional): End date in YYYY-MM-DD format
|
|
291
|
+
|
|
292
|
+
**Returns:** Upcoming earnings dates with EPS estimates.
|
|
293
|
+
|
|
294
|
+
### Index Data
|
|
295
|
+
|
|
296
|
+
#### `get_sp500_constituents`
|
|
297
|
+
Get list of S&P 500 index constituents.
|
|
298
|
+
|
|
299
|
+
**Parameters:** None
|
|
300
|
+
|
|
301
|
+
**Returns:** All companies in the S&P 500 with symbols and details.
|
|
302
|
+
|
|
303
|
+
### News (Paid Feature)
|
|
304
|
+
|
|
305
|
+
#### `get_stock_news`
|
|
111
306
|
Get latest news articles for a stock.
|
|
112
307
|
|
|
113
308
|
**Parameters:**
|
|
@@ -116,7 +311,7 @@ Get latest news articles for a stock.
|
|
|
116
311
|
|
|
117
312
|
**Returns:** News headlines, publication dates, URLs, and article summaries.
|
|
118
313
|
|
|
119
|
-
**Note:** This endpoint requires a paid FMP plan.
|
|
314
|
+
**Note:** This endpoint requires a paid FMP plan.
|
|
120
315
|
|
|
121
316
|
## Usage Examples
|
|
122
317
|
|
|
@@ -131,15 +326,31 @@ Show me Tesla's quarterly income statements for the last 8 quarters
|
|
|
131
326
|
```
|
|
132
327
|
|
|
133
328
|
```
|
|
134
|
-
|
|
329
|
+
What are today's biggest market gainers?
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
```
|
|
333
|
+
Get analyst price targets for NVIDIA
|
|
135
334
|
```
|
|
136
335
|
|
|
137
336
|
```
|
|
138
|
-
|
|
337
|
+
Show me insider trading activity for Microsoft
|
|
139
338
|
```
|
|
140
339
|
|
|
141
340
|
```
|
|
142
|
-
|
|
341
|
+
Calculate the 14-day RSI for TSLA on the daily timeframe
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
```
|
|
345
|
+
What's the current sector performance?
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
```
|
|
349
|
+
Get upcoming earnings announcements for this week
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
```
|
|
353
|
+
Show me institutional holders of Amazon
|
|
143
354
|
```
|
|
144
355
|
|
|
145
356
|
## API Rate Limits
|
|
@@ -152,35 +363,12 @@ Financial Modeling Prep offers different pricing tiers:
|
|
|
152
363
|
|
|
153
364
|
See [FMP Pricing](https://financialmodelingprep.com/developer/docs/pricing) for current plans and limits.
|
|
154
365
|
|
|
155
|
-
## API Limitations
|
|
156
|
-
|
|
157
|
-
### Free Tier Access
|
|
158
|
-
|
|
159
|
-
The following features are **included** in the free tier:
|
|
160
|
-
- ✅ Real-time stock quotes (`get_quote`)
|
|
161
|
-
- ✅ Company profiles (`get_company_profile`)
|
|
162
|
-
- ✅ Financial statements - Income, Balance Sheet, Cash Flow (`get_income_statement`, `get_balance_sheet`, `get_cash_flow`)
|
|
163
|
-
- ✅ Symbol search (`search_symbol`)
|
|
164
|
-
|
|
165
|
-
### Paid Plan Required
|
|
166
|
-
|
|
167
|
-
The following features require a **paid subscription**:
|
|
168
|
-
- 💰 Stock news (`get_stock_news`) - Returns 402 Payment Required on free tier
|
|
169
|
-
- 💰 Other premium endpoints (not yet implemented in this MCP)
|
|
170
|
-
|
|
171
|
-
If you attempt to use a paid endpoint with a free API key, you'll receive:
|
|
172
|
-
```
|
|
173
|
-
Error: FMP API error: 402 Payment Required
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
To access these features, upgrade your plan at [FMP Pricing](https://site.financialmodelingprep.com/pricing-plans).
|
|
177
|
-
|
|
178
366
|
## Development
|
|
179
367
|
|
|
180
368
|
### Local Installation
|
|
181
369
|
|
|
182
370
|
```bash
|
|
183
|
-
git clone https://github.com/
|
|
371
|
+
git clone https://github.com/houtini-ai/fmp-mcp.git
|
|
184
372
|
cd fmp-mcp
|
|
185
373
|
npm install
|
|
186
374
|
npm run build
|
|
@@ -194,7 +382,7 @@ npm run build
|
|
|
194
382
|
"financial-modeling-prep": {
|
|
195
383
|
"command": "node",
|
|
196
384
|
"args": [
|
|
197
|
-
"
|
|
385
|
+
"/absolute/path/to/fmp-mcp/build/index.js"
|
|
198
386
|
],
|
|
199
387
|
"env": {
|
|
200
388
|
"FMP_API_KEY": "your_api_key_here"
|
|
@@ -214,15 +402,40 @@ Output goes to the `build/` directory.
|
|
|
214
402
|
|
|
215
403
|
## API Coverage
|
|
216
404
|
|
|
217
|
-
This MCP server implements
|
|
405
|
+
This MCP server implements 29 endpoints from the Financial Modeling Prep API:
|
|
406
|
+
|
|
407
|
+
**Core Market Data** (3)
|
|
408
|
+
- Stock quotes, symbol search, company profiles
|
|
409
|
+
|
|
410
|
+
**Financial Statements** (6)
|
|
411
|
+
- Income statement, balance sheet, cash flow, key metrics, financial ratios (annual & quarterly)
|
|
412
|
+
|
|
413
|
+
**Market Performance** (4)
|
|
414
|
+
- Gainers, losers, most active, sector performance
|
|
415
|
+
|
|
416
|
+
**Analyst Data** (3)
|
|
417
|
+
- Estimates, price targets, ratings
|
|
418
|
+
|
|
419
|
+
**Insider & Institutional** (2)
|
|
420
|
+
- Insider trading, institutional holders
|
|
421
|
+
|
|
422
|
+
**Technical Indicators** (3)
|
|
423
|
+
- RSI, SMA, EMA with multiple timeframes
|
|
424
|
+
|
|
425
|
+
**Historical Data** (1)
|
|
426
|
+
- Intraday charts (1min to 4hour)
|
|
427
|
+
|
|
428
|
+
**Economic Data** (2)
|
|
429
|
+
- Economic calendar, economic indicators
|
|
430
|
+
|
|
431
|
+
**Events & Calendars** (1)
|
|
432
|
+
- Earnings calendar
|
|
433
|
+
|
|
434
|
+
**Index Data** (1)
|
|
435
|
+
- S&P 500 constituents
|
|
218
436
|
|
|
219
|
-
|
|
220
|
-
-
|
|
221
|
-
- Company Profile
|
|
222
|
-
- Income Statement
|
|
223
|
-
- Balance Sheet
|
|
224
|
-
- Cash Flow Statement
|
|
225
|
-
- Stock News
|
|
437
|
+
**News** (1)
|
|
438
|
+
- Stock news (paid feature)
|
|
226
439
|
|
|
227
440
|
For the complete API reference, see the [FMP Developer Documentation](https://site.financialmodelingprep.com/developer/docs).
|
|
228
441
|
|
|
@@ -264,4 +477,4 @@ MIT License - see [LICENSE](LICENSE) file for details.
|
|
|
264
477
|
|
|
265
478
|
## Acknowledgments
|
|
266
479
|
|
|
267
|
-
Built with the [Model Context Protocol SDK](https://github.com/modelcontextprotocol/sdk) by Anthropic.
|
|
480
|
+
Built with the [Model Context Protocol SDK](https://github.com/modelcontextprotocol/sdk) by Anthropic.
|