Low Risk

list_patients

List all patients with pagination. Returns full patient info including DOB and gender. This returns complete patient details - NO need to call get_comprehensive_patient_profile for each patient just to see DOB/gender. Search patients using search_patients or get_patient_by_mobile instead. Use...

Part of the Eka EMR MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.

AI agents call list_patients to retrieve information from Eka EMR without modifying any data. This is common in research, monitoring, and reporting workflows where the agent needs context before taking action. Because read operations don't change state, they are generally safe to allow without restrictions -- but you may still want rate limits to control API costs.

Even though list_patients only reads data, uncontrolled read access can leak sensitive information or rack up API costs. An agent caught in a retry loop could make thousands of calls per minute. A rate limit gives you a safety net without blocking legitimate use.

Read-only tools are safe to allow by default. No rate limit needed unless you want to control costs.

eka-care-emr.yaml
tools:
  list_patients:
    rules:
      - action: allow

See the full Eka EMR policy for all 17 tools.

Tool Name list_patients
Category Read
MCP Server Eka EMR MCP Server
Risk Level Low

View all 17 tools →

Agents calling read-class tools like list_patients have been implicated in these attack patterns. Read the full case and prevention policy for each:

Browse the full MCP Attack Database →

Other tools in the Read risk category across the catalogue. The same policy patterns (rate-limit, allow) apply to each.

What does the list_patients tool do? +

List all patients with pagination. Returns full patient info including DOB and gender. This returns complete patient details - NO need to call get_comprehensive_patient_profile for each patient just to see DOB/gender. Search patients using search_patients or get_patient_by_mobile instead. Use when the user wants to: - browse patients with their full details - scroll through patient records - view all patients with DOB, gender, name, mobile - refer to themselves without providing an identifier Do not use when patient identifier (oid) is known. Trigger Keywords: list patients, browse patient records, show all patients, view patient list Returns: List with oid (patient_id), fln (full legal name), mobile, dob, gen (gender). It is categorised as a Read tool in the Eka EMR MCP Server, which means it retrieves data without modifying state.

How do I enforce a policy on list_patients? +

Add a rule in your Intercept YAML policy under the tools section for list_patients. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the Eka EMR MCP server.

What risk level is list_patients? +

list_patients is a Read tool with low risk. Read-only tools are generally safe to allow by default.

Can I rate-limit list_patients? +

Yes. Add a rate_limit block to the list_patients rule in your Intercept policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block list_patients completely? +

Set action: deny in the Intercept policy for list_patients. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides list_patients? +

list_patients is provided by the Eka EMR MCP server (eka-care/emr). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policies on Eka EMR

Open source. One binary. Zero dependencies.

npx -y @policylayer/intercept
github.com/policylayer/intercept →
// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.