{"openapi":"3.1.0","info":{"title":"Metals.Dev (BYOK) API","version":"0.1.0","description":"Metals.Dev (BYOK) lets an AI assistant read your own Metals.Dev data through the Metals.Dev API with a key you supply (Metals.Dev API key). Read-only: 6 tools (get_latest_prices, get_metal_spot, get_authority_prices, get_currency_rates, get_metal_timeseries, get_usage). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is only ever...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-metalsdev.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-metalsdev/docs"},"termsOfService":"https://connectorbay.com/byok-metalsdev/terms"},"servers":[{"url":"https://byok-metalsdev.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-metalsdev/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_latest_prices":{"post":{"operationId":"get_latest_prices","summary":"Get the latest spot prices of precious and industrial metals (including LBMA, MCX, IBJA and LME benchmark series) in a c","description":"Get the latest spot prices of precious and industrial metals (including LBMA, MCX, IBJA and LME benchmark series) in a chosen currency and unit, delayed by at most 60 seconds. Use for \"What is the gold, silver and copper price right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"currency":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Currency code the prices are quoted in, for example 'EUR' (default USD).","title":"Currency"},"unit":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Weight unit for metal prices, for example toz (troy ounce, the default for precious metals), g, kg or mt (metric tonne, the default for industrial metals).","title":"Unit"}},"title":"get_latest_pricesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_metal_spot":{"post":{"operationId":"get_metal_spot","summary":"Get the spot price, bid, ask, day high and low, and the change versus the previous market day for one metal. Use for \"Wh","description":"Get the spot price, bid, ask, day high and low, and the change versus the previous market day for one metal. Use for \"What is the current gold bid and ask price\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"metal":{"description":"Metal code: gold, silver, platinum, palladium, aluminum, copper, nickel, lead or zinc.","enum":["gold","silver","platinum","palladium","aluminum","copper","nickel","lead","zinc"],"title":"Metal","type":"string"},"currency":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Currency code the prices are quoted in, for example 'EUR' (default USD).","title":"Currency"}},"required":["metal"],"title":"get_metal_spotArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_authority_prices":{"post":{"operationId":"get_authority_prices","summary":"Get the benchmark prices published by one authority or exchange: LBMA, LME, MCX (India) or IBJA (India). Use for \"What a","description":"Get the benchmark prices published by one authority or exchange: LBMA, LME, MCX (India) or IBJA (India). Use for \"What are the latest LBMA gold fixes\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"authority":{"description":"Authority code: lbma, lme, mcx or ibja.","enum":["lbma","lme","mcx","ibja"],"title":"Authority","type":"string"},"currency":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Currency code the prices are quoted in, for example 'EUR' (default USD).","title":"Currency"},"unit":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Weight unit for metal prices, for example toz (troy ounce, the default for precious metals), g, kg or mt (metric tonne, the default for industrial metals).","title":"Unit"}},"required":["authority"],"title":"get_authority_pricesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_currency_rates":{"post":{"operationId":"get_currency_rates","summary":"Get current rates for the 170+ supported currencies, relative to a base currency (default USD). Use for \"What are the cu","description":"Get current rates for the 170+ supported currencies, relative to a base currency (default USD). Use for \"What are the current exchange rates against the euro\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"base":{"anyOf":[{"maxLength":3,"type":"string"},{"type":"null"}],"default":null,"description":"Base currency code, for example 'EUR' (default USD).","title":"Base"}},"title":"get_currency_ratesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_metal_timeseries":{"post":{"operationId":"get_metal_timeseries","summary":"Get daily historical metal prices (gold, silver, platinum, palladium in USD per troy ounce) and currency rates between t","description":"Get daily historical metal prices (gold, silver, platinum, palladium in USD per troy ounce) and currency rates between two dates, at most 30 days per call. Use for \"How did gold and silver move during the first ten days of January 2023\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"start_date":{"description":"First day, YYYY-MM-DD.","maxLength":10,"title":"Start Date","type":"string"},"end_date":{"description":"Last day, YYYY-MM-DD; at most 30 days after the start.","maxLength":10,"title":"End Date","type":"string"}},"required":["start_date","end_date"],"title":"get_metal_timeseriesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_usage":{"post":{"operationId":"get_usage","summary":"Show the plan, monthly request quota, requests used and remaining for the API key. Use for \"How many Metals.Dev requests","description":"Show the plan, monthly request quota, requests used and remaining for the API key. Use for \"How many Metals.Dev requests do I have left this month\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_usageArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}