Skip to main content
Glama

signaltender-mcp

Server Details

Official MCP server for SignalTender's B2B, GovCon & LegalTech microservices.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.5/5.0

Scored across 10 tools

Disambiguation4/5

Each tool targets a fairly distinct procurement action (parsing, risk audit, award search, solicitation streaming, compliance matrix, FAR/DFARS scanning, capability matching, classification, RFP drafting, pricing extraction). There is mild overlap between parse_b2b_contract and audit_contract_risks, and between scan_far_dfars_clauses and audit_contract_risks (both analyze contract risk/compliance), but descriptions differentiate scope well enough for correct selection.

Naming Consistency5/5

All ten tools follow a consistent snake_case verb_noun pattern (parse_b2b_contract, search_historical_awards, generate_compliance_matrix, etc.). The retrieval verbs vary (get/search) but the convention is uniform and highly predictable.

Tool Count5/5

Ten tools map cleanly to ten distinct API endpoints, each with a clear role in the procurement workflow. The count is well-scoped with no redundant or filler tools.

Completeness4/5

The surface covers the core bid lifecycle: discovery, parsing, historical benchmarking, capability matching, compliance matrix, risk/compliance scanning, classification, pricing extraction, and proposal drafting. Minor gaps exist around persisting/tracking drafted proposals and subcontractor or post-award management, but core workflows are complete.

Available Tools

10 tools
audit_contract_risksAInspect

API #02: Audit legal contracts (MSAs, NDAs, Subcontracts, SaaS agreements) for toxic clauses, score overall risk (0-100), and generate verbatim clause quotes with ready-to-paste fallback redline language.

ParametersJSON Schema
NameRequiredDescriptionDefault
raw_textYesFull or partial contract text to audit for legal and commercial risks.
party_perspectiveNoNegotiating perspective for redline generation ('vendor', 'buyer', or 'neutral').vendor

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations and no output schema, the description carries the full burden. It usefully discloses the return shape (risk score 0-100, verbatim quotes, paste-ready redlines) and that perspective drives redline generation, but says nothing about whether the operation is read-only, input length limits on raw_text, or any auth/rate considerations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One dense, front-loaded sentence that puts the action and resource first and the three outcomes after. The 'API #02:' prefix is catalog noise that earns no place in the definition, which is the only real defect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-parameter, no-output-schema tool the description covers what it produces (score, quotes, redlines) and the domain well. It could still state read-only semantics and input limits, but nothing essential to correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented in the schema, making 3 the baseline. The description adds marginal context by tying the redline/fallback output to the negotiating perspective, but adds no syntax, format, or size guidance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb (audit), a concrete resource with enumerated types (MSAs, NDAs, Subcontracts, SaaS agreements), and the three concrete outputs: toxic-clause detection, a 0-100 risk score, and verbatim quotes with fallback redlines. This is distinguishable from siblings like scan_far_dfars_clauses or parse_b2b_contract, which operate on different clause domains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: an agent can infer 'use this to audit a contract for risk,' but there is no explicit when-to-use vs. when-not guidance and no mention of the sibling tools it overlaps with (parse_b2b_contract, scan_far_dfars_clauses). No prerequisites or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

classify_naics_psc_nigpBInspect

API #08: Map any product description, SOW, or company profile to exact 6-digit NAICS, 4-digit SIC (for KYB/FinTech), Federal PSC, and State NIGP/UNSPSC commodity codes with SBA size standards.

ParametersJSON Schema
NameRequiredDescriptionDefault
context_typeNocompany_or_vendor_profile
description_textYesCompany profile, product description, or Statement of Work text.
max_secondary_codesNo

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden and falls short of it. It claims output systems and mentions SBA size standards, but says nothing about whether codes are deterministic or model-inferred, confidence/ambiguity handling, error behavior, or any auth/rate-limit constraints for something called "API #08."

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence that front-loads the action and lists the outputs in order of specificity; every clause carries information. The "API #08:" prefix is minor catalog numbering noise but costs little.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description tells the agent what code systems come back and that SBA size standards are included, which is useful. It still leaves the return shape, ranking of primary vs secondary codes, and the max_secondary_codes parameter unexplained for a 3-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 33%, so the description has to compensate. It partially does by enumerating the text inputs that correspond to context_type's enum values and description_text, but max_secondary_codes (and the whole notion of secondary codes in the output) is never mentioned in either the schema or the description, leaving one parameter and a key output behavior opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("Map") plus the exact resources produced: 6-digit NAICS, 4-digit SIC, Federal PSC, and State NIGP/UNSPSC codes, and names the accepted inputs (product description, SOW, company profile). No sibling tool does code classification, so it is immediately distinguishable from the contract/RFP-oriented siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the accepted input types ("any product description, SOW, or company profile") and the parenthetical "for KYB/FinTech" hints at a use case for SIC. However, there is no explicit when-to-use guidance, no prerequisites, and no mention of alternative tools for adjacent tasks.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

