PubSec Radar MCP
A community MCP server providing federal sales intelligence, including expiring contract triggers, agency spend profiles, incumbent lookup, and deal qualification tools sourced from USAspending and FPDS data.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://pubsec-sales-mcp.kabrawala.workers.dev/mcpWhat its tools do
5 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Find expiring contracts to identify sales triggers
- Analyze agency spend profiles and trends
- Lookup incumbents to plan displacement strategies
- Generate discovery questions for public sector meetings
Source and maintenance
Protocol and capabilities
- Server
- pubsec-sales 0.1.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 5 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Tools
5 advertised
find_expiring_contracts — Find expiring federal contracts
Use this when prospecting or prepping a federal account and you want sales triggers: contracts at an agency that end soon, with the incumbent vendor, dollar values, and contracting office. Expiring contracts mean upcoming recompetes — the best time to displace an incumbent. Good queries name one agency and optionally a NAICS code, e.g. agency="DHS", naics_code="541512", window_days=90. Federal only (no state/local). Every response includes data-freshness and coverage caveats — read them; no data ≠ no spend.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency"
],
"properties": {
"limit": {
"type": "integer",
"default": 15,
"maximum": 25,
"minimum": 1,
"description": "Max contracts to return (top by obligated amount). Default 15."
},
"agency": {
"type": "string",
"description": "Federal agency name, acronym, or code — e.g. \"DHS\", \"Department of Defense\", \"070\". Federal only; SLED is out of scope."
},
"naics_code": {
"type": "string",
"pattern": "^\\d{2,6}$",
"description": "Optional NAICS code to narrow by category, e.g. \"541512\" (computer systems design)."
},
"window_days": {
"type": "integer",
"default": 90,
"maximum": 365,
"minimum": 1,
"description": "How far ahead to look for contract end dates, in days from today. Default 90, max 365."
}
}
}agency_spend_profile — Profile a federal agency's contract spending
Use this to answer "what does this agency actually buy, and from whom?" before a first call: total contract obligations, 3-year trend, top 10 vendors, and top 10 NAICS categories for the latest fiscal year with published data. Good queries name one agency, e.g. agency="HHS". Figures come from a daily snapshot of USAspending (latest published fiscal year plus a 3-year trend); the fiscal year and freshness are stated in the response. Federal only. Read the coverage caveats — in-progress fiscal years are partial, and intel-agency spend is never published.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency"
],
"properties": {
"agency": {
"type": "string",
"description": "Federal agency name, acronym, or code — e.g. \"HHS\", \"Department of Veterans Affairs\", \"075\"."
}
}
}incumbent_lookup — Look up an incumbent vendor's federal contracts
Use this to answer "who am I displacing and when?": a vendor name (plus optional agency scope) returns their current and recent awards with values and end dates, flagging awards that end within 12 months as displacement windows. Good queries use the vendor's registered name or a distinctive fragment, e.g. vendor="Booz Allen", agency="DHS". Federal only. Zero results ≠ no presence — check the caveats for name-matching tips.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"vendor"
],
"properties": {
"limit": {
"type": "integer",
"default": 15,
"maximum": 25,
"minimum": 1,
"description": "Max awards to return (largest first). Default 15."
},
"agency": {
"type": "string",
"description": "Optional federal agency to scope the lookup, e.g. \"DHS\". Omit to search government-wide."
},
"vendor": {
"type": "string",
"minLength": 2,
"description": "Vendor/incumbent name as registered in federal awards, e.g. \"Booz Allen Hamilton\", \"CACI\". FPDS matches it as a phrase — shorter fragments match more."
}
}
}generate_discovery_questions — Generate public-sector discovery questions
Use this when prepping a meeting with a federal agency: it returns discovery questions tuned to public-sector selling (fiscal-year timing, contract vehicles, FedRAMP/ATO, incumbents), grounded in the agency's live spending data where possible — each data-backed question cites the number that motivated it with a source URL. Good queries name the agency, what you sell, and the meeting type, e.g. agency="DHS", product_category="zero-trust network security", meeting_context="first_call". Add naics_code to surface expiring-contract questions.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency",
"product_category"
],
"properties": {
"agency": {
"type": "string",
"description": "Federal agency the meeting is with — name, acronym, or code, e.g. \"DHS\"."
},
"naics_code": {
"type": "string",
"pattern": "^\\d{2,6}$",
"description": "Optional NAICS code for your category — adds questions about specific expiring contracts."
},
"meeting_context": {
"enum": [
"first_call",
"technical_deep_dive",
"procurement_discussion"
],
"type": "string",
"default": "first_call",
"description": "What kind of meeting you are prepping for."
},
"product_category": {
"type": "string",
"minLength": 3,
"description": "What you sell, in plain words — e.g. \"data analytics platform\", \"zero-trust network security\"."
}
}
}qualify_opportunity — Qualify a federal opportunity (public-sector MEDDPICC)
Use this to pressure-test a federal deal: pass what you know per MEDDPICC dimension (leave unknowns empty) and get back an evidence-scored scorecard adapted for public sector — budget authority instead of generic economic buyer, procurement vehicle as the paper process — with gap-closing questions and public-record evidence pulled automatically (name the incumbent_vendor and their real awards/end dates at the agency get attached). Scores measure evidence specificity, not truth; the response says what verified evidence looks like for each dimension.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"agency",
"product_category"
],
"properties": {
"agency": {
"type": "string",
"description": "Federal agency the deal is at — name, acronym, or code, e.g. \"DHS\"."
},
"deal_facts": {
"type": "object",
"properties": {
"metrics": {
"type": "string",
"description": "Quantified mission outcome the buyer expects (their numbers, not your pitch)."
},
"champion": {
"type": "string",
"description": "Who sells for you internally — name, role, what they've done for you so far."
},
"competition": {
"type": "string",
"description": "Who else is in — incumbent, other bidders, or internal do-nothing option."
},
"paper_process": {
"type": "string",
"description": "Procurement path — vehicle, contract type, contracting office, ceiling."
},
"economic_buyer": {
"type": "string",
"description": "Who has budget/obligation authority — name, role, what they've said."
},
"identified_pain": {
"type": "string",
"description": "The forcing function — mandate, audit finding, incident, failed program."
},
"decision_process": {
"type": "string",
"description": "Steps and dates to award — RFI, evaluation, decision milestones."
},
"decision_criteria": {
"type": "string",
"description": "How they'll evaluate — technical factors, past performance, price weighting."
}
},
"description": "What you know so far, one field per MEDDPICC dimension. Omit entirely (or leave fields empty) for pure-discovery scoring — gaps are the output."
},
"incumbent_vendor": {
"type": "string",
"description": "Competitor/incumbent vendor name if known — their real awards at this agency get pulled as evidence."
},
"product_category": {
"type": "string",
"minLength": 3,
"description": "What you are selling, e.g. \"SIEM platform\"."
},
"estimated_value_usd": {
"type": "number",
"description": "Rough deal size in USD, if known.",
"exclusiveMinimum": 0
}
}
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-06: 1 of 1 checks answered
- 2026-11-07: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 938 ms
- 95th percentile latency
- 938 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 938 ms · metadata changed · 5 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http pubsec-radar-mcp https://pubsec-sales-mcp.kabrawala.workers.dev/mcpCodex
codex mcp add pubsec-radar-mcp --url https://pubsec-sales-mcp.kabrawala.workers.dev/mcpCursor
{
"mcpServers": {
"pubsec-radar-mcp": {
"url": "https://pubsec-sales-mcp.kabrawala.workers.dev/mcp"
}
}
}Cline
{
"mcpServers": {
"pubsec-radar-mcp": {
"type": "streamableHttp",
"url": "https://pubsec-sales-mcp.kabrawala.workers.dev/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"pubsec-radar-mcp": {
"type": "http",
"url": "https://pubsec-sales-mcp.kabrawala.workers.dev/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http pubsec-radar-mcp https://pubsec-sales-mcp.kabrawala.workers.dev/mcpClaude Desktop
https://pubsec-sales-mcp.kabrawala.workers.dev/mcpWindsurf
{
"mcpServers": {
"pubsec-radar-mcp": {
"serverUrl": "https://pubsec-sales-mcp.kabrawala.workers.dev/mcp"
}
}
}Let your agent find its tools
Find servers like PubSec Radar MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.