Skip to main content
Glama
manolaz

Emergency Medicare Planner MCP Server

by manolaz

응급 의료 관리 MCP 서버

대장간 배지

(@manolaz/응급-메디케어-플래너-mcp-서버)

Google 지도와 통합되어 응급 상황 시 의료 시설의 위치를 파악하고 평가하는 강력한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 사용자가 특정 의료 요구, 응급 상황 등급 및 시설 역량에 따라 반경 10km 이내의 적합한 병원과 진료소를 찾을 수 있도록 지원합니다.

이 시스템은 실시간 경로, 이용 가능 여부 확인, 의료 서비스에 대한 자세한 정보를 제공하여 환자가 긴급 의료 상황에서 정보에 입각한 결정을 내리는 데 도움이 됩니다.

주요 기능 : 의학적 평가를 위한 순차적 사고 - 환자 증상과 병력을 기반으로 보다 정확한 의료 시설 매칭을 위한 단계별 임상 추론을 가능하게 합니다.

설치 및 사용

Smithery를 통해 설치

Claude Desktop용 Emergency Medicare Planner를 자동으로 설치하려면:

지엑스피1

수동 설치

# Using npx (recommended)
npx @manolaz/emergency-medicare-planner-mcp-server

# With environment variable for Google Maps API
GOOGLE_MAPS_API_KEY=your_api_key npx @manolaz/emergency-medicare-planner-mcp-server

또는 전역적으로 설치:

# Install globally
npm install -g @manolaz/emergency-medicare-planner-mcp-server

# Run after global installation
GOOGLE_MAPS_API_KEY=your_api_key emergency-medicare-planner-mcp-server

Related MCP server: google_maps_mcp

구성 요소

도구

  • 검색의료시설

    • Google Places API를 사용하여 병원, 진료소 및 의료 시설을 검색하세요

    • 입력:

      • query (문자열): 검색어(예: "응급실", "소아과")

      • location : 환자 위치의 위도와 경도

      • radius (선택 사항, 기본값: 10000): 검색 반경(미터)

      • specialtyNeeded (선택 사항): 의료 전문 분야가 필요합니다.

  • 의료시설 세부 정보 가져오기

    • 특정 의료 시설에 대한 자세한 정보를 얻으세요

    • 입력:

      • placeId (문자열): 의료 시설의 Google 장소 ID

    • 산출:

      • 운영 시간, 제공 서비스, 연락처 정보 등

  • 시설까지의 경로 계산

    • 의료 시설까지 가장 빠른 경로를 계산하세요

    • 입력:

      • origin : 환자의 현재 위치

      • facilityId : 목적지 시설의 장소 ID

      • transportMode (선택 사항): 이동 모드(운전, 도보, 대중교통, 구급차)

      • avoidTraffic (선택 사항): 교통 체증을 피하기 위한 경로 계획

  • 시설 이용 가능 여부 확인

    • 현재 시설에서 환자를 수용하고 있는지 확인하세요

    • 입력:

      • facilityId : 의료 시설의 장소 ID

      • emergencyLevel : 의료 상황의 긴급성 수준

구성

Claude Desktop과 함께 사용

Claude Desktop 앱과 함께 이 서버를 사용하려면 claude_desktop_config.json 의 "mcpServers" 섹션에 다음 구성을 추가하세요.

{
  "mcpServers": {
    "emergency-medicare-planner": {
      "command": "npx",
      "args": ["@manolaz/emergency-medicare-planner-mcp-server"],
      "env": {
        "GOOGLE_MAPS_API_KEY": "your_google_maps_api_key"
      }
    }
  }
}

또는 패키지가 설치되어 있다면 node 명령을 직접 사용할 수 있습니다.

{
  "mcpServers": {
    "emergency-medicare-planner": {
      "command": "node",
      "args": ["path/to/dist/index.js"],
      "env": {
        "GOOGLE_MAPS_API_KEY": "your_google_maps_api_key"
      }
    }
  }
}

개발

