Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_datasets | ๐ List all available datasets and their status. Returns: A formatted string listing available datasets, indicating which one is active, and showing availability of local database and BigQuery support. |
| set_dataset | ๐ Switch the active dataset. Args: dataset_name: The name of the dataset to switch to (e.g., 'mimic-iv-demo'). Returns: Confirmation message with supported tools snapshot, or error if not found. |
| get_database_schema | ๐ Discover what data is available in the database. When to use: Start here to understand what tables exist. Returns: List of all available tables in the database with current backend info. |
| get_table_info | ๐ Explore a specific table's structure and see sample data. When to use: After identifying relevant tables from get_database_schema(). Args: table_name: Exact table name (case-sensitive). show_sample: Whether to include sample rows (default: True). Returns: Table structure with column names, types, and sample data. |
| execute_query | ๐ Execute SQL queries to analyze data. Recommended workflow:
Args: sql_query: Your SQL SELECT query (SELECT only). Returns: Query results or helpful error messages. |
| search_notes | ๐ Search clinical notes by keyword. Returns snippets around matches to prevent context overflow. Use get_note() to retrieve full text of specific notes. Note types: 'discharge' (summaries), 'radiology' (reports), or 'all' Args: query: Search term to find in notes. note_type: Type of notes to search ('discharge', 'radiology', or 'all'). limit: Maximum number of results per note type (default: 5). snippet_length: Characters of context around matches (default: 300). Returns: Matching snippets with note IDs for follow-up retrieval. |
| get_note | ๐ Retrieve full text of a specific clinical note. Warning: Clinical notes can be very long. Consider using search_notes() first to find relevant notes, or use max_length to truncate output. Args: note_id: The note ID (e.g., from search_notes or list_patient_notes). max_length: Optional maximum characters to return (truncates if exceeded). Returns: Full note text, or truncated version if max_length specified. |
| list_patient_notes | ๐ List available clinical notes for a patient. Returns note metadata (IDs, types, lengths) without full text. Use get_note(note_id) to retrieve specific notes. Cross-dataset tip: Get subject_id from MIMIC-IV queries, then use it here to find related clinical notes. Args: subject_id: Patient identifier (same as in MIMIC-IV). note_type: Type of notes to list ('discharge', 'radiology', or 'all'). limit: Maximum notes to return (default: 20). Returns: List of available notes with metadata for the patient. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |