Skip to main content
Glama

Search

search
Read-onlyIdempotent

Identify a specific financial instrument by name and get its FIGI — municipal bonds ("munis"), corporate and government bonds, equities, funds and futures. For a municipal bond, pass the issuer as it appears on the bond ("CALIFORNIA ST", "NEW YORK ST DORM AUTH") with marketSecDes "Muni": each result returns a FIGI plus a ticker carrying the coupon and maturity, e.g. "CA CAS 4.5 06/01/2013", which is what identifies one bond among an issuer's many. Answers "which bond is this", "find the FIGI for this issuer's bonds", "what municipal bonds has California issued under this name". Returns identifiers only — no price, no yield, and no reported trade data.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesInstrument or issuer name as written on the security, e.g. "Apple Inc", "CALIFORNIA ST", "NEW YORK ST DORM AUTH".
currencyNoCurrency filter, e.g. "USD".
exchCodeNoExchange code, e.g. "US". Municipal bonds have no exchange — leave this off for munis.
marketSecDesNoMarket sector. Pass "Muni" to restrict to municipal bonds; other values include "Corp", "Equity", "Govt", "Comdty".
securityTypeNoSecurity type, e.g. "FIXED" for a fixed-rate bond.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryNoThe search query string
resultNoArray of matching instruments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / examples
      Previous value: -[
      -  {
      -    "query": "Apple Inc"
      -  },
      -  {
      -    "currency": "USD",
      -    "exchCode": "US",
      -    "query": "Treasury Bond",
      -    "securityType": "Bond"
      -  }
      -]New value: +[
      +  {
      +    "query": "Apple Inc"
      +  },
      +  {
      +    "marketSecDes": "Muni",
      +    "query": "CALIFORNIA ST"
      +  },
      +  {
      +    "currency": "USD",
      +    "exchCode": "US",
      +    "query": "Treasury Bond",
      +    "securityType": "Bond"
      +  }
      +]
    • addedInput schema / properties / currency / description
      Added value: +"Currency filter, e.g. \"USD\"."
    • addedInput schema / properties / exchCode / description
      Added value: +"Exchange code, e.g. \"US\". Municipal bonds have no exchange — leave this off for munis."
    • addedInput schema / properties / marketSecDes / description
      Added value: +"Market sector. Pass \"Muni\" to restrict to municipal bonds; other values include \"Corp\", \"Equity\", \"Govt\", \"Comdty\"."
    • addedInput schema / properties / query / description
      Added value: +"Instrument or issuer name as written on the security, e.g. \"Apple Inc\", \"CALIFORNIA ST\", \"NEW YORK ST DORM AUTH\"."
    • addedInput schema / properties / securityType / description
      Added value: +"Security type, e.g. \"FIXED\" for a fixed-rate bond."
  2. Changed2 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "query": "Apple Inc"
      +  },
      +  {
      +    "currency": "USD",
      +    "exchCode": "US",
      +    "query": "Treasury Bond",
      +    "securityType": "Bond"
      +  }
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "query": {
      +      "description": "The search query string",
      +      "type": "string"
      +    },
      +    "result": {
      +      "description": "Array of matching instruments",
      +      "items": {
      +        "description": "Instrument record with FIGI, name, and metadata",
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already mark the tool as read-only and idempotent, so the description carries less burden, but it still adds valuable non-obvious behavior: each muni result returns a FIGI plus a ticker encoding coupon and maturity, and the tool returns no prices, yields, or trade data. This goes beyond what annotations or schema alone convey.

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

Conciseness5/5

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

The description is dense but efficient: purpose, muni-specific exception, answer-style usage examples, and output boundaries each get exactly the sentences they need. There is no filler or repetition of schema content.

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

Completeness5/5

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

It covers the output format, the muni nuance, and clear non-goals, with annotations and output schema covering safety and return structure. The only minor omission is not addressing multiple-match behavior, but the examples and muni guidance make the tool callable without that.

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

Parameters5/5

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

Although schema coverage is 100%, the description adds substantial meaning beyond the property descriptions: it explains how to phrase the query as written on the security, why exchCode should be omitted for munis, and how the returned ticker encodes coupon and maturity. This materially improves correct invocation.

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 description states the tool's exact job—identifying a specific financial instrument by name and returning its FIGI—while scoping the resource types (munis, corporate/government bonds, equities, funds, futures). It also distinguishes itself from generic search tools by explicitly saying it returns identifiers only, not price, yield, or trade data.

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 concrete invocation patterns and examples, including the crucial muni case: pass the issuer as written and marketSecDes 'Muni', with exchCode omitted. It implies boundaries by stating what it does not return, but it does not explicitly name sibling tools like search_within as alternatives or say when not to use this tool.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.