Agent skill · DevOps & Cloud

serving-openmed-rest-api

Stand up OpenMed's FastAPI REST service for clinical NER, PII extraction, and de-identification, with health checks, model keep-alive/unload, optional dynamic batching, and no-PHI logging. Use when the user wants to serve OpenMed over HTTP, deploy a de-id/NER REST API, run an inference endpoint for clinical text, add a /analyze or /pii/deidentify route, or containerize OpenMed as a service. Covers the service extra, launching create_app with uvicorn, the real endpoints (/health, /analyze, /pii/extract, /pii/deidentify, /models/loaded, /models/unload), request/response shapes, ServiceRuntime en

maziyarpanahigithub.com/maziyarpanahiGitHub ↗
claude-codeApache-2.0
Install
npx skills add maziyarpanahi/openmed --skill serving-openmed-rest-api --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 8 KB
Bundled scripts: none
Version: 1.0
Path: skills/serving-openmed-rest-api/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 4,851
Language: Python
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# Serving OpenMed over REST `openmed.service` is a hardened **FastAPI** app exposing OpenMed's NER, PII extraction, and de-identification over HTTP. It is built to be **self-hosted**: models run on-device, there's no telemetry, and the request schemas reject raw PHI from spilling into errors. Use it when callers need request/response inference; use `batch-processing-clinical-text` for corpora. ## When to use this skill To put OpenMed behind an HTTP endpoint your own apps call — an internal de-id microservice, an NER backend, a containerized inference tier. For agent/tool integration prefer the MCP server (`deploying-openmed-mcp`); for offline bulk work use batch processing. ## Quick start ```bash pip install "openmed[service]" # FastAPI + uvicorn + pydantic # Launch the ASGI app (factory create_app, or the module-level `app`) uvicorn openmed.service.app:app --host 127.0.0.1 --port 8000 ``` ```python # Or build it in-process (e.g. to mount under a parent app / add middleware): from openmed.service import create_app app = create_app() ``` ```bash curl -s localhost:8000/health # {"status":"ok","service":"openmed-rest","version":"...","profile":"prod"} curl -s localhost:8000/analyze -H

What's inside
Steps it walks through
  1. When to use this skill
  2. Quick start
  3. Endpoints (confirmed in openmed/service/app.py)
  4. Configuring the runtime (env vars)
  5. Workflow
  6. Containerizing
  7. Hand-off to / from OpenMed
  8. Edge cases & gotchas
  9. Standards & references
Commands it runs
pip install "openmed[service]"          # FastAPI + uvicorn + pydantic
Launch the ASGI app (factory create_app, or the module-level `app`)
uvicorn openmed.service.app:app --host 127.0.0.1 --port 8000
curl -s localhost:8000/health
curl -s localhost:8000/analyze -H 'content-type: application/json' -d '{
curl -s localhost:8000/pii/deidentify -H 'content-type: application/json' -d '{
uvicorn openmed.service.app:app --host 0.0.0.0 --port 8000
More from openmed
All skills →
About this skill
What does the serving-openmed-rest-api skill do?

Stand up OpenMed's FastAPI REST service for clinical NER, PII extraction, and de-identification, with health checks, model keep-alive/unload, optional dynamic batching, and no-PHI logging. Use when the user wants to serve OpenMed over HTTP, deploy a de-id/NER REST API, run an inference endpoint for clinical text, add a /analyze or /pii/deidentify route, or containerize OpenMed as a service. Covers the service extra, launching create_app with uvicorn, the real endpoints (/health, /analyze, /pii/extract, /pii/deidentify, /models/loaded, /models/unload), request/response shapes, ServiceRuntime en

How do I install it?

Run `npx skills add maziyarpanahi/openmed --skill serving-openmed-rest-api --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From maziyarpanahi/openmed, a repository with 4,851 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going