On this page
What you can do with MCP
GovPillar exposes its core features as MCP tools. Once connected, any AI client that supports MCP — Claude Desktop, Cursor, Grok, OpenAI Dot, Muse AI — can search opportunities, score bids, read your pipeline, and pull agency spend data without you touching a browser.
| You say | What the bot does |
|---|---|
| "Find IT contracts open at DoD under NAICS 541511" | Calls search_opportunities and returns a formatted list |
| "Score the top result against our profile" | Runs the match scoring tool and returns dimension scores |
| "Add it to the pipeline" | Calls add_to_pipeline — pauses for your confirmation first |
| "What's the Air Force's small business percentage?" | Fetches USASpending.gov data via get_agency_spend |
| "Move the DARPA pursuit to In Progress" | Calls update_pipeline_status — pauses for confirmation |
Step 1 — Generate an API Key
- Go to your profile avatar → API Keys & MCP
- Give the key a label — use the bot name, e.g. "Claude Desktop" or "Cursor"
- Click Generate
- Copy the key right now — it's shown once and not stored in a recoverable form
Copy it before closing
Only the hash is stored. If you close the modal without copying, you'll need to revoke and generate a new key. You can have up to 10 active keys at once.
Step 2 — Install the MCP Server
npm install -g govpillar-mcp-serverThis installs the govpillar-mcp binary globally. No cloning or building required — the package ships pre-built.
Step 3a — Claude Desktop
Edit the Claude config file — ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows:
{
"mcpServers": {
"govpillar": {
"command": "npx",
"args": ["govpillar-mcp-server"],
"env": {
"GOVPILLAR_API_KEY": "gp_your_key_here"
}
}
}
}Restart Claude Desktop. GovPillar shows up in the tools panel (the plug icon in the chat bar).
Step 3b — Cursor
Create or edit .cursor/mcp.json in your workspace root (workspace-scoped) or ~/.cursor/mcp.json (applies to all projects):
{
"mcpServers": {
"govpillar": {
"command": "npx",
"args": ["govpillar-mcp-server"],
"env": {
"GOVPILLAR_API_KEY": "gp_your_key_here"
}
}
}
}Step 3c — Grok (xAI)
In Grok's settings, go to External Tools → Add Tool Server and fill in:
| Field | Value |
|---|---|
| Transport | stdio |
| Command | npx govpillar-mcp-server |
| GOVPILLAR_API_KEY | gp_your_key_here |
Step 3d — OpenAI Dot
Dot and other OpenAI-based assistants use the REST dispatcher endpoint rather than the stdio binary:
| Field | Value |
|---|---|
| Endpoint | https://govpillar.com/api/mcp/run |
| Method | POST |
| Authorization | Bearer gp_your_key_here |
| Content-Type | application/json |
{
"tool": "score_opportunity",
"args": {
"noticeId": "abc123",
"companyId": "your-company-id"
}
}Step 3e — Muse AI
- In Muse AI settings, open Tool Integrations → Add MCP Server
- Set the command: npx govpillar-mcp-server
- Add env variable GOVPILLAR_API_KEY with your key value
- Save — GovPillar tools appear in the tool picker
Name your API key after the bot (e.g. "Muse AI — laptop") so the activity log tells you which client made each call.
Available Tools
| Tool | What it does |
|---|---|
| search_opportunities | Search by keyword, NAICS, agency, value range, or set-aside type |
| get_opportunity_detail | Return full solicitation detail for a given noticeId |
| score_opportunity | Run a match score against your company profile |
| get_pipeline | List your current pipeline items with stage and metadata |
| add_to_pipeline | Save an opportunity to your pipeline (requires confirmation) |
| update_pipeline_status | Move to a new stage, assign, set deadline, or record outcome |
| get_agency_spend | Pull spend analytics for any agency from USASpending.gov |
| shred_rfp | Extract Section L/M requirements and FAR risk flags from a solicitation |
Security
- Only a SHA-256 hash is stored — the key itself is never persisted
- Each key is scoped to your account — it can't access any other tenant's data
- Revoking a key takes effect immediately
- All write operations require you to confirm before anything changes
Troubleshooting
| Symptom | Fix |
|---|---|
| The AI client says GovPillar has no API key | Open your client's config file, find the "env" block inside the govpillar server entry, and add your API key as the value for GOVPILLAR_API_KEY. Save and restart the client. |
| The AI client says the key is invalid or unauthorised | Your key may be expired or mistyped. Go to your profile avatar → API Keys & MCP, revoke the old key, generate a new one, and paste it into your config. |
| Scoring or RFP Shredder returns a subscription error | These features require a paid plan. Upgrade at profile avatar → Billing & Subscription. |
| The AI can't find an opportunity you mentioned | Ask the AI to search for it first ("search for NAICS 541511 IT contracts") — then use the noticeId it returns in any follow-up request. |
| GovPillar tools don't appear in the AI client at all | Restart the AI client after saving its config file. If using npx, confirm Node 18 or later is installed by running node --version in a terminal. |
| Requests to the REST endpoint return 401 | Double-check the Authorization header — it must be exactly: Bearer gp_your_key with no extra spaces or quotes. |
Was this page helpful?