Skip to content

Commit 9a5e915

Browse files
committed
feat: replace research prompts with AI instruction prompts
- Replace 4 old research prompts with 2 new AI instruction prompts - Add 'summary_prompt': instructs LLM to create fact-based summaries with citations - Add 'search_prompt': guides LLM through proper search workflow and filtering - Summary prompt enforces strict citation requirements with inline [n] format - Search prompt teaches proper OData filter discovery and validation - Update README to reflect new prompt purposes and functionality - Update smithery.yaml with new prompt names - All tests pass (14/14) with improved coverage (75%) BREAKING CHANGE: removed fraud_investigation_search, compliance_recommendations, risk_analysis, and findings_summary prompts
1 parent 5040b18 commit 9a5e915

File tree

3 files changed

+154
-227
lines changed

3 files changed

+154
-227
lines changed

README.md

Lines changed: 25 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212

1313
<br/>
1414

15-
> 🔍 Enable AI assistants to search and access Program Integrity Alliance documents through a simple MCP interface.
16-
1715
This MCP Server provides tools for working with Government Open Data which has been processed by the [The Program Integrity Alliance (PIA)](https://programintegrity.org/).
1816

1917
Currently this includes:
@@ -36,7 +34,7 @@ This data is updated weekly, and we will be adding more datasets and tools soon.
3634

3735
- 🔎 **Document Search**: Query PIA database with comprehensive OData filtering options
3836
- 📊 **Faceted Search**: Discover available filter fields and values
39-
- 📝 **Research Prompts**: Specialized prompts for fraud investigation, compliance, and risk analysis
37+
- 📝 **AI Instruction Prompts**: Prompts that instruct LLMs on how to summarize search results and use search tools
4038

4139
## 🚀 Quick Start
4240

@@ -213,45 +211,42 @@ Query: "healthcare violations"
213211
Filters: "(data_source eq 'OIG' or data_source eq 'CMS') and (severity eq 'High' or amount gt 1000000) and published_date ge '2023-01-01'"
214212
```
215213

216-
## 📝 Research Prompts
217-
218-
The server offers specialized prompts for different research workflows:
219-
220-
### Fraud Investigation Search
221-
Systematically search for fraud investigations and related findings.
214+
## 📝 AI Instruction Prompts
222215

223-
**Prompt Name:** `fraud_investigation_search`
216+
The server provides prompts that instruct the calling LLM on how to effectively use PIA tools and format responses:
224217

225-
**Arguments:**
226-
- `topic` (required): The fraud topic or area to investigate
227-
- `time_period` (optional): Time period for the search (e.g., 'last 5 years')
218+
### Summary Prompt
219+
Instructions for LLM to summarize information only from provided search results with proper citations.
228220

229-
### Compliance Recommendations
230-
Find compliance recommendations and regulatory guidance.
221+
**Prompt Name:** `summary_prompt`
231222

232-
**Prompt Name:** `compliance_recommendations`
223+
**Purpose:** Ensures LLM creates fact-based summaries with inline citations and proper reference formatting
233224

234225
**Arguments:**
235-
- `area` (required): The compliance area or domain to search
236-
- `data_source` (optional): Specific data source (GAO, OIG, etc.)
237-
238-
### Risk Analysis
239-
Analyze risk factors and vulnerabilities in specific domains.
226+
- `search_results` (required): The search results to summarize (inserted into &lt;SEARCH_RESULTS&gt; tags)
240227

241-
**Prompt Name:** `risk_analysis`
228+
**Returns:** Instructions that guide the LLM to:
229+
- Only include facts from search results (no prior knowledge)
230+
- Use inline citations [n] for every factual statement
231+
- Format references with document title, page, source, and URL
232+
- Follow strict citation and formatting guidelines
242233

243-
**Arguments:**
244-
- `domain` (required): The domain or sector to analyze for risks
245-
- `risk_type` (optional): Type of risk to focus on (financial, operational, etc.)
234+
### Search Prompt
235+
Instructions for LLM on how to effectively use PIA search tools with proper filtering.
246236

247-
### Findings Summary
248-
Generate comprehensive summaries of findings about a specific subject.
237+
**Prompt Name:** `search_prompt`
249238

250-
**Prompt Name:** `findings_summary`
239+
**Purpose:** Guides LLM through proper search workflow including filter discovery and OData syntax
251240

252241
**Arguments:**
253-
- `subject` (required): The subject or entity to summarize findings about
254-
- `max_results` (optional): Maximum number of results to include in summary
242+
- `user_query` (required): The user's search query to analyze for filter criteria
243+
244+
**Returns:** Instructions that guide the LLM to:
245+
- Detect when filters should be applied based on query content
246+
- Use `pia_search_facets` to discover available filter fields and values
247+
- Build valid OData filter expressions with correct syntax
248+
- Fall back to unfiltered search when filtered search returns no results
249+
- Validate all filter fields against available facets
255250

256251
## ⚙️ Configuration
257252

smithery.yaml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,5 @@ mcp:
1010
- pia_search
1111
- pia_search_facets
1212
prompts:
13-
- fraud_investigation_search
14-
- compliance_recommendations
15-
- risk_analysis
16-
- findings_summary
13+
- summary_prompt
14+
- search_prompt

0 commit comments

Comments
 (0)