o

openfigi

@viktorlarsson/openfigi
Hosted
0 Stars 7 次浏览 viktorlarsson 更新于 2026-08-23

Map financial identifiers (ISIN, CUSIP, SEDOL, Ticker) to FIGIs via OpenFIGI API

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "openfigi-mcp": {
      "args": [
        "openfigi-mcp@0.2.4"
      ],
      "command": "npx"
    }
  }
}

可用工具 (5 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

tavily_search 14 个参数 需填 1 项

Search the web for current information on any topic. Use for news, facts, or data beyond your knowledge cutoff. Returns snippets and source URLs.

必填参数:query

tavily_extract 6 个参数 需填 1 项

Extract content from URLs. Returns raw page content in markdown or text format.

必填参数:urls

tavily_crawl 11 个参数 需填 1 项

Crawl a website starting from a URL. Extracts content from pages with configurable depth and breadth.

必填参数:url

tavily_map 8 个参数 需填 1 项

Map a website's structure. Returns a list of URLs found starting from the base URL.

必填参数:url

tavily_research 2 个参数 需填 1 项

Perform comprehensive research on a given topic or question. Use this tool when you need to gather information from multiple sources to answer a question or complete a task. Returns a detailed response based on the research findings.

必填参数:input

服务介绍

OpenFIGI

A modern, type-safe TypeScript SDK and MCP server for the OpenFIGI API - the free and open standard for financial instrument identification.

CI

Community Project Disclaimer
This is an unofficial, community-maintained project for OpenFIGI. It is not affiliated with or endorsed by OpenFIGI or Bloomberg. For official support, please refer to the OpenFIGI official documentation.

# Packages

This monorepo contains two packages:

| Package | Version | Description |
|- -- -- -- --|- -- -- -- --|- -- -- -- -- -- --|
| openfigi-sdk | npm | TypeScript SDK for the OpenFIGI API |
| openfigi-mcp | npm | MCP server for Claude and AI assistants |

# openfigi-sdk

Type-safe TypeScript SDK with full API coverage.

npm install openfigi-sdk
import { searchByISIN, searchByTicker, createClient } from 'openfigi-sdk'

// Search by ISIN
const response = await searchByISIN('US0378331005')

// Search by ticker
await searchByTicker('AAPL', 'US', { securityType2: 'Common Stock' })

// With API key for higher rate limits
const client = createClient({ apiKey: 'your-api-key' })
await client.searchByISIN('US0378331005')

Full SDK documentation →

# openfigi-mcp

MCP (Model Context Protocol) server for using OpenFIGI with Claude and other AI assistants.

npm install openfigi-mcp

Add to Claude Desktop config:

{
  "mcpServers": {
    "openfigi": {
      "command": "npx",
      "args": ["openfigi-mcp@latest"],
      "env": {
        "OPENFIGI_API_KEY": "your-api-key-here"
      }
    }
  }
}

Features:

  • Auto-detection: Parse CSV/text and detect identifier types (ISIN, CUSIP, SEDOL, Bloomberg ID, Ticker)
  • Batch operations: Process up to 100 identifiers at once
  • Ticker + Exchange: Supports formats like AAPL US, ABLI SS, VOD LN

# # Using with Vercel AI SDK

npm install ai @ai-sdk/mcp @ai-sdk/anthropic @modelcontextprotocol/sdk
import { createMCPClient } from '@ai-sdk/mcp'
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js'
import { generateText } from 'ai'
import { anthropic } from '@ai-sdk/anthropic'

const mcpClient = await createMCPClient({
  transport: new StdioClientTransport({
    command: 'npx',
    args: ['openfigi-mcp'],
    env: { OPENFIGI_API_KEY: process.env.OPENFIGI_API_KEY }
  }),
})

const tools = await mcpClient.tools()

const { text } = await generateText({
  model: anthropic('claude-sonnet-4-20250514'),
  tools,
  maxSteps: 5,
  prompt: 'Find the FIGI for Apple Inc using ISIN US0378331005',
})

await mcpClient.close()

Note: For AI SDK 5.x, use experimental_createMCPClient from 'ai' instead of createMCPClient from '@ai-sdk/mcp'.

Full MCP documentation →

# Development

#  Install dependencies
bun install

#  Build all packages
bun run build

#  Run all tests
bun run test

#  Type check
bun run typecheck

#  Lint
bun run lint

# Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

# # Development Workflow

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Make your changes and add tests
  4. Add a changeset: bun run changeset
  5. Commit and push
  6. Open a Pull Request

# # Release Process

This project uses Changesets for version management. When PRs with changesets are merged, a release PR is automatically created. Merging the release PR publishes to npm.

# License

MIT - see LICENSE

# Links

相关 MCP 服务