search_enriched
Search global government tenders, RFPs, grants, and frameworks for your technology or consulting service. Returns an AI-ranked summary of 10 best matches with title, match score, region, type, value, and deadline.
Instructions
Full AI-powered government procurement search with Claude Sonnet intelligence. Returns a compact ranked summary of 10 matches showing title, match score, region, type, value, and deadline. Costs 1 credit. Always searches globally across all sources to find the best matches. After reviewing the summary, use get_opportunity with a result number (1-10) to see the full strategic fit memo, political context memo, description, and application URL for any match - at no extra cost.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Detailed description of the technology, product, or service (min 20 chars). Include any country, region, or sector context directly in the description. More detail = better matches. |
Implementation Reference
- src/index.ts:168-219 (handler)The handler function for the search_enriched tool. It calls /api/v1/search/enriched, caches the results, and returns a compact ranked summary table of 10 matches with title, match score, region, type, value, deadline, and credits remaining.
async ({ query }) => { const body: Record<string, unknown> = { query } const { ok, status, data } = await apiCall('/api/v1/search/enriched', body) if (!ok) { return { content: [{ type: 'text' as const, text: errorText(data, status) }], isError: true } } const matches = data.matches as Array<Record<string, unknown>> const totalScanned = data.total_scanned as number const creditsRemaining = data.credits_remaining as number | null if (!matches || matches.length === 0) { return { content: [{ type: 'text' as const, text: `No opportunities found matching your query. Try broadening your search or removing filters.`, }], } } // Cache full results for get_opportunity cachedMatches = matches // Return compact summary table const lines = matches.map((m, i) => { return `| ${i + 1} | ${m.displayTitle} | ${m.matchPercentage}% | ${m.region}${m.country ? ` (${m.country})` : ''} | ${m.funding_type ?? '-'} | ${m.estimated_value ?? '-'} | ${m.deadline ?? 'TBD'} |` }) const table = [ `# GovRider Search Results`, '', `Found ${matches.length} AI-ranked opportunities (scanned ${totalScanned?.toLocaleString() ?? '?'} active listings):`, '', '| # | Opportunity | Match | Region | Type | Value | Deadline |', '|---|-------------|-------|--------|------|-------|----------|', ...lines, '', '---', 'These are the most similar opportunities found in GovRider\'s curated database, ranked by AI-assessed alignment to your description. Results may include opportunities from different countries or funding types than specified if closer matches were not available at this time. Database updated nightly from 25+ official government sources.', '', `Credits remaining: ${creditsRemaining ?? 'unknown'}`, '', 'Use **get_opportunity** with a number (1-10) to see the full strategic fit memo, political context, description, and application URL for any match above.', ].join('\n') return { content: [{ type: 'text' as const, text: table }], } }, ) - src/index.ts:158-167 (schema)The input schema for search_enriched using Zod validation. Requires a 'query' string (min 20 chars, max 10000) describing the technology/product/service to search for.
description: 'Full AI-powered government procurement search with Claude Sonnet intelligence. Returns a compact ranked summary of 10 matches showing title, match score, region, type, value, and deadline. Costs 1 credit. Always searches globally across all sources to find the best matches. After reviewing the summary, use **get_opportunity** with a result number (1-10) to see the full strategic fit memo, political context memo, description, and application URL for any match - at no extra cost.', inputSchema: { query: z .string() .min(20) .max(10000) .describe('Detailed description of the technology, product, or service (min 20 chars). Include any country, region, or sector context directly in the description. More detail = better matches.'), }, }, - src/index.ts:155-219 (registration)The registration of the search_enriched tool via server.registerTool() with name 'search_enriched', description, input schema, and handler.
server.registerTool( 'search_enriched', { description: 'Full AI-powered government procurement search with Claude Sonnet intelligence. Returns a compact ranked summary of 10 matches showing title, match score, region, type, value, and deadline. Costs 1 credit. Always searches globally across all sources to find the best matches. After reviewing the summary, use **get_opportunity** with a result number (1-10) to see the full strategic fit memo, political context memo, description, and application URL for any match - at no extra cost.', inputSchema: { query: z .string() .min(20) .max(10000) .describe('Detailed description of the technology, product, or service (min 20 chars). Include any country, region, or sector context directly in the description. More detail = better matches.'), }, }, async ({ query }) => { const body: Record<string, unknown> = { query } const { ok, status, data } = await apiCall('/api/v1/search/enriched', body) if (!ok) { return { content: [{ type: 'text' as const, text: errorText(data, status) }], isError: true } } const matches = data.matches as Array<Record<string, unknown>> const totalScanned = data.total_scanned as number const creditsRemaining = data.credits_remaining as number | null if (!matches || matches.length === 0) { return { content: [{ type: 'text' as const, text: `No opportunities found matching your query. Try broadening your search or removing filters.`, }], } } // Cache full results for get_opportunity cachedMatches = matches // Return compact summary table const lines = matches.map((m, i) => { return `| ${i + 1} | ${m.displayTitle} | ${m.matchPercentage}% | ${m.region}${m.country ? ` (${m.country})` : ''} | ${m.funding_type ?? '-'} | ${m.estimated_value ?? '-'} | ${m.deadline ?? 'TBD'} |` }) const table = [ `# GovRider Search Results`, '', `Found ${matches.length} AI-ranked opportunities (scanned ${totalScanned?.toLocaleString() ?? '?'} active listings):`, '', '| # | Opportunity | Match | Region | Type | Value | Deadline |', '|---|-------------|-------|--------|------|-------|----------|', ...lines, '', '---', 'These are the most similar opportunities found in GovRider\'s curated database, ranked by AI-assessed alignment to your description. Results may include opportunities from different countries or funding types than specified if closer matches were not available at this time. Database updated nightly from 25+ official government sources.', '', `Credits remaining: ${creditsRemaining ?? 'unknown'}`, '', 'Use **get_opportunity** with a number (1-10) to see the full strategic fit memo, political context, description, and application URL for any match above.', ].join('\n') return { content: [{ type: 'text' as const, text: table }], } }, )