소스에서 빌드

  1. 저장소를 복제합니다

  2. 종속성 설치:

    npm install
  3. 프로젝트를 빌드하세요:

    npm run build

환경 변수

  • GOOGLE_MAPS_API_KEY (필수): 다음 API가 활성화된 Google Maps API 키:

    • 장소 API

    • 길찾기 API

    • 지오코딩 API

    • 시간대 API

    • 거리 매트릭스 API

테스트

# Run test suite
npm test

# Run with debug logging
DEBUG=emergency-medicare:* npm start

특허

이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 프로젝트 저장소의 LICENSE 파일을 참조하세요.

Available Tools

5 tools
check_medicare_coverageC

Checks what treatments and procedures are covered by Medicare

ParametersJSON Schema
NameRequiredDescriptionDefault
insuranceTypeNoType of Medicare insurance (e.g., Part A, Part B)
stateYesUS State code (e.g., CA, NY)
treatmentCodeYesMedicare treatment or procedure code

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'Checks' coverage, implying a read-only operation, but doesn't specify whether it requires authentication, has rate limits, returns detailed or summary information, or handles errors. This leaves significant gaps in understanding how the tool behaves beyond its basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and wastes no space, making it easy for an agent to parse quickly and understand the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of checking Medicare coverage, the lack of annotations and output schema, and the description's minimal detail, it's incomplete. It doesn't explain what the return value includes (e.g., coverage details, limitations, or next steps), which is crucial for a tool with no output schema, leaving the agent uncertain about the result format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting all three parameters (insuranceType, state, treatmentCode) with their types and purposes. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline score without compensating or enhancing the schema's information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Checks') and resource ('what treatments and procedures are covered by Medicare'), making it immediately understandable. However, it doesn't differentiate from sibling tools like 'find_nearby_medical_facilities' or 'get_emergency_contacts', which serve different healthcare-related functions, so it doesn't reach the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or how it relates to sibling tools such as 'schedule_emergency_transport' or 'sequentialthinking', leaving the agent to infer usage context without explicit direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_nearby_medical_facilitiesC

Finds hospitals and clinics nearby user location that match specific requirements

ParametersJSON Schema
NameRequiredDescriptionDefault
careQualityNoExpected quality of medical care
facilitiesNoTypes of medical facilities to search for
infrastructureNoQuality of infrastructure and cleanliness
priceRangeNoPrice range preference
radiusNoSearch radius in meters (default: 10000m = 10km)
treatmentNeedsNoSpecific medical treatments or services needed
userLocationYesUser's current location (address or coordinates)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'finds' and 'match specific requirements,' implying a read-only search operation, but fails to disclose critical traits: whether it requires authentication, rate limits, data freshness, error handling, or what the output format looks like (no output schema exists). For a tool with 7 parameters and no annotations, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose without unnecessary details. It wastes no words, making it appropriately concise. However, it could be slightly improved by structuring usage hints, but as-is, it's well-sized for its purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (7 parameters, no annotations, no output schema), the description is incomplete. It doesn't address behavioral aspects like authentication or rate limits, lacks output details, and provides no usage context. While the schema covers parameters well, the overall context for an AI agent to use this tool effectively is insufficient, especially for a search tool with multiple filters and no safety annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds minimal value beyond the input schema, which has 100% coverage with detailed parameter descriptions and enums. It mentions 'specific requirements,' hinting at parameters like 'careQuality' or 'treatmentNeeds,' but doesn't explain their semantics or relationships. With high schema coverage, the baseline is 3, as the schema does the heavy lifting, and the description doesn't compensate with additional insights.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Finds hospitals and clinics nearby user location that match specific requirements.' It specifies the verb ('finds'), resource ('hospitals and clinics'), and scope ('nearby user location'), distinguishing it from siblings like 'check_medicare_coverage' or 'schedule_emergency_transport.' However, it doesn't explicitly differentiate from all siblings (e.g., 'get_emergency_contacts' might also involve medical facilities), so it's not a perfect 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when-not scenarios (e.g., for non-medical emergencies or when insurance coverage is the primary concern) or explicitly refer to sibling tools like 'check_medicare_coverage' for coverage checks. Usage is implied by the purpose but lacks explicit context, scoring low due to the absence of clear alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_emergency_contactsC

