Skip to main content
Glama

get_paper_details

Retrieve detailed information about a specific cryptographic research paper using its unique ID from the IACR Cryptology ePrint Archive via a secure MCP server interface.

Instructions

Retrieve details of a specific paper by its ID

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paper_idYes

Implementation Reference

  • The handler function that implements the get_paper_details tool. It validates input with GetPaperDetailsSchema, fetches the IACR RSS feed, finds the paper by ID, extracts details, and returns them as JSON.
    private async getPaperDetails(args: unknown) {
      const validatedArgs = GetPaperDetailsSchema.parse(args);
      
      try {
        // Fetch RSS feed to get paper details
        const response = await axios.get(IACR_RSS_URL);
        const parsedFeed = await parseStringPromise(response.data);
        
        const paperItem = parsedFeed.rss.channel[0].item.find((item: any) => 
          item.link[0].split('/').pop() === validatedArgs.paper_id
        );
    
        if (!paperItem) {
          throw new Error('Paper not found');
        }
    
        const paperDetails = {
          id: validatedArgs.paper_id,
          title: paperItem.title[0],
          authors: paperItem['dc:creator'] ? paperItem['dc:creator'][0] : 'Unknown',
          abstract: paperItem.description[0],
          link: paperItem.link[0],
          date: paperItem.pubDate[0]
        };
    
        return {
          content: [{
            type: 'text',
            text: JSON.stringify(paperDetails, null, 2)
          }]
        };
      } catch (error) {
        console.error('Paper Details Error:', error);
        throw new McpError(
          ErrorCode.InternalError,
          `Paper details retrieval failed: ${error instanceof Error ? error.message : 'Unknown error'}`
        );
      }
    }
  • Zod schema defining the input for get_paper_details: requires a 'paper_id' string.
    const GetPaperDetailsSchema = z.object({
      paper_id: z.string()
    });
  • src/index.ts:81-91 (registration)
    Tool registration in the ListTools response, specifying name, description, and input schema matching the Zod schema.
    {
      name: 'get_paper_details',
      description: 'Retrieve details of a specific paper by its ID',
      inputSchema: {
        type: 'object',
        properties: {
          paper_id: { type: 'string' }
        },
        required: ['paper_id']
      }
    },
Install Server

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/doomdagadiggiedahdah/iacr-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server