{"openapi":"3.1.0","info":{"title":"Fireworks AI (BYOK) API","version":"0.1.0","description":"Fireworks AI (BYOK) lets an AI assistant read your own Fireworks AI data through the Fireworks AI API with a key you supply (API key). Read-only: 9 tools (get_account, list_models, list_deployments, list_datasets, list_fine_tuning_jobs, list_batch_inference_jobs, list_quotas, get_serverless_costs, get_dedicated_costs). The BYOK key travels with each request, is used for that one call only and is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-fireworks.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-fireworks/docs"},"termsOfService":"https://connectorbay.com/byok-fireworks/terms"},"servers":[{"url":"https://byok-fireworks.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-fireworks/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_account":{"post":{"operationId":"get_account","summary":"Show a Fireworks account: display name, type, state and creation time. Use for \"What is the state of my Fireworks accoun","description":"Show a Fireworks account: display name, type, state and creation time. Use for \"What is the state of my Fireworks account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"}},"required":["account_id"],"title":"get_accountArguments","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/list_models":{"post":{"operationId":"list_models","summary":"List models in a Fireworks account (use account 'fireworks' for public models) with kind, context length, tool and image","description":"List models in a Fireworks account (use account 'fireworks' for public models) with kind, context length, tool and image support and state. Use for \"Which Fireworks models support tool calling and have a long context\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Optional filter expression in Google AIP-160 syntax, for example 'state=READY'.","title":"Filter"},"order_by":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated fields to order by; add ' desc' after a field for descending.","title":"Order By"}},"required":["account_id"],"title":"list_modelsArguments","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/list_deployments":{"post":{"operationId":"list_deployments","summary":"List dedicated deployments in a Fireworks account with base model, state, accelerator type and count, replica counts and","description":"List dedicated deployments in a Fireworks account with base model, state, accelerator type and count, replica counts and region. Use for \"Which of my Fireworks deployments are running and how many replicas do they have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Optional filter expression in Google AIP-160 syntax, for example 'state=READY'.","title":"Filter"},"order_by":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated fields to order by; add ' desc' after a field for descending.","title":"Order By"},"show_deleted":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include deleted deployments.","title":"Show Deleted"}},"required":["account_id"],"title":"list_deploymentsArguments","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/list_datasets":{"post":{"operationId":"list_datasets","summary":"List datasets in a Fireworks account with state, example count, format and creation time. Use for \"Which datasets have I","description":"List datasets in a Fireworks account with state, example count, format and creation time. Use for \"Which datasets have I uploaded to Fireworks\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Optional filter expression in Google AIP-160 syntax, for example 'state=READY'.","title":"Filter"},"order_by":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated fields to order by; add ' desc' after a field for descending.","title":"Order By"}},"required":["account_id"],"title":"list_datasetsArguments","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/list_fine_tuning_jobs":{"post":{"operationId":"list_fine_tuning_jobs","summary":"List supervised fine-tuning jobs in a Fireworks account with base model, output model, state, epochs and progress. Use f","description":"List supervised fine-tuning jobs in a Fireworks account with base model, output model, state, epochs and progress. Use for \"Which fine-tuning jobs have I run on Fireworks and are they done\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Optional filter expression in Google AIP-160 syntax, for example 'state=READY'.","title":"Filter"},"order_by":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated fields to order by; add ' desc' after a field for descending.","title":"Order By"}},"required":["account_id"],"title":"list_fine_tuning_jobsArguments","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/list_batch_inference_jobs":{"post":{"operationId":"list_batch_inference_jobs","summary":"List batch inference jobs in a Fireworks account with model, state, input and output datasets and progress. Use for \"Wha","description":"List batch inference jobs in a Fireworks account with model, state, input and output datasets and progress. Use for \"What is the progress of my Fireworks batch inference jobs\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"},"filter":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Optional filter expression in Google AIP-160 syntax, for example 'state=READY'.","title":"Filter"},"order_by":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated fields to order by; add ' desc' after a field for descending.","title":"Order By"}},"required":["account_id"],"title":"list_batch_inference_jobsArguments","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/list_quotas":{"post":{"operationId":"list_quotas","summary":"List the quotas of a Fireworks account with current value, maximum and usage. Use for \"How close am I to my Fireworks qu","description":"List the quotas of a Fireworks account with current value, maximum and usage. Use for \"How close am I to my Fireworks quotas\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"page_size":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"Items per page (default 50, values above 200 are treated as 200).","title":"Page Size"},"page_token":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the previous answer's nextPageToken to get the following page.","title":"Page Token"}},"required":["account_id"],"title":"list_quotasArguments","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_serverless_costs":{"post":{"operationId":"get_serverless_costs","summary":"Show serverless usage and cost per model in a Fireworks account for a time window of at most 31 days. Cost is in nano-US","description":"Show serverless usage and cost per model in a Fireworks account for a time window of at most 31 days. Cost is in nano-USD. Use for \"How much did I spend on Fireworks serverless models last week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"start_time":{"description":"Start of the window (inclusive), ISO 8601 UTC, for example 2026-10-01T00:00:00Z.","maxLength":200,"title":"Start Time","type":"string"},"end_time":{"description":"End of the window (exclusive), ISO 8601 UTC, at most 31 days after start_time.","maxLength":200,"title":"End Time","type":"string"},"usage_type":{"anyOf":[{"enum":["SERVERLESS","DEDICATED_DEPLOYMENT","TRAINING"],"type":"string"},{"type":"null"}],"default":null,"description":"Which usage to include.","title":"Usage Type"}},"required":["account_id","start_time","end_time"],"title":"get_serverless_costsArguments","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_dedicated_costs":{"post":{"operationId":"get_dedicated_costs","summary":"Show dedicated deployment usage per deployment in a Fireworks account for a time window of at most 31 days (accelerator ","description":"Show dedicated deployment usage per deployment in a Fireworks account for a time window of at most 31 days (accelerator seconds by type). Use for \"What did my Fireworks dedicated deployments use last week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Fireworks account id. Use 'fireworks' for the public model catalog, or your own account id for private resources.","maxLength":200,"title":"Account Id","type":"string"},"start_time":{"description":"Start of the window (inclusive), ISO 8601 UTC.","maxLength":200,"title":"Start Time","type":"string"},"end_time":{"description":"End of the window (exclusive), ISO 8601 UTC, at most 31 days after start_time.","maxLength":200,"title":"End Time","type":"string"}},"required":["account_id","start_time","end_time"],"title":"get_dedicated_costsArguments","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}}}}