Retrieves emergency contact information for a specific location

ParametersJSON Schema
NameRequiredDescriptionDefault
locationYesLocation to get emergency contacts for
serviceTypeNoTypes of emergency services needed

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Retrieves', implying a read-only operation, but doesn't cover aspects like authentication needs, rate limits, error handling, or what the return format looks like. This leaves significant gaps for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any redundant or unnecessary words. It is appropriately sized and front-loaded, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the retrieved information includes, how it's formatted, or any behavioral traits like permissions or limitations. For a tool with no structured support, this leaves the agent under-informed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with clear descriptions for both parameters ('location' and 'serviceType'), so the schema does the heavy lifting. The description adds no additional semantic context beyond implying the parameters are used for filtering, which aligns with the schema but doesn't provide extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Retrieves') and resource ('emergency contact information') with a specific scope ('for a specific location'), making the purpose unambiguous. However, it doesn't differentiate from sibling tools like 'find_nearby_medical_facilities' or 'schedule_emergency_transport', which might also involve emergency services, so it doesn't reach the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as the sibling tools. It mentions 'specific location' but doesn't specify prerequisites, exclusions, or contexts where this tool is preferred over others, leaving the agent with minimal usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

schedule_emergency_transportC

Arranges emergency medical transportation

ParametersJSON Schema
NameRequiredDescriptionDefault
destinationNoDestination hospital or clinic
medicalConditionYesBrief description of medical condition
patientLocationYesPatient's current location
urgencyYesLevel of urgency

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. 'Arranges' implies a write/mutation operation, but the description doesn't specify whether this triggers actual transportation, requires authorization, has side effects, or what happens after arrangement. This is inadequate for a tool that appears to perform a critical action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized for a tool with clear parameters documented elsewhere.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that appears to perform a critical emergency action with no annotations and no output schema, the description is insufficient. It doesn't explain what 'arranges' means operationally, what confirmation or response to expect, or any constraints or requirements beyond the basic parameters documented in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so all parameters are documented in the schema itself. The description doesn't add any parameter-specific information beyond what's already in the schema descriptions. This meets the baseline expectation when schema coverage is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('arranges') and resource ('emergency medical transportation'), making the purpose immediately understandable. However, it doesn't differentiate this tool from potential sibling tools like 'check_medicare_coverage' or 'find_nearby_medical_facilities' that might also relate to emergency medical services.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, constraints, or how it differs from sibling tools like 'get_emergency_contacts' or 'sequentialthinking' that might be relevant in emergency medical situations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sequentialthinkingA

A detailed tool for dynamic and reflective medical problem-solving through thoughts. This tool helps analyze medical problems through a flexible thinking process that can adapt and evolve. Each thought can build on, question, or revise previous insights as understanding of the medical situation deepens.

When to use this tool:

  • Breaking down complex medical problems into steps

  • Planning and designing treatment approaches with room for revision

  • Clinical analysis that might need course correction

  • Medical problems where the full scope might not be clear initially

  • Healthcare decisions that require a multi-step solution

  • Medical evaluations that need to maintain context over multiple steps

  • Situations where irrelevant medical information needs to be filtered out

Key features:

  • You can adjust total_thoughts up or down as the diagnosis progresses

  • You can question or revise previous medical assessments

  • You can add more diagnostic thoughts as new information emerges

  • You can express clinical uncertainty and explore alternative approaches

  • Not every medical assessment needs to build linearly - you can branch or backtrack

  • Generates a clinical hypothesis

  • Verifies the hypothesis based on the Chain of Thought steps

  • Repeats the process until a satisfactory diagnosis or treatment plan is reached

  • Provides a correct medical assessment or recommendation

