get_checklists_on_date
Retrieve bird observation checklists submitted on a specific date and location from the eBird database.
Instructions
Get checklists submitted on a specific date.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| region_code | Yes | Country, subnational1, subnational2, or location code | |
| year | Yes | Year | |
| month | Yes | Month | |
| day | Yes | Day of month | |
| sort_key | No | Sort by observation or submission date | obs_dt |
| max_results | No | Number of checklists to return |
Implementation Reference
- src/index.ts:331-337 (handler)The handler function for the 'get_checklists_on_date' tool. It constructs the eBird API endpoint using the provided region and date parameters, calls the shared makeRequest helper, and formats the response as MCP content.async (args) => { const result = await makeRequest( `/product/lists/${args.region_code}/${args.year}/${args.month}/${args.day}`, { sortKey: args.sort_key, maxResults: args.max_results } ); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] }; }
- src/index.ts:323-330 (schema)Zod schema defining the input parameters for the tool: region_code, year, month, day, sort_key, and max_results.{ region_code: z.string().describe("Country, subnational1, subnational2, or location code"), year: z.number().describe("Year"), month: z.number().min(1).max(12).describe("Month"), day: z.number().min(1).max(31).describe("Day of month"), sort_key: z.enum(["obs_dt", "creation_dt"]).default("obs_dt").describe("Sort by observation or submission date"), max_results: z.number().min(1).max(200).default(10).describe("Number of checklists to return"), },
- src/index.ts:320-338 (registration)The server.tool registration call that defines and registers the 'get_checklists_on_date' tool with its description, input schema, and inline handler function.server.tool( "get_checklists_on_date", "Get checklists submitted on a specific date.", { region_code: z.string().describe("Country, subnational1, subnational2, or location code"), year: z.number().describe("Year"), month: z.number().min(1).max(12).describe("Month"), day: z.number().min(1).max(31).describe("Day of month"), sort_key: z.enum(["obs_dt", "creation_dt"]).default("obs_dt").describe("Sort by observation or submission date"), max_results: z.number().min(1).max(200).default(10).describe("Number of checklists to return"), }, async (args) => { const result = await makeRequest( `/product/lists/${args.region_code}/${args.year}/${args.month}/${args.day}`, { sortKey: args.sort_key, maxResults: args.max_results } ); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] }; } );