Finance MCP

io.github.aowang-ai由 GitHub 账号 aowang-ai 发布v0.1.0更新于 Oct 25, 2026

Hosted MCP server for SEC, FRED, Polymarket, Deribit, OKX, and FMP.

发布方自己的服务:Finance Foundation

已验证Streamable HTTP可网页运行金融数据与分析

概览

AI 生成的概览

托管型 MCP 服务器,让助手发现、查看并调用金融数据工具,覆盖美股、SEC 文件、宏观数据、加密货币与预测市场。

可以做什么
  • 按任务描述检索金融工具目录,例如某只股票价格、利润表或宏观序列
  • 查看单个工具的完整契约:输入结构、输出结构、费用与速率限制
  • 带参数执行选定的工具并取回数据源返回的结果
  • 覆盖范围包括股票快照、历史价格与新闻,SEC EDGAR 财务数据、申报文件与提交记录,FRED 观测值,FMP 利润表,OKX 行情与 K 线,Deribit 期权以及 Polymarket 事件
适用场景
当助手需要行情、申报文件或宏观数据,又不想自己逐个对接多家数据源 API 时适用。先发现、再查看、后执行的三步流程适合回答个股、公司财报、美国经济指标以及加密与预测市场相关问题。
运行要求
远程 MCP 端点,无需本地安装包。客户端会要求登录,每个账户一次性获得 1,000 点免费额度,由其所有 API 密钥与 OAuth 会话共享。每次成功执行消耗额度(FMP 工具为 2 点),失败不扣费。部分数据源依赖上游密钥,如 TIINGO_API_KEY、FINNHUB_API_KEY、FRED_API_KEY、FMP_API_KEY,SEC EDGAR 使用 SEC_EDGAR_USER_AGENT。
安装前请注意
执行会消耗一次性免费额度,频繁使用可能用尽。数据来自第三方供应商,常为延迟数据或仅 IEX 数据,项目声明不构成投资建议。查询与参数会发送到托管服务并转发给上游供应商。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Finance MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.aowang-ai%2Ffinance-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "finance": {
      "type": "http",
      "url": "https://finance-mcp.com/mcp"
    }
  }
}

README

Finance MCP connectors

Connector definitions for Finance MCP: how each source is called, what it accepts, and what it returns.

This repo is the connector layer. Agents use the hosted server. Adding a source is a pull request.

Equity and crypto figures are what those sources return, often delayed. Not investment advice.

Quickstart

Connect to the hosted server.

  • MCP: https://finance-mcp.com/mcp
  • Skill: set up https://finance-mcp.com/SKILL.md
  • Docs: finance-mcp.com/docs

Cursor, in ~/.cursor/mcp.json:

json
{  "mcpServers": {    "finance-mcp": {      "url": "https://finance-mcp.com/mcp"    }  }}

Claude Code:

claude mcp add --transport http finance-mcp https://finance-mcp.com/mcp

Sign in when the client asks. Other clients are in the docs.

How an agent uses it

Three verbs. Finance MCP never charges money: each account gets 1,000 free credits once, shared by all of its API keys and OAuth sessions. Discover and inspect are free; each successful run costs 1 credit (FMP tools 2), and failed runs are not charged. See https://finance-mcp.com/pricing.

  1. finance_discover: describe the task. { "query": "BTC spot price", "limit": 5 } returns ranked { id, provider, displayName, summary }.
  2. finance_inspect: read one tool. { "id": "okx#ticker" } returns its input schema and output shape.
  3. finance_run: call it. { "id": "okx#ticker", "params": { "instId": "BTC-USDT" } }. A failed vendor call returns an error.

Stock tools take the ticker directly. For "where is this stock now", start with stocks#snapshot.

json
{ "id": "stocks#snapshot", "params": { "ticker": "SNDK" } }{ "id": "stocks#price-history", "params": { "ticker": "MU", "range": "1y", "interval": "daily", "indicators": true } }{ "id": "stocks#news", "params": { "ticker": "SNDK", "days": 7, "limit": 10 } }{ "id": "macro#overview", "params": {} }{ "id": "sec-edgar#fundamentals", "params": { "ticker": "SNDK", "period": "quarterly", "limit": 4 } }{ "id": "sec-edgar#filings", "params": { "ticker": "MU", "forms": ["10-K", "10-Q", "8-K", "4"], "limit": 10 } }{ "id": "fmp#income-statement", "params": { "symbol": "AAPL", "period": "annual", "limit": 3 } }{ "id": "fred#observations", "params": { "seriesId": "DGS10", "limit": 12 } }{ "id": "sec-edgar#submissions", "params": { "cik": "0000320193" } }{ "id": "deribit#options", "params": { "currency": "BTC" } }{ "id": "polymarket#events", "params": { "query": "SpaceX" } }

