{"openapi":"3.1.0","info":{"title":"Fleet Device Management (BYOK) API","version":"0.1.0","description":"Fleet Device Management (BYOK) lets an AI assistant read your own Fleet Device Management data through the Fleet Device Management API with a key you supply (Fleet API token (an API-only user with the observer role is enough)). Read-only: 10 tools (get_version, get_host_summary, list_hosts, count_hosts, get_host, list_labels, list_policies, list_software_titles, list_os_versions,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-fleetdm.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-fleetdm/docs"},"termsOfService":"https://connectorbay.com/byok-fleetdm/terms"},"servers":[{"url":"https://byok-fleetdm.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-fleetdm/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_version":{"post":{"operationId":"get_version","summary":"Show the Fleet server version, branch, revision and build date. Use for \"Which Fleet version is my server running\".","description":"Show the Fleet server version, branch, revision and build date. Use for \"Which Fleet version is my server running\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"}},"required":["org"],"title":"get_versionArguments","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_host_summary":{"post":{"operationId":"get_host_summary","summary":"Count hosts by status (online, offline, missing for 30 days, new) and by platform. Use for \"How many Fleet hosts are onl","description":"Count hosts by status (online, offline, missing for 30 days, new) and by platform. Use for \"How many Fleet hosts are online right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"platform":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only count hosts of this platform: darwin, windows, linux, chrome, ios, ipados or android.","title":"Platform"},"low_disk_space":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Also count hosts with less free disk space than this many GB (1 to 100). Fleet Premium.","title":"Low Disk Space"}},"required":["org"],"title":"get_host_summaryArguments","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_hosts":{"post":{"operationId":"list_hosts","summary":"List enrolled hosts with name, platform, OS version, status, hardware model, last seen time and disk space. Users, softw","description":"List enrolled hosts with name, platform, OS version, status, hardware model, last seen time and disk space. Users, software and policies are not requested. Use for \"Which Fleet hosts are offline\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Per Page"},"order_key":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Column to sort by (for example hostname or id). Needed for order_direction.","title":"Order Key"},"order_direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction, needs order_key.","title":"Order Direction"},"status":{"anyOf":[{"enum":["new","online","offline","mia","missing","enrolled"],"type":"string"},{"type":"null"}],"default":null,"description":"Host status filter.","title":"Status"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search text matched against hostname, serial number, UUID and IP address.","title":"Query"},"policy_id":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Only hosts for this policy id (use with policy_response).","title":"Policy Id"},"policy_response":{"anyOf":[{"enum":["passing","failing"],"type":"string"},{"type":"null"}],"default":null,"description":"With policy_id: passing or failing.","title":"Policy Response"}},"required":["org"],"title":"list_hostsArguments","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/count_hosts":{"post":{"operationId":"count_hosts","summary":"Count hosts matching a status, search text or label. Use for \"How many Fleet hosts match 'macbook'\".","description":"Count hosts matching a status, search text or label. Use for \"How many Fleet hosts match 'macbook'\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"status":{"anyOf":[{"enum":["new","online","offline","mia","missing","enrolled"],"type":"string"},{"type":"null"}],"default":null,"description":"Host status filter.","title":"Status"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search text matched against hostname, serial number, UUID and IP address.","title":"Query"}},"required":["org"],"title":"count_hostsArguments","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_host":{"post":{"operationId":"get_host","summary":"Get one host by id: platform, OS, hardware, status, last seen, disk space and network address. Users and software are no","description":"Get one host by id: platform, OS, hardware, status, last seen, disk space and network address. Users and software are not requested. Use for \"Show Fleet host 121\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"host_id":{"description":"Numeric host id from list_hosts.","minimum":1,"title":"Host Id","type":"integer"}},"required":["org","host_id"],"title":"get_hostArguments","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_labels":{"post":{"operationId":"list_labels","summary":"List host labels (built-in and custom) with name, description, membership type and host count. Use for \"Which labels do ","description":"List host labels (built-in and custom) with name, description, membership type and host count. Use for \"Which labels do my Fleet hosts have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"include_host_counts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":true,"description":"False to skip computing host counts (faster).","title":"Include Host Counts"}},"required":["org"],"title":"list_labelsArguments","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_policies":{"post":{"operationId":"list_policies","summary":"List global compliance policies with name, description, platform, criticality and passing and failing host counts. Polic","description":"List global compliance policies with name, description, platform, criticality and passing and failing host counts. Policy SQL and author contact are not returned. Use for \"Which Fleet policies are failing on the most hosts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Per Page"},"order_key":{"anyOf":[{"enum":["id","name","created_at","updated_at","failing_host_count"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort by id, name, created_at, updated_at or failing_host_count.","title":"Order Key"},"order_direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction, needs order_key.","title":"Order Direction"},"platform":{"anyOf":[{"enum":["darwin","windows","linux","chrome"],"type":"string"},{"type":"null"}],"default":null,"description":"Only policies for this platform: darwin, windows, linux or chrome.","title":"Platform"}},"required":["org"],"title":"list_policiesArguments","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_software_titles":{"post":{"operationId":"list_software_titles","summary":"List installed software titles with host counts and version counts; can show only vulnerable software. Use for \"Which so","description":"List installed software titles with host counts and version counts; can show only vulnerable software. Use for \"Which software with known vulnerabilities is installed on the most Fleet hosts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Per Page"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search text matched against software title and CVE.","title":"Query"},"vulnerable":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to list only software with detected vulnerabilities.","title":"Vulnerable"},"order_key":{"anyOf":[{"enum":["name","hosts_count"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort by name or hosts_count.","title":"Order Key"},"order_direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction, needs order_key.","title":"Order Direction"}},"required":["org"],"title":"list_software_titlesArguments","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_os_versions":{"post":{"operationId":"list_os_versions","summary":"List operating system versions in use with platform, host count and vulnerability count. Use for \"Which OS versions run ","description":"List operating system versions in use with platform, host count and vulnerability count. Use for \"Which OS versions run on my Fleet hosts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Per Page"},"platform":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only this platform: darwin, windows, linux, chrome, ios, ipados or android.","title":"Platform"},"max_vulnerabilities":{"anyOf":[{"maximum":50,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Limit the vulnerabilities returned per OS version (0 to 50).","title":"Max Vulnerabilities"}},"required":["org"],"title":"list_os_versionsArguments","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_vulnerabilities":{"post":{"operationId":"list_vulnerabilities","summary":"List detected vulnerabilities (CVEs) with the number of affected hosts and a link to details; CVSS score and exploit fla","description":"List detected vulnerabilities (CVEs) with the number of affected hosts and a link to details; CVSS score and exploit flags need Fleet Premium. Use for \"Which CVEs affect the most Fleet hosts\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"org":{"description":"Your Fleet Cloud name: the first part of the address you sign in at (acme for acme.cloud.fleetdm.com).","maxLength":200,"pattern":"^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$","title":"Org","type":"string"},"page":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Page number, starting at 0.","title":"Page"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":20,"description":"Results per page (1 to 100).","title":"Per Page"},"query":{"anyOf":[{"maxLength":60,"type":"string"},{"type":"null"}],"default":null,"description":"Search text matched against the CVE id.","title":"Query"},"order_key":{"anyOf":[{"enum":["cve","cvss_score","epss_probability","cve_published","created_at","host_count"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort by cve, cvss_score, epss_probability, cve_published, created_at or host_count.","title":"Order Key"},"order_direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort direction, needs order_key.","title":"Order Direction"}},"required":["org"],"title":"list_vulnerabilitiesArguments","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}}}}