ParametersJSON Schema
NameRequiredDescriptionDefault
branchFromThoughtNoBranching point thought number for alternative diagnosis
branchIdNoBranch identifier for the diagnostic path
isRevisionNoWhether this revises previous medical thinking
needsMoreThoughtsNoIf more clinical evaluation is needed
nextThoughtNeededYesWhether another medical assessment step is needed
revisesThoughtNoWhich medical assessment is being reconsidered
thoughtYesYour current clinical thinking step
thoughtNumberYesCurrent thought number
totalThoughtsYesEstimated total thoughts needed for complete evaluation

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses key behavioral traits like adaptability ('can adjust total_thoughts'), revision capabilities ('question or revise previous medical assessments'), and iterative nature ('Repeats the process until a satisfactory diagnosis'). However, it lacks details on error handling, performance limits, or authentication needs, leaving gaps for a tool with 9 parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and usage guidelines, but becomes verbose in 'Key features' with repetitive points (e.g., multiple lines on revision and branching). Sentences like 'Generates a clinical hypothesis' and 'Verifies the hypothesis' could be condensed. Overall, it's informative but could be more streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description provides good usage context and behavioral hints. However, for a complex tool with 9 parameters involving medical decision-making, it lacks details on output format, error cases, or security considerations, making it incomplete for full agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds minimal semantic context beyond the schema, such as implying 'total_thoughts' is adjustable and 'thought' represents 'clinical thinking step,' but doesn't elaborate on parameter interactions or usage examples. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool enables 'dynamic and reflective medical problem-solving through thoughts' and 'helps analyze medical problems through a flexible thinking process.' It specifies the domain (medical) and core function (problem-solving via sequential thoughts). However, it doesn't explicitly differentiate from sibling tools like 'check_medicare_coverage' or 'find_nearby_medical_facilities,' which serve different purposes rather than overlapping in medical analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit 'When to use this tool' guidance with seven specific scenarios, such as 'Breaking down complex medical problems into steps' and 'Clinical analysis that might need course correction.' It clearly outlines appropriate contexts without mentioning alternatives, which is sufficient given the siblings are unrelated (e.g., coverage checks, facility finding).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv1.0.0
    • First observedcheck_medicare_coverage
    • First observedfind_nearby_medical_facilities
    • First observedget_emergency_contacts
    • First observedschedule_emergency_transport
    • First observedsequentialthinking

TDQS

B3/5.0

Scored across 5 tools

Disambiguation3/5

Four tools have distinct purposes (coverage check, facility finding, contact retrieval, transport scheduling), but the 'sequentialthinking' tool is ambiguous—it overlaps with the analytical aspects of the other tools and lacks a clear boundary, potentially causing misselection for medical problem-solving tasks. The descriptions help differentiate the core four, but the fifth introduces confusion.

Naming Consistency2/5

Four tools follow a consistent verb_noun pattern (e.g., check_medicare_coverage, find_nearby_medical_facilities), but 'sequentialthinking' deviates significantly with a single, non-standard noun. This mixing of conventions (snake_case vs. lowercase compound) reduces predictability and readability across the tool set.

Tool Count4/5

With 5 tools, the count is reasonable for an emergency medical planning server, covering key functions like coverage, facilities, contacts, and transport. It's slightly under-scoped as it lacks tools for updating or managing data, but overall, each tool earns its place without feeling excessive or thin.

Completeness3/5

The tool set covers core emergency planning aspects (coverage, facilities, contacts, transport) but has notable gaps: there are no tools for updating information (e.g., modify contacts or schedules), managing user profiles, or handling post-emergency follow-ups. The 'sequentialthinking' tool adds analytical depth but doesn't fill these operational gaps, leaving the surface incomplete for full lifecycle coverage.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables location-aware AI agents to search for nearby places, get detailed place information including hours and ratings, and calculate routes with turn-by-turn directions using Google Maps APIs.
    22
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables querying Google Maps and Places APIs for local businesses and tourist attractions in India through a simple MCP interface.
    17 PyPI
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables emergency medical coordination with tools for triage, medication guidance, blood donor outreach, mass casualty simulation, and emergency plan generation.
    MIT