Skip to main content
Glama
lodetomasi

Portfolio Copilot

by lodetomasi

resolve_isins

Convert ISINs from broker exports into yfinance-style tickers using the free OpenFIGI API. Specify an exchange for accurate ticker mapping or search globally—unmatched ISINs return null, never a guessed ticker.

Instructions

Map ISINs to tickers via the free, keyless OpenFIGI mapping API (tier A, no signup): useful when a broker export identifies a holding only by ISIN and another tool (analyze_stock, map_holdings_to_targets) needs a yfinance-style ticker instead. A miss or an exchange OpenFIGI doesn't map to a known Yahoo suffix comes back as None for that ISIN -- never an invented ticker. OpenFIGI's anonymous rate limit (25 req/min) is respected internally; a persistent HTTP failure (e.g. 429) is raised as a ToolError rather than silently returning nothing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
isinsYes
exch_codeNoRestrict the OpenFIGI search to one exchange (e.g. 'MI' for Borsa Italiana, 'US' for US-listed) and, when known, also compose a yfinance-style ticker for it (providers.openfigi.EXCHANGE_TO_YF_SUFFIX). Omit to search all exchanges for the ISIN (no yf_ticker is composed without a specific exchange).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It discloses return behavior for misses, guarantees no invented tickers, states that the rate limit is respected, and specifies that persistent HTTP failures raise a ToolError rather than silently returning nothing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and remains readable despite packing in use context and failure behavior. Minor redundancy around 'free/keyless/tier A/no signup' keeps it from being maximally tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stateless mapping tool with no output schema, the description covers success behavior, miss behavior, rate limiting, and error handling. It could more explicitly state the concrete return structure, but the key invocation concerns are addressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only exch_code has a schema-level description, leaving isins under-documented. The description adds general mapping context but does not specify ISIN input format, list constraints, or the exact return container, so it only partially compensates for the 50% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The definition clearly states the tool maps ISINs to tickers via the OpenFIGI API and explains the broker-export use case. It frames the output as a yfinance-style ticker needed by downstream tools, distinguishing it from related portfolio tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit condition for use: when a broker export identifies a holding only by ISIN and another tool needs a ticker. It does not explicitly say when not to use this tool or name alternative ISIN-resolution options, so it has clear context but no exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lodetomasi/portfolio-copilot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server