Skip to main content
Glama
kshayk

AviBase MCP Server

by kshayk

get_birds_by_authority

Retrieve bird species described by a specific taxonomic authority like Linnaeus or Darwin from the AviBase dataset.

Instructions

Find birds described by a specific taxonomic authority (e.g., Linnaeus, Darwin, etc.).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
authorityYesName of the taxonomic authority
limitNoMaximum number of results to return (default: 50)

Implementation Reference

  • The main handler function that implements the get_birds_by_authority tool. It extracts authority and limit from args, calls the /authority API endpoint, and returns a formatted markdown response with bird details.
    async handleGetBirdsByAuthority(args) { const { authority, limit = 50 } = args; const endpoint = `/authority?name=${encodeURIComponent(authority)}&limit=${limit}`; const response = await this.makeAPIRequest(endpoint); return { content: [ { type: 'text', text: `# Birds Described by ${authority} šŸ‘Øā€šŸ”¬ **${response.pagination.totalItems}** birds described by ${authority} **Historical contributions:** ${response.data.slice(0, 15).map((bird, i) => `${i + 1}. **${bird.Scientific_name}** - Common name: ${bird.English_name_AviList || 'No common name'} - Family: ${bird.Family} - Year: ${bird.Authority} - Publication: ${bird.Bibliographic_details ? bird.Bibliographic_details.substring(0, 80) + '...' : 'Not specified'}`).join('\n\n')} ${response.pagination.hasNext ? `\n*Note: Showing first ${response.data.length} of ${response.pagination.totalItems} total species described by ${authority}.*` : ''}`, }, ], }; }
  • Input schema for the get_birds_by_authority tool, defining required 'authority' string parameter and optional 'limit' number.
    inputSchema: { type: 'object', properties: { authority: { type: 'string', description: 'Name of the taxonomic authority', }, limit: { type: 'number', description: 'Maximum number of results to return (default: 50)', default: 50, }, }, required: ['authority'], },
  • mcp-server.js:182-200 (registration)
    Tool registration in the listTools response, including name, description, and input schema.
    { name: 'get_birds_by_authority', description: 'Find birds described by a specific taxonomic authority (e.g., Linnaeus, Darwin, etc.).', inputSchema: { type: 'object', properties: { authority: { type: 'string', description: 'Name of the taxonomic authority', }, limit: { type: 'number', description: 'Maximum number of results to return (default: 50)', default: 50, }, }, required: ['authority'], }, },
  • mcp-server.js:306-307 (registration)
    Dispatch case in the CallToolRequestSchema handler that routes calls to get_birds_by_authority to its handler function.
    case 'get_birds_by_authority': return await this.handleGetBirdsByAuthority(args);

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/kshayk/avibase-mcp'

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