Official server.json
{
"name": "io.github.cyanheads/unhcr-refugees-mcp-server",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://unhcr-refugees.caseyjhand.com/mcp",
"type": "streamable-http"
}
],
"version": "0.2.0",
"packages": [
{
"version": "0.2.0",
"transport": {
"type": "stdio"
},
"identifier": "@cyanheads/unhcr-refugees-mcp-server",
"runtimeHint": "npx",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"environmentVariables": [
{
"name": "UNHCR_REQUESTS_PER_SECOND",
"format": "number",
"default": "4",
"description": "Upstream request starts per second for the whole process (1–10)."
},
{
"name": "UNHCR_MAX_ROWS",
"format": "number",
"default": "150000",
"description": "Most upstream rows one tool call fetches (10000–500000); a larger result stops at the cap with complete: false."
},
{
"name": "UNHCR_CACHE_MAX_MB",
"format": "number",
"default": "64",
"description": "Response-cache budget in MB; 0 disables the cache."
},
{
"name": "UNHCR_DATASET_TTL_SECONDS",
"format": "number",
"default": "86400",
"description": "Per-table TTL for staged dataframes, in seconds (minimum 60)."
},
{
"name": "UNHCR_DATAFRAME_DROP_ENABLED",
"format": "boolean",
"default": "false",
"description": "Set to true to register unhcr_dataframe_drop; off by default, the per-table TTL reclaims staged tables."
},
{
"name": "MCP_LOG_LEVEL",
"format": "string",
"default": "info",
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
}
]
},
{
"version": "0.2.0",
"transport": {
"url": "http://localhost:3010/mcp",
"type": "streamable-http"
},
"identifier": "@cyanheads/unhcr-refugees-mcp-server",
"runtimeHint": "npx",
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"environmentVariables": [
{
"name": "MCP_TRANSPORT_TYPE",
"value": "http",
"format": "string",
"description": "Selects the HTTP transport."
},
{
"name": "UNHCR_REQUESTS_PER_SECOND",
"format": "number",
"default": "4",
"description": "Upstream request starts per second for the whole process (1–10). Every caller of a hosted instance shares it."
},
{
"name": "UNHCR_MAX_ROWS",
"format": "number",
"default": "150000",
"description": "Most upstream rows one tool call fetches (10000–500000); a larger result stops at the cap with complete: false."
},
{
"name": "UNHCR_CACHE_MAX_MB",
"format": "number",
"default": "64",
"description": "Response-cache budget in MB; 0 disables the cache."
},
{
"name": "UNHCR_DATASET_TTL_SECONDS",
"format": "number",
"default": "86400",
"description": "Per-table TTL for staged dataframes, in seconds (minimum 60)."
},
{
"name": "UNHCR_DATAFRAME_DROP_ENABLED",
"format": "boolean",
"default": "false",
"description": "Set to true to register unhcr_dataframe_drop; off by default, the per-table TTL reclaims staged tables."
},
{
"name": "MCP_HTTP_HOST",
"format": "string",
"default": "127.0.0.1",
"description": "The hostname for the HTTP server."
},
{
"name": "MCP_HTTP_PORT",
"format": "string",
"default": "3010",
"description": "The port to run the HTTP server on."
},
{
"name": "MCP_HTTP_ENDPOINT_PATH",
"format": "string",
"default": "/mcp",
"description": "The endpoint path for the MCP server."
},
{
"name": "MCP_AUTH_MODE",
"format": "string",
"default": "none",
"description": "Authentication mode to use: 'none', 'jwt', or 'oauth'."
},
{
"name": "MCP_LOG_LEVEL",
"format": "string",
"default": "info",
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
}
]
}
],
"repository": {
"url": "https://github.com/cyanheads/unhcr-refugees-mcp-server",
"source": "github"
},
"description": "Query UNHCR refugee, IDP, and stateless populations, asylum decisions, returns, and resettlement."
}