# Search Federal Contract Vehicles

`Search_Federal_Contract_Vehicles` returns the top layer of GovTribe's federal contract hierarchy: master contract vehicles that group child IDVs and downstream task-order activity.

## When To Use

Typical questions this tool answers well:

* Which master vehicles match a vehicle name, acronym, topic, or solicitation thread?
* Which vehicle families (`Master IDIQ`, `Master GWAC`, `Master GSA Schedule`, `Master BPA`) are in scope for a market segment?
* Which vehicles are linked to a known federal meta opportunity or similar historic item?
* Which vehicles are associated with a specific funding agency or vendor?
* What are the award dates, last-date-to-order windows, and shared ceilings for matching vehicles?

## Required Reading

1. [Search\_Query\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/search_query_guide): Required before setting free-text query strings when search\_mode is used.
2. [Search\_Mode\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/search_mode_guide): Required before choosing keyword vs semantic retrieval.
3. [Date\_Filtering\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/date_filtering_guide): Required before setting date window filters.

## Input Contract

* `query`: Free-text query string. See Required Reading: [Search\_Query\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/search_query_guide).
  * `type`: `string`
  * `required`: `no`
  * `default`: `n/a`
* `page`: 1-based page index.
  * `type`: `null|number`
  * `required`: `no`
  * `default`: `1`
* `per_page`: Rows per page.
  * `type`: `null|number`
  * `required`: `no`
  * `default`: `10`
* `search_mode`: Query interpretation mode. See Required Reading: [Search\_Mode\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/search_mode_guide).
  * `type`: `string`
  * `required`: `no`
  * `default`: `keyword`
  * `options`: `keyword`, `semantic`
* `shared_ceiling_value_range`: Filter by the maximum shared contract value (shared ceiling).
  * `type`: `object`
  * `required`: `no`
  * `default`: `n/a`
  * `shape`: `{ min?: null|number, max?: null|number }`
* `award_date_range`: Filter by the date the award was issued. See Required Reading: [Date\_Filtering\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/date_filtering_guide).
  * `type`: `object`
  * `required`: `no`
  * `default`: `n/a`
  * `shape`: `{ from?: null|string, to?: null|string }`
* `last_date_to_order_range`: Filter by the last date to order. See Required Reading: [Date\_Filtering\_Guide](https://docs.govtribe.com/user-guide/mcp/guides/date_filtering_guide).
  * `type`: `object`
  * `required`: `no`
  * `default`: `n/a`
  * `shape`: `{ from?: null|string, to?: null|string }`
* `funding_federal_agency_ids`: Filter by funding federal agencies (who own the money). Use GovTribe IDs.
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
* `funding_federal_agency_ids_operator`: Choose whether to include or exclude values for Funding Federal Agency GovTribe IDs.
  * `type`: `null|string`
  * `required`: `no`
  * `default`: `in`
  * `options`: `in`, `not_in`
* `vendor_ids`: Filter by vendors. Use GovTribe IDs or vendor UEIs.
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
* `vendor_ids_operator`: Choose whether to include or exclude values for Vendor IDs (GovTribe or UEI).
  * `type`: `null|string`
  * `required`: `no`
  * `default`: `in`
  * `options`: `in`, `not_in`
* `federal_meta_opportunity_ids`: Filter by federal meta opportunity IDs. These are GovTribe-derived linking IDs from federal contract opportunities.
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
* `federal_meta_opportunity_ids_operator`: Choose whether to include or exclude values for Federal Meta Opportunity GovTribe IDs.
  * `type`: `null|string`
  * `required`: `no`
  * `default`: `in`
  * `options`: `in`, `not_in`
* `federal_contract_vehicle_types`: Filter by the type of federal contract vehicle (master contracts).
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
  * `options`: `Master IDIQ`, `Master BPA`, `Master GSA Schedule`, `Master GWAC`
* `federal_contract_vehicle_types_operator`: Choose whether to include or exclude values for Federal Contract Vehicle Types.
  * `type`: `null|string`
  * `required`: `no`
  * `default`: `in`
  * `options`: `in`, `not_in`
* `similar_filter`: Find similar to the provided govtribe\_type + govtribe\_id.
  * `type`: `null|object`
  * `required`: `no`
  * `default`: `n/a`
  * `shape`: `{ govtribe_type: string, govtribe_id: string }`
* `federal_contract_vehicle_ids`: Include or exclude results by GovTribe IDs.
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
* `federal_contract_vehicle_ids_operator`: Choose whether to include or exclude values for GovTribe IDs.
  * `type`: `null|string`
  * `required`: `no`
  * `default`: `in`
  * `options`: `in`, `not_in`
* `sort`: Sort configuration.
  * `type`: `object`
  * `required`: `no`
  * `default`: `n/a`
  * `shape`: `{ key?: null|string, direction?: null|string }`
  * `options`: `key`: `awardDate`, `lastDateToOrder`, `_score`; `direction`: `asc`, `desc`
* `fields_to_return`: Optional field list for row payloads. If omitted and `per_page > 0`, rows default to `govtribe_id`. For `per_page: 0` aggregation/meta calls, this field may be omitted. Specify `fields_to_return` whenever the user asks for fields beyond `govtribe_id`, and prefer omitting it in pure aggregation workflows.
  * `type`: `array<string>`
  * `required`: `no`
  * `default`: `n/a`
  * `options`: `govtribe_id`, `govtribe_ai_summary`, `govtribe_type`, `govtribe_url`, `award_date`, `contract_type`, `descriptions`, `last_date_to_order`, `name`, `set_aside_type`, `shared_ceiling`, `updated_at`, `originating_federal_contract_opportunity`, `federal_agency`, `federal_contract_awards`

## Output Contract

* Top-level keys:
  * `current_page`: Current page number when `per_page > 0`.
  * `data`: Array of result rows when `per_page > 0`.
  * `from`: First row position in the current page.
  * `last_page`: Last page number for current filters.
  * `path`: GovTribe search URL for this result set.
  * `per_page`: Applied page size.
  * `to`: Last row position in the current page.
  * `total`: Total matched row count for current query filters.
  * `contains`: Dataset label for the returned result set.
  * `search_results_id_can_generate_saved_search`: Saved-search eligibility flag.
  * `search_results_id`: Server-side search result identifier.
  * `view_search_results_url`: URL to open this exact result set.
* Row keys:
  * `govtribe_id`
  * `govtribe_ai_summary`
  * `govtribe_type`
  * `govtribe_url`
  * `award_date`
  * `contract_type`
  * `descriptions`
  * `last_date_to_order`
  * `name`
  * `set_aside_type`
  * `shared_ceiling`
  * `updated_at`
  * `originating_federal_contract_opportunity`
  * `federal_agency`
  * `federal_contract_awards`
* Relationship retrieval map:
  * `federal_agency`
    * `resource_type`: `federal_agency`
    * `tool`: `Search_Federal_Agencies`
    * `filter`: `federal_agency_ids`
    * `nested_keys`: `govtribe_id`, `govtribe_type`, `govtribe_url`, `name`
  * `federal_contract_awards`
    * `resource_type`: `federal_contract_award`
    * `tool`: `Search_Federal_Contract_Awards`
    * `filter`: `federal_contract_award_ids`
    * `nested_keys`: `govtribe_id`, `govtribe_type`, `govtribe_url`, `name`
  * `originating_federal_contract_opportunity`
    * `resource_type`: `federal_contract_opportunity`
    * `tool`: `Search_Federal_Contract_Opportunities`
    * `filter`: `federal_contract_opportunity_ids`
    * `nested_keys`: `govtribe_id`, `govtribe_type`, `govtribe_url`, `name`

## Usage Patterns

Pattern A: Locate a specific master vehicle by acronym/name. Tool: `Search_Federal_Contract_Vehicles`

```json
{
  "query": "\"OASIS\"",
  "search_mode": "keyword",
  "fields_to_return": [
    "govtribe_id"
  ],
  "page": 1,
  "per_page": 10,
  "sort": {
    "key": "awardDate",
    "direction": "desc"
  }
}
```

Pattern B: Vehicle-level incumbent signals for a known opportunity thread. Tool: `Search_Federal_Contract_Vehicles`

```json
{
  "query": "",
  "search_mode": "keyword",
  "fields_to_return": [
    "govtribe_id"
  ],
  "federal_meta_opportunity_ids": [
    "<FEDERAL_META_OPPORTUNITY_ID>"
  ],
  "federal_meta_opportunity_ids_operator": "in",
  "page": 1,
  "per_page": 25,
  "sort": {
    "key": "_score",
    "direction": "desc"
  }
}
```

Pattern C: Find vehicles similar to a known IDV. Tool: `Search_Federal_Contract_Vehicles`

```json
{
  "query": "",
  "search_mode": "semantic",
  "fields_to_return": [
    "govtribe_id"
  ],
  "similar_filter": {
    "govtribe_type": "federal_contract_idv",
    "govtribe_id": "<FEDERAL_CONTRACT_IDV_ID>"
  },
  "page": 1,
  "per_page": 20
}
```

Pattern D: Filter master vehicles by type and funding agency. Tool: `Search_Federal_Contract_Vehicles`

```json
{
  "query": "",
  "search_mode": "keyword",
  "fields_to_return": [
    "govtribe_id"
  ],
  "federal_contract_vehicle_types": [
    "Master GWAC",
    "Master IDIQ"
  ],
  "federal_contract_vehicle_types_operator": "in",
  "funding_federal_agency_ids": [
    "<FUNDING_FEDERAL_AGENCY_ID>"
  ],
  "funding_federal_agency_ids_operator": "in",
  "page": 1,
  "per_page": 50,
  "sort": {
    "key": "lastDateToOrder",
    "direction": "asc"
  }
}
```

Pattern E: Count-only scoping pass before row retrieval. Tool: `Search_Federal_Contract_Vehicles`

```json
{
  "query": "cloud modernization",
  "search_mode": "semantic",
  "federal_contract_vehicle_types": [
    "Master GWAC"
  ],
  "federal_contract_vehicle_types_operator": "in",
  "per_page": 0
}
```

Then rerun with `per_page > 0` and the same filters to fetch rows for analysis.
