Skip to main content
Glama

get_literature_references

Retrieve scientific publications and citations for UniProt protein entries using accession numbers to support research validation and literature review.

Instructions

Associated publications and citations

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accessionYesUniProt accession number

Implementation Reference

  • The handler function that implements the core logic for the 'get_literature_references' tool. It validates input, fetches the UniProt protein entry via API, extracts the references array and PubMed cross-references, and formats the response.
    private async handleGetLiteratureReferences(args: any) { if (!isValidProteinInfoArgs(args)) { throw new McpError(ErrorCode.InvalidParams, 'Invalid literature references arguments'); } try { const response = await this.apiClient.get(`/uniprotkb/${args.accession}`, { params: { format: 'json' }, }); const protein = response.data; const literatureInfo = { accession: protein.primaryAccession, references: protein.references || [], pubmedReferences: protein.uniProtKBCrossReferences?.filter((ref: any) => ref.database === 'PubMed') || [], citationCount: protein.references?.length || 0, }; return { content: [ { type: 'text', text: JSON.stringify(literatureInfo, null, 2), }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Error fetching literature references: ${error instanceof Error ? error.message : 'Unknown error'}`, }, ], isError: true, }; } }
  • src/index.ts:664-673 (registration)
    Tool registration entry in the ListToolsRequestSchema response, defining the tool name, description, and input schema (schema).
    name: 'get_literature_references', description: 'Associated publications and citations', inputSchema: { type: 'object', properties: { accession: { type: 'string', description: 'UniProt accession number' }, }, required: ['accession'], }, },
  • src/index.ts:776-776 (registration)
    Dispatch case in the CallToolRequestSchema handler switch statement that routes tool calls to the specific handler.
    return this.handleGetLiteratureReferences(args);
  • Helper validation function for input arguments requiring a UniProt accession, used by the get_literature_references handler and others.
    const isValidProteinInfoArgs = ( args: any ): args is { accession: string; format?: string } => { return ( typeof args === 'object' && args !== null && typeof args.accession === 'string' && args.accession.length > 0 && (args.format === undefined || ['json', 'tsv', 'fasta', 'xml'].includes(args.format)) ); };

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/Augmented-Nature/UniProt-MCP-Server'

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