extract_pricing_scheduleAInspect

API #10: Extract multi-tier CLIN/SLIN pricing tables, GSA/T&M labor rate cards, and BOM spreadsheets from unstructured vendor quotes or Section B schedules into normalized JSON with line-by-line math verification.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_textYesRaw text or table content from a vendor quote, invoice, or Federal Section B CLIN schedule.
expected_document_typeNoauto_detect
audit_math_and_anomaliesNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden. It usefully discloses the return shape ('normalized JSON') and a notable behavior ('line-by-line math verification'), but omits read-only vs. mutation semantics, size/length limits on document_text, and failure modes for unparseable documents.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that is information-dense and wastes little. The 'API #10:' prefix is a non-functional label that consumes tokens without helping selection or invocation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 3-param extraction tool with no annotations and no output schema, the description covers the input types, the normalization/verification behavior, and the return format. Missing details on the two undocumented parameters and handling of malformed input keep it short of full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 33% (only document_text is documented), so the description must compensate. It partially does by implicitly mapping to the expected_document_type enum values (CLIN/SLIN schedule, GSA/T&M rate card, BOM), but never explains expected_document_type or audit_math_and_anomalies directly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (extract) and resource (multi-tier CLIN/SLIN pricing tables, labor rate cards, BOM spreadsheets) and names the concrete outputs, so an agent can distinguish it from siblings like parse_b2b_contract or generate_compliance_matrix without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The input domain is clear ('from unstructured vendor quotes or Section B schedules'), which implies when to use it. However it offers no explicit exclusions or named alternatives, and the pricing-extraction overlap with sibling parse_b2b_contract is left unaddressed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_compliance_matrixAInspect

API #05: Parse raw RFP Section C/L/M or SOW text into a Shipley-aligned shall/must Compliance Matrix, Section L-to-M cross-reference map, and hierarchical Proposal Outline with page allocations.

ParametersJSON Schema
NameRequiredDescriptionDefault
raw_textYesRaw RFP Section C (SOW), Section L (Instructions), and/or Section M (Evaluation Criteria) text.
proposal_methodologyNoshipley

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It helpfully discloses the transformation outputs (matrix, cross-reference map, outline with page allocations), but says nothing about permissions, idempotency, size limits, or formatting of the result, leaving meaningful gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that puts the input and the three outputs up front with no wasted prose. The 'API #05:' prefix is noise that adds nothing for an agent, slightly detracting from an otherwise tight statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully compensates by enumerating the three returned artifacts. For a simple two-parameter (one required) tool this is close to complete, though it omits behavioral details such as how the raw text is handled and any input constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%: raw_text is documented in the schema while proposal_methodology has an enum of three values with only a default and no description. The description references 'Shipley-aligned' output, hinting at the default methodology, but never explains the federal_standard or commercial_agile alternatives.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Parse) and resource (raw RFP Section C/L/M or SOW text) and enumerates the three concrete outputs (Compliance Matrix, Section L-to-M cross-reference map, Proposal Outline). An agent can tell what it produces without opening the schema, though it never names or contrasts a sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the tool is for when you have raw RFP/SOW text and need a compliance matrix. There is no explicit when-to-use, when-not-to-use, or routing guidance against siblings like generate_rfp_response or parse_b2b_contract that also handle RFP-style input.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_rfp_responseCInspect

API #09: Draft an evaluator-ready Shipley Technical Proposal Section (with Win Themes, Proof Points, and Risk Mitigations) AND generate strategic Vendor Clarification Q&A questions.

