Connect your AI Agents to FactSet in minutes

Available tools
get_consensus_estimates
Get Wall Street consensus estimates. Returns mean, median, high, low, and count for metrics like EPS, revenue. Requires FactSet IDs - use match_entity first.
get_actuals
Get actual reported values for financial metrics. Compare actuals vs estimates for earnings analysis. Requires FactSet IDs - use match_entity first.
get_surprise_history
Get earnings surprise history showing beat/miss vs consensus. Returns actual EPS, estimate, surprise amount, and percentage. Requires FactSet IDs.
get_analyst_ratings
Get buy/hold/sell ratings distribution and price targets. Returns rating counts, consensus score, and target prices. Requires FactSet IDs - use match_entity first.
get_guidance
Get company-issued guidance. Returns management's outlook with low, high, and midpoint values for revenue, EPS, etc. Requires FactSet IDs - use match_entity first.
get_calendar_events
Get upcoming/past company events (earnings calls, conferences, investor days). Filter by company, date range, event type. Returns event times, dial-in info.
get_transcripts
Get earnings call transcripts. Returns full text with speaker attribution, Q&A sections. Filter by company, date range. Corrected transcripts available within 24hrs.
get_fundamentals
Get fundamental financial metrics. Income: FF_SALES, FF_EPS, FF_NET_INC, FF_EBIT_OPER, FF_EBITDA_OPER, FF_GROSS_INC, FF_OPER_INC. Margins: FF_GROSS_MGN, FF_OPER_MGN, FF_NET_MGN. Ratios: FF_ROE, FF_ROA, FF_DEBT_EQ, FF_CURR_RATIO. Use get_fundamental_metrics to discover all codes.
get_company_profile
Get company profile including business description, industry, headquarters, website, employees, and CEO. Requires FactSet IDs - use match_entity first.
get_financial_statements
Get income statement (IS), balance sheet (BS), or cash flow (CF) statement data. Returns last 4 years of data. Requires FactSet IDs - use match_entity first.
get_fundamental_metrics
List available fundamental metrics by category. Categories: INCOME_STATEMENT, BALANCE_SHEET, CASH_FLOW, RATIOS, MARKET_DATA, FINANCIAL_SERVICES, INDUSTRY_METRICS. Returns metric codes for use with get_fundamentals.
get_segments
Get business or geographic segment breakdown. Returns revenue, operating income, and assets by segment. Requires FactSet IDs - use match_entity first.
get_deals
Search M&A deals by company, date range, deal status, or deal type. Returns deal value, buyer/target names, announcement dates. Covers 500K+ global deals since 1992.
get_deal_details
Get detailed M&A deal info by deal ID. Returns full terms, advisors, financing details, timeline. Use get_deals first to find deal IDs.
get_security_holders
Get institutional holders of a security. Returns fund names, shares held, % ownership, filing dates. Filter by holder type (institutions, insiders, funds).
get_fund_holdings
Get securities held by a fund. Returns positions, market values, % of portfolio. Filter by asset type (equity, fixed income). Limited to top_n holdings (default: 50).
get_people_profiles
Get executive/person profiles by FactSet People ID. Returns name, title, biography, contact info. Use get_company_people first to find person IDs for a company.
get_company_people
Get executives, board members, and key personnel for a company. Returns names, titles, and FactSet People IDs. Use company ticker or FactSet entity ID.
get_security_prices
Get OHLC prices for securities. Requires FactSet IDs - use match_entity first to find them. Returns open, high, low, close, volume by date. Supports date ranges and frequency options.
get_security_returns
Get total returns for securities including dividend reinvestment. Requires FactSet IDs - use match_entity first. Use for performance analysis and benchmarking.
get_dividends
Get dividend history for securities. Returns ex-date, pay-date, record-date, and amount. Requires FactSet IDs - use match_entity first. Use for income analysis.
get_splits
Get stock split history for securities. Returns split ratio, effective date, and description. Requires FactSet IDs - use match_entity first.
get_market_value
Get market capitalization and shares outstanding for securities. Requires FactSet IDs - use match_entity first. Use for valuation and size analysis.
validate_credential
Validate FactSet API credentials by making a test request. Returns success status and message.

How to set up Merge Agent Handler
In an mcp.json file, add the configuration below, and restart Cursor.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5 "headers": {
6 "Authorization": "Bearer yMt*****"
7 }
8 }
9 }
10}
11Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.
Make sure Claude is using the Node v20+.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "yMt*****"
14 }
15 }
16 }
17}Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.
Learn more in the official documentation ↗
1{
2 "mcpServers": {
3 "agent-handler": {
4 "command": "npx",
5 "args": [
6 "-y",
7 "mcp-remote@latest",
8 "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9 "--header",
10 "Authorization: Bearer ${AUTH_TOKEN}"
11 ],
12 "env": {
13 "AUTH_TOKEN": "<ah-production-access-key>"
14 }
15 }
16 }
17 }In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".
You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.
Learn more in the official documentation ↗
1{
2 "inputs": [
3 {
4 "type": "promptString",
5 "id": "agent-handler-auth",
6 "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7 "password": true
8 }
9 ],
10 "servers": {
11 "agent-handler": {
12 "type": "stdio",
13 "command": "npx",
14 "args": [
15 "-y",
16 "mcp-remote@latest",
17 "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18 "--header",
19 "Authorization: Bearer ${input:agent-handler-auth}"
20 ]
21 }
22 }
23}FAQs on using Merge's FactSet MCP server
FAQs on using Merge's FactSet MCP server
Ready to try it out?
Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now





