{"_id":"@omophub/omophub-mcp","_rev":"14-a358a29feffe1f84d80f11b476904980","name":"@omophub/omophub-mcp","dist-tags":{"latest":"1.6.3"},"versions":{"1.1.0":{"name":"@omophub/omophub-mcp","version":"1.1.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.1.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"52aba886ae051b0b884caadcd0fc098b95d6667f","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.1.0.tgz","fileCount":83,"integrity":"sha512-36Tc4cHTPzWxHb0SOctN8MOz4wsfhjn2dC5Ce7HDBw3xT9G9ouLcsQPN9jMkP6k8RLWxYcBIMUjEogJvvlR5Wg==","signatures":[{"sig":"MEUCIQDt1yF0ngNQDmOQ4krD54gecgGHDq//VEI5A2i2O/ZyQQIgbwkIxgpHNeVjEnSKj86kr+m1d+8QFzhsgq2jhq9/nB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":130489},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"402ff8c9886552b83275acc975a16c16711f2084","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OHDSI OMOP standardized medical vocabularies — search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.0","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.1.0_1772701670456_0.5265307463891296","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@omophub/omophub-mcp","version":"1.2.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.2.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"7e092f98563cf9a15f521f2aaf966e268cdc4df1","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.2.0.tgz","fileCount":95,"integrity":"sha512-4vlChMgXZfpWPCBY3/Ac6s2glf8lXt0byPRNDcddypsTrPPPugT/thASW/yhjxk6JzqrX0cHZydfyZO1c9HA1g==","signatures":[{"sig":"MEYCIQC/LQ1n95jLVfsnWy/2HT3N1lkjfRy33UG78GaKXOy6aAIhAPU8ThOkgs2U3J5MwDaSDqF70B+XxTntBehaXIU+NDls","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":167961},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"c1cd2f0579dcf9dcda2673bda5730cf9600a881a","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OHDSI OMOP standardized medical vocabularies — search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.2.0_1774625784963_0.05297030903748312","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@omophub/omophub-mcp","version":"1.2.2","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.2.2","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"a03a4814d04e648dd131aa39fdfc23d25e2d368e","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.2.2.tgz","fileCount":95,"integrity":"sha512-m+f+p2sw/Hm2yEt38qCyiO2EWOXUJ2eTXC1YlvJyzb3UF+hPkQEVFV9PJgL3mc3TFZd0PZ8zuAdv7/YrfMhChg==","signatures":[{"sig":"MEQCIFV+Yxi6PVDS28iZsjxvoKZN681D1h46mGDKtQsWIJkLAiBWopZMdmuXc2bAM0P6YsYGwKK6QsZ0/CyJBaX3ZxQ1aA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":167961},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"b3c830f29b83c2efe786bc380370a11108251ae5","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.4","description":"MCP server for OHDSI OMOP standardized medical vocabularies — search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.2.2_1775039892332_0.5482397917830555","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@omophub/omophub-mcp","version":"1.3.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.3.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"7b71c739a8c185f905f6923dcc83e4223c4d5b08","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.3.0.tgz","fileCount":99,"integrity":"sha512-VYPbnvOPCWYWRirYoAcl5ttH8Yc8RKaVUdhU9pWmYkeZO4/AMrASzZkp6++M6XnWL0P7kghm+EnP4VZmV/EJ/Q==","signatures":[{"sig":"MEYCIQD8UShnMM0rc4/hWLfpw4gqlB9kJYTiwTkiwpJp6PZw1gIhALrB5najgDmZ1CvkNP9W7jFTqOFxpptqzKMm3a2+QirP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179522},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"679c7ff35ff2f9282fdc65b90bc0cbefde411e26","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OHDSI OMOP standardized medical vocabularies — search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.3.0_1775167105695_0.9125822300353246","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@omophub/omophub-mcp","version":"1.3.1","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.3.1","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"40f85d2b76e7100e2697d9621addb6b31ae5d281","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.3.1.tgz","fileCount":99,"integrity":"sha512-aY3Dw4BV2PEtsAIQHw79y0sUJHT3woklwP/xt94dlvrF22pvMBXl2aN8KlDStOffX68J1GXYSDPQxMergC19Kw==","signatures":[{"sig":"MEQCIDO2UpC1ppeSBIneOTrX9i/Ia6he1QiUHXHbQIv0h71aAiASpIeYMmnmFwgZibPkQsB2p8BVm5oOfxKREMmOigkR0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":188521},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"34b01de2ce1611b3e6afa7ec2ca4b8938f2dabee","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.3.1_1775485303002_0.34583064539968555","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@omophub/omophub-mcp","version":"1.4.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.4.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"eb00a0d7802338bc47b80a59dbb77b0597230c5e","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.4.0.tgz","fileCount":103,"integrity":"sha512-CCY46OyHRBjwkVck/Uxa9sC3Fv+VvagaLwzgU4/GqxppDNlegdmGSQXmPi2EMvznZNqxGKLnz7v3hfxxpgee/A==","signatures":[{"sig":"MEUCIGGdcb3Sc6WzGY2YwgCXllT/RXjjBF9tZ05PYpohYL6JAiEAgrZ57az7tq2+VBS3AIw72tfXmQdYWrDdduYUDYxSz10=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":202052},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"85937134f206fa623ef0b66858555b935bce1b1e","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.4.0_1775856069878_0.8873642760668043","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@omophub/omophub-mcp","version":"1.5.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.5.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"f49f885b20dc85ce296fb791fd64b6dcc670661d","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.5.0.tgz","fileCount":103,"integrity":"sha512-9G6tjDmBpNyxsB9QcIIWMW1pXyLf3dEXKE37LOpWc9MpFqisWycCHM67CXJNNQwgT8Qcq2YEn85nCbMoFjGdQw==","signatures":[{"sig":"MEUCIFIrJg3Jvs/QBr7lL0UmCcuQXvTlFgs0rhyYxdz8pM7DAiEAnpVsU56fhATvfvF4XCQ9EIBq/B4XzffWC3Hq2EhZ0Ho=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":204667},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"580cd66cef775b78944898b87251ade008398134","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.5.0_1779711581674_0.5328654590072068","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@omophub/omophub-mcp","version":"1.5.1","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.5.1","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"8533ea7ae5b646d8f44528b798eb0fff9b444c52","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.5.1.tgz","fileCount":103,"integrity":"sha512-uZGnWqiklDJpFgJNZqFgxyLpU1qntVeRIDlsGftLoW42UENUBRQGAHVT7ZxLjz0Y+xW8M1dBK/UiUEzbpojXug==","signatures":[{"sig":"MEUCIQDnsDBOpIi9iG5mzt0W5+hF3I/hNnUClJMPwXtsalQ/oQIgLdmh5x9o1XqVqbae8l6CSxuKUJhQNeEpEOM8IU0RU+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205626},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"a67ac7ea14e6d36c57ff16962993634a9a784b71","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^3.2.4","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.5.1_1780314685049_0.40901523535070705","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@omophub/omophub-mcp","version":"1.5.2","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.5.2","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"c71e2ee5bdec8142784ccaf7cf89b15ae472cee9","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.5.2.tgz","fileCount":103,"integrity":"sha512-iLuMyFM8cSo2GXb79kkZg0WwU/enk8rCGILpp7hWd84lGXngCUW/GJEpBn9d5titd0mUIV1sh3KyK8UZrYq+pw==","signatures":[{"sig":"MEUCIG1T0ducjSjiPsXoSJjH3BLvksKkOIGNwqelIxvj3deyAiEAkM7DB0EeEcggpuhI1XAQAsiMHOmqPipW2lPCanpAuBg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205626},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"dfe4c567b6184863ed067d7856078a01b396c40e","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.5.2_1780399696410_0.6284839123958919","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@omophub/omophub-mcp","version":"1.5.3","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.5.3","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"f8ac04b459f03e123f67605243d424177cac02f4","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.5.3.tgz","fileCount":103,"integrity":"sha512-H8QolXUDzDNGu/66FctqpgayW1Vm89llc6XETIpBJk31mQK/V0TngadPh6hB1c2OXTaTKhFOD86AVCmK1vjmrA==","signatures":[{"sig":"MEYCIQCcDQMBXfisb4xcYj7PGYExnzMT3JYJXi+tAd7+djlO2wIhAMGWcZ3Bbgz1yPzytXfL19C3AjKAODWL7U2F8W28ydVV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":238078},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"2b0a0727820e4c73221c98a9e68204416f02e452","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.5.3_1784664406036_0.22347325583749877","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@omophub/omophub-mcp","version":"1.6.0","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.6.0","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"1ea4e1255f5265b77d23b6fa244a203a40f4d649","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.6.0.tgz","fileCount":103,"integrity":"sha512-mGhsxGVXAcC6xB4ppctTPFvPmqX2z4ophJ8BLPmdoe/+2nsmoCIq1/MQeLy2TNNQd17krY5xAZdPNnuxdlwrqA==","signatures":[{"sig":"MEUCIQCoeVHzqZExuqTPO+yyvrk7Cw6NKAvB1Atg5I/xeaSfsgIgBfbnQj2x/3Bq0u0hFgEg/JTSnMWdSImK0fXScgDb8Bo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":250495},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"735a7c99fecd650f0a12dfd7be841a9ca8bdbf26","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"overrides":{"hono":">=4.12.34","postcss":">=8.5.18","fast-uri":">=3.1.5 <4.0.0","ip-address":">=10.3.1","@hono/node-server":">=2.0.10"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.6.0_1785863148880_0.3479372596011976","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@omophub/omophub-mcp","version":"1.6.1","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.6.1","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"4dde6926af4e36bef878c5b6331eabd03aaf8cfb","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.6.1.tgz","fileCount":103,"integrity":"sha512-Lxgy6CmNoKYrxBQg3OuwByRXI4ffuWNsinnXVb4kGWmOzegRJUyFbK4zREMFFWw3JFRQ37OCzB+4Kr1sOHXJfA==","signatures":[{"sig":"MEUCIDkraZitfSCEKE7lrHQy2SmLcwXB5t9J9OFuDJIoB275AiEAqnOmmnLC5LtnaRE3bRMzsSJZRpn5Tj80JGHeSQ7DzQI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":252796},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"a34ae76ef37553152eb40ede8d3eaec59cecf697","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"overrides":{"hono":">=4.12.34","postcss":">=8.5.18","fast-uri":">=3.1.5 <4.0.0","ip-address":">=10.3.1","@hono/node-server":">=2.0.10"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.6.1_1785879378084_0.4627833955674483","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@omophub/omophub-mcp","version":"1.6.2","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"author":{"name":"OMOPHub"},"license":"MIT","_id":"@omophub/omophub-mcp@1.6.2","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"homepage":"https://omophub.com","bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"bin":{"omophub-mcp":"dist/index.js"},"dist":{"shasum":"a5c68c824396f1d9e271abea146c2b5b311bc64d","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.6.2.tgz","fileCount":103,"integrity":"sha512-YYrVXcKo0HbyU981NuxDEY0N/TwQ+jUB/61brVoZxvCpHPosyiV/NTr/sAoLU8NuG7rJ7MMPaBCwrZYcg05SVw==","signatures":[{"sig":"MEYCIQDHqQi7PWdcK1K6TMkR2eIgF8lseol7UafWY4aW8hzhqAIhAPgT8sd+XerKpViFblWOzpO5of59lfuCNUxczxaJoqgu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@omophub%2fomophub-mcp@1.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":253627},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"gitHead":"8608d91c1b30bf991e8ad3549ee9289af96b454c","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"overrides":{"hono":">=4.12.34","postcss":">=8.5.18","fast-uri":">=3.1.5 <4.0.0","ip-address":">=10.3.1","@hono/node-server":">=2.0.10"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"10.9.8","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/omophub-mcp_1.6.2_1786381905969_0.9249295480977324","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"_id":"@omophub/omophub-mcp@1.6.3","bin":{"omophub-mcp":"dist/index.js"},"bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"dist":{"shasum":"c9bc116d2d646925b5b687f40d80069e70926cf6","tarball":"https://registry.npmjs.org/@omophub/omophub-mcp/-/omophub-mcp-1.6.3.tgz","fileCount":107,"integrity":"sha512-l28ujUi+JKkaUX8e4M7vwvoG1ZpllGeyf2xYTUI4X6sfV+/L/MDmDWcGTJ/8NXMBgDX33zXyKtvStxqKI1P0zA==","signatures":[{"sig":"MEYCIQCe/bpDBzNueMT0fs5vx+qh4yqDfyioWeVOU5BW+ZE/eAIhAJqG1sWwbPA0FiCcBKOAKZT4K/FHz4gH9LCTVy2+s8Ne","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIA2rZF1h0NL0wMPdUVhCTnsucxmtyBBODiv7OBncgXTsAiEAyJpm7XFtljBOr84M9N5wSiy7puOAtfN8dyAQKf78bts="}],"unpackedSize":263199},"main":"dist/index.js","name":"@omophub/omophub-mcp","type":"module","types":"./dist/index.d.ts","author":{"name":"OMOPHub"},"engines":{"node":">=20"},"gitHead":"dca6a7ab0dee58e2bf8f72718b842730b8a734d6","license":"MIT","mcpName":"io.github.OMOPHub/omophub-mcp","scripts":{"dev":"tsx src/index.ts","lint":"biome check src/ test/","test":"vitest run","build":"tsc","start":"node dist/index.js","format":"biome format --write src/ test/","lint:fix":"biome check --write src/ test/","typecheck":"tsc --noEmit","start:http":"node dist/index.js --transport=http","test:watch":"vitest","format:check":"biome format --check src/ test/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build"},"version":"1.6.3","_npmUser":{"name":"alex-omophub","email":"sdk@omophub.com"},"homepage":"https://omophub.com","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"overrides":{"qs":">=6.16.0","hono":">=4.12.34","postcss":">=8.5.18","fast-uri":">=3.1.7 <4.0.0","ip-address":">=10.3.1","@hono/node-server":">=2.0.10"},"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"_npmVersion":"11.16.0","description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","directories":{},"maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"_nodeVersion":"24.18.1","dependencies":{"zod":"^4.3.6","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","vitest":"^4.1.8","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.4.4","@vitest/coverage-v8":"^4.1.8"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/omophub-mcp_1.6.3_1788814945902_0.047744385647046306"}}},"time":{"created":"2026-03-05T09:07:50.352Z","modified":"2026-09-07T21:02:26.279Z","1.1.0":"2026-03-05T09:07:50.619Z","1.2.0":"2026-03-27T15:36:25.114Z","1.2.2":"2026-04-01T10:38:12.474Z","1.3.0":"2026-04-02T21:58:25.849Z","1.3.1":"2026-04-06T14:21:43.153Z","1.4.0":"2026-04-10T21:21:10.063Z","1.5.0":"2026-05-25T12:19:41.808Z","1.5.1":"2026-06-01T11:51:25.210Z","1.5.2":"2026-06-02T11:28:16.548Z","1.5.3":"2026-07-21T20:06:46.176Z","1.6.0":"2026-08-04T17:05:49.038Z","1.6.1":"2026-08-04T21:36:18.233Z","1.6.2":"2026-08-10T17:11:46.171Z","1.6.3":"2026-09-07T21:02:26.004Z"},"bugs":{"url":"https://github.com/OMOPHub/omophub-mcp/issues"},"author":{"name":"OMOPHub"},"license":"MIT","homepage":"https://omophub.com","keywords":["mcp","mcp-server","model-context-protocol","omop","ohdsi","medical-vocabularies","snomed","icd10","rxnorm","loinc","healthcare","clinical-data","ai-agent","vocabulary-mapping","concept-mapping","athena"],"repository":{"url":"git+https://github.com/OMOPHub/omophub-mcp.git","type":"git"},"description":"MCP server for OHDSI OMOP standardized medical vocabularies - search, lookup, map, and navigate concepts via AI agents","maintainers":[{"name":"alex-omophub","email":"sdk@omophub.com"}],"readme":"<h1>OMOPHub MCP Server</h1>\n\n<p>\n  <strong>Medical vocabularies for AI agents.</strong><br/>\n  Search, map, and navigate 11M+ OMOP concepts: SNOMED CT, ICD-10, RxNorm, LOINC, and more. Directly from Claude, Cursor, VS Code, or any MCP-compatible client.\n</p>\n\n<p>\n  <a href=\"https://www.npmjs.com/package/@omophub/omophub-mcp\"><img src=\"https://img.shields.io/npm/v/@omophub/omophub-mcp?style=flat-square&color=cb3837&label=npm\" alt=\"npm version\" /></a>\n  <a href=\"https://app.codecov.io/gh/OMOPHub/omophub-mcp?branch=main\"><img src=\"https://codecov.io/gh/OMOPHub/omophub-mcp/branch/main/graph/badge.svg\" alt=\"Codecov\" /></a>\n  <a href=\"https://www.npmjs.com/package/@omophub/omophub-mcp\"><img src=\"https://img.shields.io/npm/dm/@omophub/omophub-mcp?style=flat-square&color=blue\" alt=\"npm downloads\" /></a>\n  <a href=\"https://github.com/OMOPHub/omophub-mcp/blob/main/LICENSE\"><img src=\"https://img.shields.io/github/license/OMOPHub/omophub-mcp?style=flat-square\" alt=\"License\" /></a>\n  <a href=\"https://github.com/OMOPHub/omophub-mcp\"><img src=\"https://img.shields.io/badge/TypeScript-5.x-3178c6?style=flat-square&logo=typescript&logoColor=white\" alt=\"TypeScript\" /></a>\n  <a href=\"https://modelcontextprotocol.io\"><img src=\"https://img.shields.io/badge/MCP-compatible-green?style=flat-square\" alt=\"MCP Compatible\" /></a>\n</p>\n\n<p>\n  <a href=\"#quick-start\">Quick Start</a> ·\n  <a href=\"#available-tools\">Tools</a> ·\n  <a href=\"#example-prompts\">Examples</a> ·\n  <a href=\"https://docs.omophub.com\">Docs</a> ·\n  <a href=\"https://omophub.com\">Website</a>\n</p>\n\n---\n\n## Why OMOPHub MCP?\n\nWorking with medical vocabularies today means downloading multi-gigabyte CSV files, loading them into a local database, and writing SQL to find what you need. Every time.\n\n**OMOPHub MCP Server gives your AI assistant instant access to the entire OHDSI ATHENA vocabulary**. No database setup, no CSV wrangling, no context switching. Just ask.\n\n```\nYou: \"Map ICD-10 code E11.9 to SNOMED\"\n\nClaude: Found it - E11.9 (Type 2 diabetes mellitus without complications)\n        maps to SNOMED concept 201826 (Type 2 diabetes mellitus)\n        via standard 'Maps to' relationship.\n```\n\n**Use cases:**\n- **Concept lookup** - Find OMOP concept IDs for clinical terms in seconds\n- **Cross-vocabulary mapping** - Map between ICD-10, SNOMED, RxNorm, LOINC, and 120+ vocabularies\n- **Hierarchy navigation** - Explore ancestors and descendants for phenotype definitions\n- **Concept set building** - Let your AI agent assemble complete concept sets for cohort definitions\n- **Code validation** - Verify medical codes and check their standard mappings\n\n---\n\n## Quick Start\n\n### 1. Get an API Key\n\nSign up at [omophub.com](https://omophub.com) → create an API key in your [dashboard](https://dashboard.omophub.com/api-keys).\n\n### 2. Add to Your AI Client\n\n<details open>\n<summary><strong>Claude Desktop</strong></summary>\n\nOpen Claude Desktop settings > \"Developer\" tab > \"Edit Config\". Add to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"omophub\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@omophub/omophub-mcp\"],\n      \"env\": {\n        \"OMOPHUB_API_KEY\": \"oh_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary><strong>Claude Code</strong></summary>\n\n```bash\nclaude mcp add omophub -- npx -y @omophub/omophub-mcp\n# Then set OMOPHUB_API_KEY in your environment\n```\n\n</details>\n\n<details>\n<summary><strong>Cursor</strong></summary>\n\nOpen the command palette and choose \"Cursor Settings\" > \"MCP\" > \"Add new global MCP server\". Add to `.cursor/mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"omophub\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@omophub/omophub-mcp\"],\n      \"env\": {\n        \"OMOPHUB_API_KEY\": \"oh_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary><strong>VS Code</strong></summary>\n\nAdd to `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"omophub\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@omophub/omophub-mcp\"],\n      \"env\": {\n        \"OMOPHUB_API_KEY\": \"oh_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary><strong>Streamable HTTP (Remote / Hosted)</strong></summary>\n\nRun the MCP server as an HTTP service that clients connect to via URL:\n\n```bash\n# Start HTTP server on port 3100\nnpx -y @omophub/omophub-mcp --transport=http --port=3100 --api-key=oh_your_key_here\n\n# MCP endpoint: http://localhost:3100/mcp\n# Health check:  http://localhost:3100/health\n```\n\nConnect MCP clients to `/` or `/mcp`. Useful for centralized deployments where multiple AI agents share one server instance.\n\n</details>\n\n<details>\n<summary><strong>Hosted (mcp.omophub.com)</strong></summary>\n\nConnect directly to the OMOPHub-hosted MCP server - no installation required. Each client authenticates with their own API key via the `Authorization` header:\n\n**Claude Code:**\n```bash\nclaude mcp add omophub --transport http \\\n  -H \"Authorization: Bearer oh_your_key_here\" \\\n  https://mcp.omophub.com\n```\n\n**VS Code** (`.vscode/mcp.json`):\n```json\n{\n  \"servers\": {\n    \"omophub\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.omophub.com\",\n      \"headers\": { \"Authorization\": \"Bearer oh_your_key_here\" }\n    }\n  }\n}\n```\n\n**Cursor / Windsurf:**\n```json\n{\n  \"mcpServers\": {\n    \"omophub\": {\n      \"url\": \"https://mcp.omophub.com\",\n      \"headers\": { \"Authorization\": \"Bearer oh_your_key_here\" }\n    }\n  }\n}\n```\n\n> **Note:** Claude Desktop's Custom Connectors UI only supports OAuth and cannot send custom headers. Use the [npx setup](#claude-desktop) instead.\n\n</details>\n\n<details>\n<summary><strong>Docker</strong></summary>\n\n```bash\n# HTTP mode (default in Docker) - serves MCP on port 3100\ndocker run -e OMOPHUB_API_KEY=oh_your_key_here -p 3100:3100 omophub/omophub-mcp\n\n# Stdio mode (for piping)\ndocker run -i -e OMOPHUB_API_KEY=oh_your_key_here omophub/omophub-mcp --transport=stdio\n```\n\n</details>\n\n### 3. Start Asking\n\n> \"What's the OMOP concept ID for type 2 diabetes?\"\n\n> \"Map ICD-10 code E11.9 to SNOMED\"\n\n> \"Show me all descendants of Diabetes mellitus in SNOMED\"\n\n---\n\n## Available Tools\n\n| Tool | What it does |\n| :--- | :--- |\n| `search_concepts` | Search for medical concepts by name or clinical term across all vocabularies |\n| `get_concept` | Get detailed info about a specific OMOP concept by `concept_id` |\n| `get_concept_by_code` | Look up a concept using a vocabulary-specific code (e.g., ICD-10 `E11.9`) |\n| `map_concept` | Map a concept to equivalent concepts in other vocabularies (paginated — see note below) |\n| `get_hierarchy` | Navigate concept hierarchy - ancestors, descendants, or both |\n| `list_vocabularies` | List available medical vocabularies with statistics |\n| `semantic_search` | Search using natural language with neural embeddings (understands clinical meaning) |\n| `find_similar_concepts` | Find concepts similar to a reference concept, name, or description |\n| `explore_concept` | Get concept details, hierarchy, and cross-vocabulary mappings in one call |\n| `fhir_resolve` | Resolve a FHIR coded value (incl. administrative codes via the HL7 FHIR-to-OMOP IG ConceptMaps) to its OMOP standard concept and CDM target table |\n| `fhir_resolve_codeable_concept` | Resolve a FHIR CodeableConcept — best match by OHDSI vocabulary preference, honoring `userSelected` |\n\n### Resources\n\n| URI | Description |\n| :--- | :--- |\n| `omophub://vocabularies` | Full vocabulary catalog with statistics |\n| `omophub://vocabularies/{vocabulary_id}` | Details for a specific vocabulary |\n\n### Prompts\n\n| Prompt | Description |\n| :--- | :--- |\n| `phenotype-concept-set` | Guided workflow to build a concept set for a clinical phenotype |\n| `code-lookup` | Look up and validate a medical code with mappings and hierarchy |\n\n---\n\n## Example Prompts\n\n**Find a concept →** `search_concepts`\n> \"Search for metformin in RxNorm\"\n\n**Cross-vocabulary mapping →** `map_concept`\n> \"I have SNOMED concept 201826 - what's the ICD-10 code?\"\n\n**Build a concept set →** `search_concepts` → `get_hierarchy` → `map_concept`\n> \"Help me build a concept set for Type 2 diabetes including all descendants\"\n\n> **Completeness matters here.** `map_concept` returns one page at a time\n> (`page_size` 1-200, default 100). A widely-used drug ingredient can have well over\n> a thousand NDC mappings, so a single call is a sample, not the answer. Check\n> `has_more` in the response and keep incrementing `page` until it is `false` —\n> otherwise the concept set looks complete while silently missing codes.\n>\n> Use `find_similar_concepts` for exploration, not for this: it is ranked embedding\n> similarity, so it has no notion of set membership and cannot be exhaustive no\n> matter how large `page_size` is.\n\n**Validate a code →** `get_concept_by_code` → `map_concept`\n> \"Is ICD-10 code E11.9 valid? What does it map to in SNOMED?\"\n\n**Semantic search →** `semantic_search`\n> \"Find concepts related to 'heart attack'\"\n\n**Explore a concept →** `explore_concept`\n> \"Give me everything about SNOMED concept 201826\"\n\n**FHIR-to-OMOP resolution →** `fhir_resolve`\n> \"Resolve FHIR SNOMED code 44054006 to OMOP — what table does it go in?\"\n\n**CodeableConcept →** `fhir_resolve_codeable_concept`\n> \"This CodeableConcept has both SNOMED 44054006 and ICD-10 E11.9 — which should I use for OMOP?\"\n\n**Find similar →** `find_similar_concepts`\n> \"What concepts are similar to 'Type 2 diabetes mellitus'?\"\n\n---\n\n## Configuration\n\n### Environment Variables\n\n| Variable | Required | Description |\n| :--- | :---: | :--- |\n| `OMOPHUB_API_KEY` | ✅ | Your OMOPHub API key |\n| `OMOPHUB_BASE_URL` | | Custom API base URL (default: `https://api.omophub.com/v1`) |\n| `OMOPHUB_LOG_LEVEL` | | `debug` · `info` · `warn` · `error` (default: `info`) |\n| `OMOPHUB_ANALYTICS_OPTOUT` | | Set to `true` to disable analytics headers |\n| `OMOPHUB_USER_AGENT_SUFFIX` | | Optional deployment identifier appended to `omophub-mcp/<version>` (default: none) |\n| `MCP_TRANSPORT` | | `stdio` (default) or `http` |\n| `MCP_PORT` | | HTTP server port (default: `3100`, only used with `http` transport) |\n| `HEALTH_PORT` | | Port for standalone health endpoint in stdio mode (default: disabled) |\n\n### CLI Arguments\n\n```bash\n# Stdio mode (default)\nnpx @omophub/omophub-mcp --api-key=oh_your_key --base-url=https://custom.api.com/v1\n\n# HTTP mode\nnpx @omophub/omophub-mcp --transport=http --port=3100 --api-key=oh_your_key\n\n# Stdio mode with standalone health endpoint\nnpx @omophub/omophub-mcp --api-key=oh_your_key --health-port=8080\n```\n\n### Health Endpoint (Docker / Kubernetes)\n\nIn **HTTP mode**, the health endpoint is available at `/health` on the same port as the MCP endpoint:\n\n```bash\nnpx @omophub/omophub-mcp --transport=http --port=3100 --api-key=oh_your_key\ncurl http://localhost:3100/health\n# → {\"status\":\"ok\",\"version\":\"1.5.0\",\"uptime_seconds\":42}\n```\n\nIn **stdio mode**, use `--health-port` for a standalone health endpoint:\n\n```bash\nHEALTH_PORT=8080 OMOPHUB_API_KEY=oh_your_key npx @omophub/omophub-mcp\ncurl http://localhost:8080/health\n```\n\nThe Docker image defaults to HTTP mode on port 3100 with health checks built in.\n\n---\n\n## Development\n\n```bash\ngit clone https://github.com/OMOPHub/omophub-mcp.git\ncd omophub-mcp\nnpm install\nnpm run build\nnpm test\n```\n\nRun locally:\n\n```bash\nOMOPHUB_API_KEY=oh_your_key npx tsx src/index.ts\n```\n\n---\n\n## Troubleshooting\n\n| Error | Solution |\n| :--- | :--- |\n| `API key required` | Set `OMOPHUB_API_KEY` in your environment or MCP config |\n| `Authentication failed` | API key may be invalid or expired - [generate a new one](https://dashboard.omophub.com/api-keys) |\n| `Rate limit exceeded` | Automatic retries are built in. For higher limits, [upgrade your plan](https://dashboard.omophub.com/billing) |\n| Tools not appearing | Restart your AI client, verify `npx @omophub/omophub-mcp` runs without errors, check config path |\n\n---\n\n## Links\n\n- [Documentation](https://docs.omophub.com)\n- [Get an API Key](https://dashboard.omophub.com/api-keys)\n- [Python SDK](https://github.com/OMOPHub/omophub-python)\n- [Community & Support](https://github.com/OMOPHub/omophub-mcp/issues)\n\n---\n\n## License\n\nMIT - see [LICENSE](LICENSE)\n","readmeFilename":"README.md"}