ParametersJSON Schema
NameRequiredDescriptionDefault
rfp_section_textYesRFP Section C/L/M requirements to respond to.
target_section_typeNotechnical_approach
tone_and_methodologyNoShipley Proposal Methodology (Active Voice, Evaluator-First, Feature-Benefit-Proof)
company_context_and_capabilitiesYesBidder's technical capabilities, past performance metrics, and differentiators.

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses the composite nature of the operation (proposal section plus Q&A) and the artifacts produced (Win Themes, Proof Points, Risk Mitigations), which is useful, but says nothing about permissions, cost/rate limits, output format, or that it is a two-headed operation the caller cannot split.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the verb and compact, but the single run-on sentence crams two distinct operations together with ALL-CAPS asides and an unnecessary 'API #09' tag. Structure is passable rather than clean.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description should have said more, yet it partially covers returns by listing the artifacts produced. It still leaves parameter behavior and usage conditions undocumented, so it is not sufficient for a 4-parameter generative tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 50%, so the description needed to compensate and does not. It never explains target_section_type, the tone_and_methodology default, or how rfp_section_text relates to the generated content; the Shipley reference only tangentially echoes the methodology default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete verb+resource: drafting a Shipley Technical Proposal Section and generating Vendor Clarification Q&A. It implicitly separates this generative tool from its extract/classify/scan siblings, but never names an alternative explicitly. The 'API #09' prefix is noise that adds nothing to purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use, when-not-to-use, or prerequisite guidance is given. The description says what it produces but not the conditions under which an agent should choose it over generate_compliance_matrix or the other sibling tools. Usage must be inferred entirely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_live_solicitationsBInspect

API #04: Stream live, AI-vetted open Federal (SAM.gov) and State/Local SLED (VA, TX, CA, FL, MD, DemandStar) IT, Cloud, and Cybersecurity RFPs from SignalTender's 7-portal procurement database.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax number of open solicitations to return (1-50).
stateNoOptional jurisdiction filter ('federal', 'virginia', 'texas', 'california', 'florida', 'maryland', 'municipal').
keywordNoOptional search keyword in solicitation title or agency.
categoryNoOptional IT vertical filter ('cybersecurity', 'cloud-infrastructure', 'software-development', 'network-telecom').

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It adds useful behavioral context: the data is live, AI-vetted, open, and sourced from a 7-portal database across specific jurisdictions. However, it omits read-only status, authentication needs, rate limits, and return format details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is a single sentence with the core purpose front-loaded. The 'API #04:' prefix adds little value, and the parenthetical enumerations are dense, but the description remains appropriately sized and readable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given a simple 4-parameter retrieval tool with no annotations and no output schema, the description covers the data domain and sources adequately. It does not explain return values, authentication, or usage context, leaving some gaps for an agent invoking it without structured metadata.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four optional parameters (limit, state, keyword, category). The description adds no parameter-level meaning beyond the schema, which is the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Stream') and resource ('live, AI-vetted open Federal ... and State/Local ... IT, Cloud, and Cybersecurity RFPs'), making the tool's function clear. It implies a distinction from historical award search, but does not explicitly name a sibling tool to route against.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use, when-not-to-use, or alternative-tool guidance is provided. The live/open framing implies retrieval of current opportunities, but the agent is left to infer when to call this versus search_historical_awards or other siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

match_capability_statementAInspect

API #07: Compare an RFP against a company's Capability Statement & Past Performance to calculate a 0-100 Pwin (Probability of Win) Score, Bid/No-Bid decision, gap analysis, and tailored executive pitch.

ParametersJSON Schema
NameRequiredDescriptionDefault
rfp_textYesSolicitation scope, mandatory qualifications, set-aside, and evaluation criteria.
target_pursuit_roleNoeither_prime_or_sub
company_capability_statementYesVendor capability statement, socioeconomic certs, clearances, and past performance.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It does disclose the deliverables (a 0-100 Pwin score, Bid/No-Bid decision, gap analysis, executive pitch), which is useful given there is no output schema, but says nothing about processing cost, latency, determinism, or any prerequisites for a likely heavyweight analysis call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that packs the operation and all four deliverables with no filler. The only waste is the 'API #07:' catalog prefix, which carries no decision-relevant information for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully enumerates what the tool returns, and the two required inputs are covered by the schema. It is largely complete, with only minor gaps around how the score should be interpreted and any expected runtime.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 67%, with the two required string inputs documented in the schema and the enum parameter (target_pursuit_role) undocumented anywhere. The description adds no meaning beyond the schema — no guidance on what to include in rfp_text or how the role selection changes scoring — so a baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb (Compare) with two named resources (RFP, Capability Statement/Past Performance) and enumerates the outputs (Pwin score, Bid/No-Bid, gap analysis, pitch). It is clearly distinct from siblings like generate_rfp_response or generate_compliance_matrix, though it does not name any sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the compare-an-RFP-to-a-capability-statement framing, but there is no explicit when-to-use, when-not, or routing against alternatives such as generate_rfp_response. An agent can infer the intent but gets no boundary conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

parse_b2b_contractAInspect

API #01: Extract structured JSON (party names, effective/termination dates, total contract value, payment terms, deliverables, and governing law) from unstructured B2B contracts, SOWs, or RFPs.

