search_species
Pack: gbif · Endpoint: https://gateway.pipeworx.io/gbif/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_species for the schema, then POST the same URL with its arguments for the data.
Search for species by common or scientific name. Returns matched taxa with rank, classification status, and taxonomic hierarchy. Use get_species with the taxon key for full details.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | yes | Species name or keyword (e.g., “Homo sapiens”, “oak”) |
limit | number | no | Maximum results to return (1-100, default 20) |
Example call
Arguments
{
"query": "Homo sapiens"
}
curl
curl -X POST https://gateway.pipeworx.io/gbif/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_species","arguments":{"query":"Homo sapiens"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_species', {
"query": "Homo sapiens"
});
More examples
{
"query": "oak",
"limit": 50
}
Response shape
Always returns: count, end_of_records, results
| Field | Type | Description |
|---|---|---|
count | number | Total number of results found |
end_of_records | boolean | Whether all available records have been returned |
results | array | Array of matched species |
Full JSON Schema
{
"type": "object",
"properties": {
"count": {
"type": "number",
"description": "Total number of results found"
},
"end_of_records": {
"type": "boolean",
"description": "Whether all available records have been returned"
},
"results": {
"type": "array",
"description": "Array of matched species",
"items": {
"type": "object",
"properties": {
"key": {
"type": "number",
"description": "GBIF taxon key identifier"
},
"scientific_name": {
"type": [
"string",
"null"
],
"description": "Full scientific name"
},
"canonical_name": {
"type": [
"string",
"null"
],
"description": "Canonical form of scientific name"
},
"rank": {
"type": [
"string",
"null"
],
"description": "Taxonomic rank (e.g., species, genus, family)"
},
"status": {
"type": [
"string",
"null"
],
"description": "Classification status"
},
"kingdom": {
"type": [
"string",
"null"
],
"description": "Kingdom classification"
},
"phylum": {
"type": [
"string",
"null"
],
"description": "Phylum classification"
},
"class": {
"type": [
"string",
"null"
],
"description": "Class classification"
},
"order": {
"type": [
"string",
"null"
],
"description": "Order classification"
},
"family": {
"type": [
"string",
"null"
],
"description": "Family classification"
},
"genus": {
"type": [
"string",
"null"
],
"description": "Genus classification"
},
"species": {
"type": [
"string",
"null"
],
"description": "Species classification"
},
"num_descendants": {
"type": [
"number",
"null"
],
"description": "Number of descendant taxa"
}
},
"required": [
"key",
"scientific_name",
"canonical_name",
"rank",
"status",
"kingdom",
"phylum",
"class",
"order",
"family",
"genus",
"species",
"num_descendants"
]
}
}
},
"required": [
"count",
"end_of_records",
"results"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"gbif": {
"url": "https://gateway.pipeworx.io/gbif/mcp"
}
}
}
See Getting Started for client-specific install steps.