search_iacr
Search for cryptography research papers from the International Association for Cryptologic Research (IACR) to find academic publications on cryptographic topics.
Instructions
Search IACR (International Association for Cryptologic Research) for cryptography papers
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query for cryptography research | |
| maxResults | No | Maximum number of results to return |
Implementation Reference
- The main handler function for the 'search_iacr' tool. It takes a query and optional maxResults, simulates an IACR ePrint Archive search by generating mock cryptography paper results, and returns structured data or error.execute: async (args: ToolInput): Promise<ToolOutput> => { try { const { query, maxResults = 20 } = args; // Simulated IACR search results const results = Array.from({ length: Math.min(maxResults, 10) }, (_, i) => ({ title: `Cryptographic Analysis of ${query} - Paper ${i + 1}`, authors: [`Dr. Crypto Expert ${i + 1}`, `Prof. Security Researcher ${i + 1}`], abstract: `This paper presents a comprehensive analysis of ${query} in the context of modern cryptographic systems...`, venue: i % 2 === 0 ? 'CRYPTO' : 'EUROCRYPT', year: 2024 - (i % 3), url: `https://eprint.iacr.org/2024/${String(i + 1).padStart(3, '0')}`, category: 'Cryptography', keywords: [query, 'cryptography', 'security', 'algorithms'] })); return { success: true, data: { source: 'IACR', query, results, totalResults: results.length }, metadata: { searchTime: Date.now(), source: 'IACR ePrint Archive' } }; } catch (error) { return { success: false, error: `IACR search failed: ${error instanceof Error ? error.message : String(error)}`, data: null }; } }
- The input schema for the 'search_iacr' tool, defining a required 'query' string and optional 'maxResults' number (1-100, default 20).inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Search query for cryptography research' }, maxResults: { type: 'number', description: 'Maximum number of results to return', default: 20, minimum: 1, maximum: 100 } }, required: ['query'] },
- src/tools/academic/biorxiv-tools.ts:65-124 (registration)The registration of the 'search_iacr' tool within the registerBioRxivTools function, including name, description, category, source, inputSchema, and execute handler.registry.registerTool({ name: 'search_iacr', description: 'Search IACR (International Association for Cryptologic Research) for cryptography papers', category: 'academic', source: 'IACR', inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Search query for cryptography research' }, maxResults: { type: 'number', description: 'Maximum number of results to return', default: 20, minimum: 1, maximum: 100 } }, required: ['query'] }, execute: async (args: ToolInput): Promise<ToolOutput> => { try { const { query, maxResults = 20 } = args; // Simulated IACR search results const results = Array.from({ length: Math.min(maxResults, 10) }, (_, i) => ({ title: `Cryptographic Analysis of ${query} - Paper ${i + 1}`, authors: [`Dr. Crypto Expert ${i + 1}`, `Prof. Security Researcher ${i + 1}`], abstract: `This paper presents a comprehensive analysis of ${query} in the context of modern cryptographic systems...`, venue: i % 2 === 0 ? 'CRYPTO' : 'EUROCRYPT', year: 2024 - (i % 3), url: `https://eprint.iacr.org/2024/${String(i + 1).padStart(3, '0')}`, category: 'Cryptography', keywords: [query, 'cryptography', 'security', 'algorithms'] })); return { success: true, data: { source: 'IACR', query, results, totalResults: results.length }, metadata: { searchTime: Date.now(), source: 'IACR ePrint Archive' } }; } catch (error) { return { success: false, error: `IACR search failed: ${error instanceof Error ? error.message : String(error)}`, data: null }; } } });
- src/index.ts:233-233 (registration)The call to registerBioRxivTools in the main server initialization, which registers the 'search_iacr' tool among others.registerBioRxivTools(this.toolRegistry); // 3 tools: search_iacr, search_medrxiv, search_biorxiv