History of openfda-mcp-server in namespace io.github
io.github.cyanheads/openfda-mcp-server · Registry status: active
No name of its own reaches this register for this entry. The heading therefore carries the trailing segment of the identifier; the identifier itself is listed below as a coordinate.
Every published change to this entry, most recent first.
| 2026-10-05 | Declared version: 0.7.9 → 0.8.0 |
|---|---|
| 2026-10-05 | Last changed in the registry (raw): 2026-09-22 → 2026-10-04 |
| 2026-10-05 | First listed in the registry (raw): 2026-09-22 → 2026-10-04 |
| 2026-10-05 | Environment variable descriptions (raw): MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_TRANSPORT_TYPE=Must be set to 'http' for streamable HTTP transport. · OPENFDA_API_KEY=Free API key from open.fda.gov — increases daily limit from 1K to 120K requests. · OPENFDA_MIRROR_BASE_URL=Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps. · OPENFDA_MIRROR_ENABLED=Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script. · OPENFDA_MIRROR_FALLBACK_LIVE=Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead. · OPENFDA_MIRROR_PATH=Directory holding one SQLite file per mirrored dataset. · OPENFDA_MIRROR_REFRESH_CRON=Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency. · OPENFDA_MIRROR_REFRESH_TIMEOUT_MS=Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset. → CANVAS_PROVIDER_TYPE=Set to 'duckdb' to enable DataCanvas staging: stage=true or a canvas_id on an openfda_search_* tool or openfda_lookup_ndc stages the matched records as a SQL table, and the openfda_dataframe_* tools are listed. The DuckDB binding ships with the server. · MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_TRANSPORT_TYPE=Selects the HTTP transport. · OPENFDA_API_KEY=Free API key from open.fda.gov — increases daily limit from 1K to 120K requests. · OPENFDA_DATAFRAME_DROP_ENABLED=Enable openfda_dataframe_drop, which deletes a table staged on a DataCanvas. Off by default; applies only when DataCanvas is enabled (CANVAS_PROVIDER_TYPE=duckdb). · OPENFDA_MIRROR_BASE_URL=Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps. · OPENFDA_MIRROR_ENABLED=Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script. · OPENFDA_MIRROR_FALLBACK_LIVE=Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead. · OPENFDA_MIRROR_PATH=Directory holding one SQLite file per mirrored dataset. · OPENFDA_MIRROR_REFRESH_CRON=Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency. · OPENFDA_MIRROR_REFRESH_TIMEOUT_MS=Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset. |
| 2026-10-05 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.9","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.9","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} → {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.8.0","runtimeHint":"npx","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"CANVAS_PROVIDER_TYPE","description":"Set to 'duckdb' to enable DataCanvas staging: stage=true or a canvas_id on an openfda_search_* tool or openfda_lookup_ndc stages the matched records as a SQL table, and the openfda_dataframe_* tools are listed. The DuckDB binding ships with the server.","format":"string","required":false,"secret":false},{"name":"OPENFDA_DATAFRAME_DROP_ENABLED","description":"Enable openfda_dataframe_drop, which deletes a table staged on a DataCanvas. Off by default; applies only when DataCanvas is enabled (CANVAS_PROVIDER_TYPE=duckdb).","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.8.0","runtimeHint":"npx","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Selects the HTTP transport.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"CANVAS_PROVIDER_TYPE","description":"Set to 'duckdb' to enable DataCanvas staging: stage=true or a canvas_id on an openfda_search_* tool or openfda_lookup_ndc stages the matched records as a SQL table, and the openfda_dataframe_* tools are listed. The DuckDB binding ships with the server.","format":"string","required":false,"secret":false},{"name":"OPENFDA_DATAFRAME_DROP_ENABLED","description":"Enable openfda_dataframe_drop, which deletes a table staged on a DataCanvas. Off by default; applies only when DataCanvas is enabled (CANVAS_PROVIDER_TYPE=duckdb).","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} |
| 2026-10-05 | Runtime hints (raw): bun → npx |
| 2026-10-05 | Package versions (raw): 0.7.9 → 0.8.0 |
| 2026-10-05 | Environment variables (raw): OPENFDA_API_KEY, OPENFDA_MIRROR_ENABLED, OPENFDA_MIRROR_PATH, OPENFDA_MIRROR_REFRESH_CRON, OPENFDA_MIRROR_FALLBACK_LIVE, OPENFDA_MIRROR_REFRESH_TIMEOUT_MS, OPENFDA_MIRROR_BASE_URL, MCP_LOG_LEVEL, OPENFDA_API_KEY, MCP_TRANSPORT_TYPE, MCP_HTTP_HOST, MCP_HTTP_PORT, MCP_HTTP_ENDPOINT_PATH, MCP_AUTH_MODE, OPENFDA_MIRROR_ENABLED, OPENFDA_MIRROR_PATH, OPENFDA_MIRROR_REFRESH_CRON, OPENFDA_MIRROR_FALLBACK_LIVE, OPENFDA_MIRROR_REFRESH_TIMEOUT_MS, OPENFDA_MIRROR_BASE_URL, MCP_LOG_LEVEL → OPENFDA_API_KEY, CANVAS_PROVIDER_TYPE, OPENFDA_DATAFRAME_DROP_ENABLED, OPENFDA_MIRROR_ENABLED, OPENFDA_MIRROR_PATH, OPENFDA_MIRROR_REFRESH_CRON, OPENFDA_MIRROR_FALLBACK_LIVE, OPENFDA_MIRROR_REFRESH_TIMEOUT_MS, OPENFDA_MIRROR_BASE_URL, MCP_LOG_LEVEL, OPENFDA_API_KEY, MCP_TRANSPORT_TYPE, MCP_HTTP_HOST, MCP_HTTP_PORT, MCP_HTTP_ENDPOINT_PATH, MCP_AUTH_MODE, CANVAS_PROVIDER_TYPE, OPENFDA_DATAFRAME_DROP_ENABLED, OPENFDA_MIRROR_ENABLED, OPENFDA_MIRROR_PATH, OPENFDA_MIRROR_REFRESH_CRON, OPENFDA_MIRROR_FALLBACK_LIVE, OPENFDA_MIRROR_REFRESH_TIMEOUT_MS, OPENFDA_MIRROR_BASE_URL, MCP_LOG_LEVEL |
| 2026-09-23 | Declared version: 0.7.5 → 0.7.9 |
| 2026-09-23 | Last changed in the registry (raw): 2026-09-16 → 2026-09-22 |
| 2026-09-23 | First listed in the registry (raw): 2026-09-16 → 2026-09-22 |
| 2026-09-23 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.5","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.5","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} → {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.9","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.9","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} |
| 2026-09-23 | Package versions (raw): 0.7.5 → 0.7.9 |
| 2026-09-17 | Declared version: 0.7.4 → 0.7.5 |
| 2026-09-17 | Last changed in the registry (raw): 2026-08-25 → 2026-09-16 |
| 2026-09-17 | First listed in the registry (raw): 2026-08-25 → 2026-09-16 |
| 2026-09-17 | Connection paths (source structure): {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.4","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.4","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} → {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.5","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.5","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} |
| 2026-09-17 | Package versions (raw): 0.7.4 → 0.7.5 |
| 2026-09-08 | Connection paths (source structure): – → {"packages":[{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.4","runtimeHint":"bun","transport":"stdio","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false},{"registryType":"npm","identifier":"@cyanheads/openfda-mcp-server","version":"0.7.4","runtimeHint":"bun","transport":"streamable-http","environment":[{"name":"OPENFDA_API_KEY","description":"Free API key from open.fda.gov — increases daily limit from 1K to 120K requests.","format":"string","required":false,"secret":false},{"name":"MCP_TRANSPORT_TYPE","description":"Must be set to 'http' for streamable HTTP transport.","format":"string","required":true,"secret":false},{"name":"MCP_HTTP_HOST","description":"The hostname for the HTTP server.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_PORT","description":"The port to run the HTTP server on.","format":"string","required":false,"secret":false},{"name":"MCP_HTTP_ENDPOINT_PATH","description":"The endpoint path for the MCP server.","format":"string","required":false,"secret":false},{"name":"MCP_AUTH_MODE","description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_ENABLED","description":"Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_PATH","description":"Directory holding one SQLite file per mirrored dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_CRON","description":"Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_FALLBACK_LIVE","description":"Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_REFRESH_TIMEOUT_MS","description":"Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset.","format":"string","required":false,"secret":false},{"name":"OPENFDA_MIRROR_BASE_URL","description":"Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps.","format":"string","required":false,"secret":false},{"name":"MCP_LOG_LEVEL","description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[{"url":"https://openfda.caseyjhand.com/mcp","transport":"streamable-http","headers":[]}]} |
| 2026-08-26 | Description (raw): – → Query FDA data on drugs, food, devices, and recalls via openFDA. STDIO or Streamable HTTP. |
| 2026-08-26 | Declared version: 0.7.3 → 0.7.4 |
| 2026-08-26 | Last changed in the registry (raw): 2026-08-07 → 2026-08-25 |
| 2026-08-26 | First listed in the registry (raw): 2026-08-07 → 2026-08-25 |
| 2026-08-26 | Package versions (raw): 0.7.3 → 0.7.4 |
| 2026-08-16 | Last changed in the registry (raw): – → 2026-08-07 |
| 2026-08-16 | First listed in the registry (raw): – → 2026-08-07 |
| 2026-08-16 | Registry status message (raw): – → – |
| 2026-08-16 | Schema version of the raw record (raw): – → https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json |
| 2026-08-16 | Icon formats (raw): – → – |
| 2026-08-16 | Environment variable descriptions (raw): – → MCP_AUTH_MODE=Authentication mode to use: 'none', 'jwt', or 'oauth'. · MCP_HTTP_ENDPOINT_PATH=The endpoint path for the MCP server. · MCP_HTTP_HOST=The hostname for the HTTP server. · MCP_HTTP_PORT=The port to run the HTTP server on. · MCP_LOG_LEVEL=Sets the minimum log level for output (e.g., 'debug', 'info', 'warn'). · MCP_TRANSPORT_TYPE=Must be set to 'http' for streamable HTTP transport. · OPENFDA_API_KEY=Free API key from open.fda.gov — increases daily limit from 1K to 120K requests. · OPENFDA_MIRROR_BASE_URL=Host serving the openFDA bulk download manifest. Override only to harvest from a private mirror of the dumps. · OPENFDA_MIRROR_ENABLED=Serve exact-key lookups for drug/label, drug/ndc, drug/enforcement, and drug/drugsfda from a local bulk mirror instead of the API. Off by default; the initial harvest runs out-of-band via the mirror:init script. · OPENFDA_MIRROR_FALLBACK_LIVE=Fall back to the live API when the mirror is cold, missing the record, or failing. Disable to fail loudly instead. · OPENFDA_MIRROR_PATH=Directory holding one SQLite file per mirrored dataset. · OPENFDA_MIRROR_REFRESH_CRON=Cron expression for the in-process mirror refresh. HTTP transport only; stdio operators run mirror:refresh from the host. Requires the optional node-cron peer dependency. · OPENFDA_MIRROR_REFRESH_TIMEOUT_MS=Wall-clock budget for one scheduled refresh before it is aborted. Raise it for drug/label, the only multi-partition dataset. |
| 2026-08-16 | Environment variable formats (raw): – → string |
| 2026-08-16 | Delivery form (raw): – → package and remote |
| 2026-08-16 | Remote hosts (raw): – → openfda.caseyjhand.com |
| 2026-08-16 | Remote URLs (raw): – → https://openfda.caseyjhand.com/mcp |
| 2026-08-16 | Runtime hints (raw): – → bun |
| 2026-08-16 | Package versions (raw): – → 0.7.3 |
| 2026-08-16 | Package identifiers (raw): – → @cyanheads/openfda-mcp-server |
| 2026-08-16 | Repository subfolder (raw): – → – |
| 2026-08-16 | Repository platform (raw): – → github |
| 2026-08-16 | Path environment variables (raw): – → – |
| 2026-08-16 | Required secret headers (raw): – → – |
| 2026-08-08 | Declared version: 0.7.1 → 0.7.3 |
| 2026-08-06 | Declared version: – → 0.7.1 |
| 2026-08-06 | Repository URL listed: – → yes |
| 2026-08-06 | Path argument present: – → no |
| 2026-08-06 | Execution location: – → local |
| 2026-08-06 | Required secrets declared: – → no |
| 2026-08-06 | Package registries (raw): – → npm, npm |
| 2026-08-06 | Repository (raw): – → https://github.com/cyanheads/openfda-mcp-server |
| 2026-08-06 | Path arguments (raw): – → – |
This view pages forward and states no total: individual rows are dropped only at output time when their evidence is missing. A counted total would be larger than what is shown.
tracevero · https://tracevero.com/mcp/io-github-cyanheads-openfda-mcp-server/aenderungen