ParametersJSON Schema
NameRequiredDescriptionDefault
raw_textYesRaw unstructured text from a contract, Statement of Work (SOW), or RFP (min 50 chars).
document_type_hintNoOptional document type hint (e.g., 'RFP', 'MSA', 'SOW').

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations and no output schema, the description carries the full behavioral burden; it partially discharges this by listing the JSON fields returned. It says nothing about determinism, latency, permissions, failure modes on low-quality input, or how the 'API #01' label affects behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that leads with the verb and then the payload; the parenthetical field list is long but informative. The 'API #01:' prefix is internal noise that occupies the highest-attention position.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter extractor with no output schema, listing the returned fields is the key compensating information and it is present; parameters are fully covered by the schema. What is missing is routing guidance relative to the many sibling extraction/analysis tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both raw_text and document_type_hint are already documented in the schema. The description adds no format, size, or hint-value guidance beyond what the schema provides, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Extract) and resource (B2B contracts, SOWs, RFPs) and enumerates the exact fields returned, so the agent knows this is a broad contract-field extraction rather than a narrow one like extract_pricing_schedule. It never names a sibling explicitly, so the differentiation is left to inference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by naming the input sources (unstructured contracts/SOWs/RFPs), but it gives no when-to-use vs. when-not guidance and never points the agent toward audit_contract_risks, extract_pricing_schedule, or the other sibling extractors for narrower needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_far_dfars_clausesCInspect

API #06: Detect FAR (52.2xx) and DFARS (252.2xx) regulatory clauses in a solicitation, flag mandatory subcontractor flow-downs, and score CMMC 2.0 / NIST 800-171 / FedRAMP compliance burden.

ParametersJSON Schema
NameRequiredDescriptionDefault
raw_textYesSolicitation Section I or subcontract flow-down text containing FAR/DFARS citations.
contractor_roleNoprime_contractor

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that the tool performs detection, flagging, and scoring, which is useful behavioral context, but it does not state whether it is read-only, what permissions are needed, or how the scores are formatted or interpreted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficiently packed sentence, but it opens with 'API #06:' which is internal noise that does not help an agent select or invoke the tool. The remaining content is front-loaded with action verbs, but the prefix reduces overall conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, so the description should explain return values and scoring details, but it does not. It also omits any explanation of the contractor_role parameter, leaving important gaps for an agent that must interpret the output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%: raw_text is described, but contractor_role has an enum and default with no description in either schema or description. The description does not mention contractor_role at all, so the missing parameter semantics are not compensated for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names specific actions (detect FAR/DFARS clauses, flag flow-downs, score compliance burden) and the resource (solicitation). It is clear what the tool does, but it does not explicitly distinguish itself from sibling tools like audit_contract_risks or generate_compliance_matrix.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage only by mentioning 'in a solicitation' and does not state when to use this tool versus alternatives. There are no exclusions, prerequisites, or routing guidance to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_historical_awardsBInspect

API #03: Query historical federal contract awards, incumbent prime contractors, award ceilings, and CLIN pricing benchmarks by keyword, NAICS code, or agency.

ParametersJSON Schema
NameRequiredDescriptionDefault
agencyNoOptional agency name filter.
keywordsYesSearch keywords (e.g., 'zero trust', 'cloud migration', 'SIEM').
naics_codeNoOptional 6-digit NAICS code filter (e.g., '541512').

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. 'Query' implies a read, but the description does not state read-only safety, permissions, rate limits, or whether results are paginated; only the listed data categories hint at return content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single front-loaded sentence with no fluff. The 'API #03:' prefix adds no semantic value for an agent and is mildly distracting, but the sentence itself earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with fully documented params, the description covers the domain and result categories. However, with no annotations or output schema, it omits behavioral context (read-only, pagination) and any when-to-use guidance, leaving clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters with examples. The description merely restates the same filters and adds no syntax or format detail beyond the schema; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Query') and resource ('historical federal contract awards'), and enumerates the data types returned. The 'historical' qualifier distinguishes it from live-solicitation siblings, and the focus on awards distinguishes it from risk/compliance siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no alternatives, no prerequisites. It only says how to filter (keyword/NAICS/agency), which is parameter usage, not selection guidance.

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.

  1. 10 tool updates
    • First observedaudit_contract_risks
    • First observedclassify_naics_psc_nigp
    • First observedextract_pricing_schedule
    • First observedgenerate_compliance_matrix
    • First observedgenerate_rfp_response
    • First observedget_live_solicitations
    • First observedmatch_capability_statement
    • First observedparse_b2b_contract
    • First observedscan_far_dfars_clauses
    • First observedsearch_historical_awards

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources