govbid-mcp-server
Server Details
U.S. federal contract opportunities from SAM.gov. Daily updates. Public Domain.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- imgproc-git/govbid-mcp-server
- GitHub Stars
- 0
Available Tools
4 toolsget_api_infoAInspect
Get metadata about the GovBid Global API including version, data source, license information, and usage guidelines. Call this first to understand the service before making other tool calls.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full transparency burden. It clearly signals a read-only metadata operation and discloses the type of content returned. It does not detail response format or error behavior, but for a zero-parameter introspection tool these gaps are minor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The main purpose is front-loaded, and the usage instruction follows immediately. Every sentence contributes actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless API metadata endpoint, the description fully covers when to call it, what it returns, and why. The sibling tools are different enough that no additional disambiguation is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4 and no parameter documentation is required. The description appropriately focuses on output rather than inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') and resource ('GovBid Global API metadata'), and lists concrete fields it returns: version, data source, license, usage guidelines. The tool is clearly distinguished from siblings, which handle opportunity searches and details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs the agent to call this first before using other tools, which is strong timing/sequence guidance. This makes the intended role of the tool unambiguous even without naming sibling alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_opportunity_detailAInspect
Get the direct SAM.gov URL for a specific contract opportunity by its notice ID. Use this to provide users with a link to verify and view full details on SAM.gov.
| Name | Required | Description | Default |
|---|---|---|---|
| notice_id | Yes | The unique notice ID of the opportunity (from the 'id' field in search results) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It clearly communicates that the tool returns a direct SAM.gov URL for a specific notice, which is sufficient for this simple read-only operation. It does not overclaim or introduce ambiguity about side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is two compact sentences with no filler. The core function is stated first, followed by the user-facing purpose, making it easy to scan and immediately actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description fully covers what is needed: the input, the output (a direct SAM.gov URL), and the intended use. There are no missing details that would prevent an agent from invoking it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already thoroughly describes the only parameter, notice_id, including its origin from the 'id' field in search results. The description reinforces that the parameter identifies a specific opportunity but does not add meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Get the direct SAM.gov URL') and a clearly scoped resource ('a specific contract opportunity by its notice ID'). It is easy to distinguish from the search-focused sibling tool because it explicitly targets a single notice rather than a list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an explicit use case: provide users with a link to verify and view full details on SAM.gov. While it does not name the alternative tools or state when not to use it, the intended context is clear from the wording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_agentAInspect
Register this agent with the GovBid Global API and receive an API key. Call this once if you don't already have an api_key, before calling search_opportunities. No human interaction (e.g. CAPTCHA) is required — this endpoint is designed for autonomous AI agent self-registration. The returned api_key is shown only once, so store it for reuse.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | A contact email associated with this registration. One active key is allowed per email. | ||
| agent_name | Yes | A name identifying this agent or application (e.g. 'research-assistant-v2') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does well: it discloses autonomous-agent eligibility, absence of CAPTCHA, one-time visibility of the api_key, and the need to store it. These are exactly the behavioral facts an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences with a front-loaded purpose; each sentence contributes unique information: objective, when to call, human-interaction requirement, and key lifecycle. There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter registration call with no output schema, the description is complete: it states the required outcome (API key), the one-time visibility, reuse instruction, and prerequisite. The absent output schema is compensated by the clear description of the returned api_key.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers 100% of parameters, including semantic notes like 'one active key is allowed per email' and an agent_name max length. The description adds no parameter-specific detail, but the baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('register') with the resource ('this agent with the GovBid Global API') and the key outcome ('receive an API key'). This clearly separates it from the read-oriented sibling tools like search_opportunities and get_opportunity_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly scopes use to a one-time bootstrap: 'Call this once if you don't already have an api_key, before calling search_opportunities.' This gives both the precondition and the ordering, and implicitly says not to call when a key already exists.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_opportunitiesAInspect
Search U.S. federal government contract opportunities from SAM.gov. Returns recent procurement notices with title, department, deadline, and source URL. Data is updated daily. License: Public Domain (SAM.gov). Requires an api_key — call register_agent first if you don't have one.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | How many days back to search (1-365, default: 7) | |
| limit | No | Number of opportunities to return (1-100, default: 10) | |
| api_key | Yes | GovBid API key (X-API-Key). Required for authentication. If you don't have one, call register_agent first. | |
| department | No | Filter by agency/department name (partial match). Examples: 'DEFENSE', 'NAVY', 'ARMY', 'INTERIOR', 'HEALTH' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and provides useful behavioral context: data source (SAM.gov), daily update frequency, Public Domain license, and the specific fields returned. It does not mention rate limits or pagination, but for a read-only search tool the disclosure is reasonably complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no filler. The core action and resource are front-loaded, followed by return fields, data currency, licensing, and the authentication prerequisite. Every sentence contributes value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter tool with no output schema, the description covers the essential invocation requirements: what it searches, what it returns, data source and freshness, auth requirement, and registration path. It could be stronger by noting when to use get_opportunity_detail for full details, but the current information is sufficient for correct selection and use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter already having descriptive documentation. The description adds no additional parameter-level meaning beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb ('Search') and resource ('U.S. federal government contract opportunities from SAM.gov'), and enumerates the return fields (title, department, deadline, source URL). This clearly distinguishes it from siblings like get_opportunity_detail, which focuses on a single opportunity's details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite ('Requires an api_key — call register_agent first'), but does not explicitly explain when to choose search_opportunities over get_opportunity_detail or get_api_info. The usage context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
- Added
register_agent - Changed
search_opportunities1 field changed- changed
Input schema / properties / api_key / descriptionPrevious value: -"GovBid API key (X-API-Key). Required for authentication."New value: +"GovBid API key (X-API-Key). Required for authentication. If you don't have one, call register_agent first."
2 tool updates
- Changed
get_opportunity_detail1 field changed- added
Input schema / properties / notice_id / descriptionAdded value: +"The unique notice ID of the opportunity (from the 'id' field in search results)"
- Changed
search_opportunities4 fields changed- added
Input schema / properties / api_key / descriptionAdded value: +"GovBid API key (X-API-Key). Required for authentication." - added
Input schema / properties / days / descriptionAdded value: +"How many days back to search (1-365, default: 7)" - added
Input schema / properties / department / descriptionAdded value: +"Filter by agency/department name (partial match). Examples: 'DEFENSE', 'NAVY', 'ARMY', 'INTERIOR', 'HEALTH'" - added
Input schema / properties / limit / descriptionAdded value: +"Number of opportunities to return (1-100, default: 10)"
3 tool updates
- First observed
get_api_info - First observed
get_opportunity_detail - First observed
search_opportunities
Frequently Asked Questions
Claiming proves that you control a remote MCP connector. It does not move, proxy, or interrupt the server.
Open the connector listing, choose Claim ownership, and sign in to Glama.
Complete one verification method:
GitHub identity — fastest for official registry listings. For a namespace such as
io.github.alice/server, link the matching GitHub user, then choose Claim with GitHub. An organization namespace such asio.github.acme/serveralso needs that organization to have installed the Glama AI GitHub App and approved its permissions, because GitHub discloses organization membership only to apps it has installed. Use HTTP or DNS when it has not.HTTP challenge — works when you can deploy a public file. Generate a token, publish the exact JSON Glama shows at
/.well-known/glama.jsonon the same origin as the connector, then choose Check HTTP challenge.DNS challenge — works when you control DNS but cannot change the server. Generate a token, create the exact TXT record Glama shows, wait for it to propagate, then choose Check DNS challenge.
After verification, Glama sends a confirmation email and gives you access to listing details, thumbnails, health checks, and analytics. Keep the HTTP file or DNS record in place: Glama periodically checks it and ownership remains verified while the token is discoverable.
The HTTP ownership file has this structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"claim": "glama_claim_..."
}Claim tokens are opaque, stable, and bound to the signed-in Glama account. They contain no email address or other personal information. If Glama can no longer discover a verified HTTP or DNS token, it starts a seven-day grace period before removing claim-based access. Restore the same token during that period to keep ownership verified. Never publish an email address, Glama session token, GitHub token, or connector credential as ownership proof.
If verification fails, confirm that you copied the current token exactly. The HTTP file must be public, return valid JSON with a successful HTTP response, and stay on the connector's origin. DNS changes may need more time to propagate. A claim cannot transfer to a different origin or hostname: if the connector target changes, Glama starts the grace period and the new target must be claimed separately after the previous claim is released.
For a connector linked to the official MCP Registry, registry updates continue to replace its name, description, and URL by default. After claiming, open Manage connector and enable Use Glama listing details as the source of truth if edits made on Glama should be preserved. Categories and thumbnails are always managed on Glama; registry linkage and technical connection settings continue to sync.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
To improve your MCP server's ranking:
Claim ownership of the server listing
Complete the server profile with an accurate description and thumbnail
Provide a test profile so Glama can connect to and evaluate the server
Keep tool definitions clear and complete to earn a high Tool Definition Quality Score (TDQS)
Route real usage through the Glama Gateway; more recorded successful server uses also improve the ranking
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Connectors
Government contract search and federal procurement data: SAM.gov opportunities + USASpending awards.
US federal contracting data: open solicitations, buying agencies, contractors, price history.
Open & historical US government bid solicitations from city/county portals — updated daily
Federal contract intelligence: $7T+ awards, SAM.gov opps, pWin verdicts, recompetes, protests.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceOpen & historical US government bid solicitations from city/county portals — updated daily.16MIT
- AlicenseAqualityBmaintenanceSearch and analyze U.S. federal government contracts and opportunities from SAM.gov. Tools for keyword search, contract details, competitive analysis, and capability statement drafting — built for AI agents via x402 USDC micropayments.32MIT
- FlicenseNot gradedqualityDmaintenanceFederal procurement intelligence toolkit that searches SAM.gov contract opportunities, analyzes agency spending patterns, tracks competitor wins, and monitors small business set-aside programs (8a, HUBZone, SDVOSB, WOSB). 4 tools using SAM.gov and USASpending.gov data.3-
- AlicenseNot gradedqualityCmaintenanceSAM.gov MCP server providing federal contract opportunities and entity registration data, enabling AI agents to query U.S. government procurement information.171MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.
TDQS
Each tool has a distinct role—service metadata, agent registration, search, and direct-link lookup—but search_opportunities already returns source URLs, so get_opportunity_detail could initially seem redundant until its notice-ID-specific purpose is understood.
All four tool names follow a consistent verb_noun snake_case pattern: get_api_info, get_opportunity_detail, register_agent, and search_opportunities. This makes the tool set predictable and easy to navigate.
Four tools is well-scoped for this narrow SAM.gov contract-opportunity wrapper: metadata, agent registration, search, and detail-link retrieval. Each tool earns its place in the workflow without redundancy.
The core workflow is covered: register, search, and redirect to SAM.gov details. The only minor gap is that search returns 'recent' notices without obvious filtering or pagination controls, and get_opportunity_detail provides a URL rather than full structured opportunity data.