Sources

SourceUpstreamAuthEndpoints
US stocksTiingo, Twelve Data, SEC XBRL, FinnhubTIINGO_API_KEY, FINNHUB_API_KEY, optional TWELVE_DATA_API_KEYstocks#snapshot, stocks#price-history, stocks#news
US macroFREDFRED_API_KEYmacro#overview
SEC EDGAREDGAR APIsSEC_EDGAR_USER_AGENT, or the default contact stringsec-edgar#fundamentals, sec-edgar#filings, sec-edgar#submissions
FREDseries observationsFRED_API_KEYfred#observations
PolymarketGamma eventsnonepolymarket#events
Deribitget_instrumentsnonederibit#options
OKXmarket datanoneokx#ticker, okx#klines
FMPincome statementFMP_API_KEYfmp#income-statement

Stock prices are delayed or IEX only. Finnhub parts of the snapshot are optional and show up as notes when the free tier does not cover them.

Writing a connector

A connector describes one provider and its endpoints. The id is <provider>#<endpoint>.

A provider names the source, links its docs, and says how auth is supplied:

ts
// connectors/okx/provider.tsexport default defineProvider({  name: "okx",  meta: {    displayName: "OKX",    summary: "Public crypto spot and swap market data.",    homepageUrl: "https://www.okx.com",    docsUrl: "https://www.okx.com/docs-v5/en/#order-book-trading-market-data",  },  auth: { kind: "none" },});

An endpoint declares the call, the input schema, the output shape, and an example. The example response is a fixture file, replayed by the test.

ts
// connectors/okx/endpoints/ticker/endpoint.tsexport default defineEndpoint({  provider,  name: "ticker",  meta: {    displayName: "OKX ticker",    summary: "24h ticker (last price, high/low, volume) for a crypto instrument like BTC-USDT.",    description: "Latest OKX ticker for one spot or swap instrument.",    tags: ["crypto", "spot", "ticker"],    docsUrl: "https://www.okx.com/docs-v5/en/#order-book-trading-market-data-get-ticker",  },  input: z.object({    instId: z.string().describe("Instrument id, for example BTC-USDT."),  }),  outputShape: {    type: "object",    required: ["instId", "last"],    properties: { instId: { type: "string" }, last: { type: "string" } },  },  example: {    params: { instId: "BTC-USDT" },    request: {      method: "GET",      url: "https://www.okx.com/api/v5/market/ticker?instId=BTC-USDT",    },    fixture: "recorded.json",  },  // buildRequest and parse map that call onto the output shape});

meta.summary is what finance_discover ranks and finance_inspect returns. Say what the endpoint returns.

connectors/<name>/├── provider.ts└── endpoints/<endpoint>/    ├── endpoint.ts    ├── endpoint.test.ts    └── fixtures/*.json

Composite tools, the ones that combine several upstream calls (stocks#*, macro#overview, sec-edgar#fundamentals, sec-edgar#filings), declare an execute function and are wrapped with composite() in the connector's index.ts. Their fixture records every upstream response of one run; npm run record:composite -- <provider>#<endpoint> writes it with keys removed.

  1. Read connectors/okx and connectors/fred, and CONTRIBUTING.md.
  2. Write the provider and the endpoint.
  3. Record a fixture with npm run record, then keep it trimmed.
  4. npm test and npm run lint must pass with no network.
  5. Open a pull request.

Check the definitions locally:

bash
npm installnpm testnpm run catalog

Repo layout

connectors/     provider + endpoint definitionssrc/            catalog load and fixture replayscripts/        catalog and recordserver.json     registry entry for the hosted server

License

MIT. See LICENSE.

来源:README.md,提交 d3e3176

工具

3

finance_discover

Discover finance tools

FREE. Search the finance tool catalog by task description (e.g. 'BTC spot price', 'AAPL income statement', 'US CPI'). Returns ranked tools with id, summary, and categories. Call this first.

输入参数limitquery必填category

finance_inspect

Inspect a finance tool

FREE. Get the full contract of one tool by id (input schema, output shape, cost, rate limits). Call after finance_discover, before finance_run.

输入参数id必填

finance_run

Run a finance tool

Execute a finance tool by id with params. Discover, inspect, and run are free to call. Failed vendor calls return an error.

输入参数id必填params必填

版本历史

1
  1. v0.1.0最新Oct 25, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Finance 集成