io.github.viktorlarsson/openfigi

Official registry Maps, travel and weather

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

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package openfigi-mcp
Claude Code
claude mcp add openfigi -e 'OPENFIGI_API_KEY=<your openfigi_api_key>' -- npx -y openfigi-mcp@0.2.4
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "openfigi": {
            "command": "npx",
            "args": [
                "-y",
                "openfigi-mcp@0.2.4"
            ],
            "env": {
                "OPENFIGI_API_KEY": "<your openfigi_api_key>"
            }
        }
    }
}

Environment variables

  • OPENFIGI_API_KEY secret OpenFIGI API key (optional but recommended for higher rate limits)

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. OpenFIGI
  2. Packages
  3. openfigi-sdk
  4. openfigi-mcp
  5. Development
  6. Contributing
  7. License
  8. Links

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:

PackageVersionDescription
openfigi-sdkTypeScript SDK for the OpenFIGI API
openfigi-mcpMCP 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

Frequently asked questions

What is io.github.viktorlarsson/openfigi?

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

How do I install io.github.viktorlarsson/openfigi?

It runs on your machine. In Claude Code: claude mcp add openfigi -e 'OPENFIGI_API_KEY=<your openfigi_api_key>' -- npx -y openfigi-mcp@0.2.4. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.viktorlarsson/openfigi need an API key?

Yes. It expects OPENFIGI_API_KEY, which you set in its configuration.

Is io.github.viktorlarsson/openfigi open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.viktorlarsson/openfigi?

It is published by viktorlarsson. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.