openfigi
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.
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 | | TypeScript SDK for the OpenFIGI API |
| openfigi-mcp | | 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')
# 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_createMCPClientfrom'ai'instead ofcreateMCPClientfrom'@ai-sdk/mcp'.
# 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
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Make your changes and add tests
- Add a changeset:
bun run changeset - Commit and push
- 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