@neverinfamous/postgres-mcp 1.3.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (548) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +244 -129
  3. package/dist/__tests__/benchmarks/codemode.bench.d.ts +10 -0
  4. package/dist/__tests__/benchmarks/codemode.bench.d.ts.map +1 -0
  5. package/dist/__tests__/benchmarks/codemode.bench.js +159 -0
  6. package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -0
  7. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts +10 -0
  8. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts.map +1 -0
  9. package/dist/__tests__/benchmarks/connection-pool.bench.js +123 -0
  10. package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -0
  11. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts +11 -0
  12. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts.map +1 -0
  13. package/dist/__tests__/benchmarks/handler-dispatch.bench.js +199 -0
  14. package/dist/__tests__/benchmarks/handler-dispatch.bench.js.map +1 -0
  15. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts +15 -0
  16. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts.map +1 -0
  17. package/dist/__tests__/benchmarks/logger-sanitization.bench.js +155 -0
  18. package/dist/__tests__/benchmarks/logger-sanitization.bench.js.map +1 -0
  19. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts +10 -0
  20. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts.map +1 -0
  21. package/dist/__tests__/benchmarks/resource-prompts.bench.js +181 -0
  22. package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -0
  23. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts +11 -0
  24. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts.map +1 -0
  25. package/dist/__tests__/benchmarks/schema-parsing.bench.js +209 -0
  26. package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -0
  27. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts +9 -0
  28. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts.map +1 -0
  29. package/dist/__tests__/benchmarks/tool-filtering.bench.js +83 -0
  30. package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -0
  31. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts +10 -0
  32. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts.map +1 -0
  33. package/dist/__tests__/benchmarks/transport-auth.bench.js +128 -0
  34. package/dist/__tests__/benchmarks/transport-auth.bench.js.map +1 -0
  35. package/dist/__tests__/benchmarks/utilities.bench.d.ts +10 -0
  36. package/dist/__tests__/benchmarks/utilities.bench.d.ts.map +1 -0
  37. package/dist/__tests__/benchmarks/utilities.bench.js +164 -0
  38. package/dist/__tests__/benchmarks/utilities.bench.js.map +1 -0
  39. package/dist/__tests__/mocks/adapter.d.ts.map +1 -1
  40. package/dist/__tests__/mocks/adapter.js +2 -1
  41. package/dist/__tests__/mocks/adapter.js.map +1 -1
  42. package/dist/adapters/DatabaseAdapter.d.ts +6 -1
  43. package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
  44. package/dist/adapters/DatabaseAdapter.js +23 -7
  45. package/dist/adapters/DatabaseAdapter.js.map +1 -1
  46. package/dist/adapters/postgresql/PostgresAdapter.d.ts +5 -22
  47. package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
  48. package/dist/adapters/postgresql/PostgresAdapter.js +30 -519
  49. package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
  50. package/dist/adapters/postgresql/prompts/index.js +1 -1
  51. package/dist/adapters/postgresql/prompts/index.js.map +1 -1
  52. package/dist/adapters/postgresql/resources/index.d.ts +1 -1
  53. package/dist/adapters/postgresql/resources/index.js +3 -3
  54. package/dist/adapters/postgresql/resources/index.js.map +1 -1
  55. package/dist/adapters/postgresql/schema-operations.d.ts +71 -0
  56. package/dist/adapters/postgresql/schema-operations.d.ts.map +1 -0
  57. package/dist/adapters/postgresql/schema-operations.js +561 -0
  58. package/dist/adapters/postgresql/schema-operations.js.map +1 -0
  59. package/dist/adapters/postgresql/schemas/admin.d.ts +4 -4
  60. package/dist/adapters/postgresql/schemas/admin.js +4 -4
  61. package/dist/adapters/postgresql/schemas/admin.js.map +1 -1
  62. package/dist/adapters/postgresql/schemas/backup.d.ts +39 -25
  63. package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
  64. package/dist/adapters/postgresql/schemas/backup.js +54 -25
  65. package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
  66. package/dist/adapters/postgresql/schemas/core/index.d.ts +6 -0
  67. package/dist/adapters/postgresql/schemas/core/index.d.ts.map +1 -0
  68. package/dist/adapters/postgresql/schemas/core/index.js +6 -0
  69. package/dist/adapters/postgresql/schemas/core/index.js.map +1 -0
  70. package/dist/adapters/postgresql/schemas/{core.d.ts → core/queries.d.ts} +12 -167
  71. package/dist/adapters/postgresql/schemas/core/queries.d.ts.map +1 -0
  72. package/dist/adapters/postgresql/schemas/{core.js → core/queries.js} +5 -213
  73. package/dist/adapters/postgresql/schemas/core/queries.js.map +1 -0
  74. package/dist/adapters/postgresql/schemas/core/transactions.d.ts +149 -0
  75. package/dist/adapters/postgresql/schemas/core/transactions.d.ts.map +1 -0
  76. package/dist/adapters/postgresql/schemas/core/transactions.js +239 -0
  77. package/dist/adapters/postgresql/schemas/core/transactions.js.map +1 -0
  78. package/dist/adapters/postgresql/schemas/cron.d.ts +12 -12
  79. package/dist/adapters/postgresql/schemas/cron.d.ts.map +1 -1
  80. package/dist/adapters/postgresql/schemas/cron.js +38 -10
  81. package/dist/adapters/postgresql/schemas/cron.js.map +1 -1
  82. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts +222 -0
  83. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts.map +1 -0
  84. package/dist/adapters/postgresql/schemas/extensions/citext.js +306 -0
  85. package/dist/adapters/postgresql/schemas/extensions/citext.js.map +1 -0
  86. package/dist/adapters/postgresql/schemas/extensions/index.d.ts +15 -0
  87. package/dist/adapters/postgresql/schemas/extensions/index.d.ts.map +1 -0
  88. package/dist/adapters/postgresql/schemas/extensions/index.js +20 -0
  89. package/dist/adapters/postgresql/schemas/extensions/index.js.map +1 -0
  90. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts +164 -0
  91. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts.map +1 -0
  92. package/dist/adapters/postgresql/schemas/extensions/kcache.js +225 -0
  93. package/dist/adapters/postgresql/schemas/extensions/kcache.js.map +1 -0
  94. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts +253 -0
  95. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts.map +1 -0
  96. package/dist/adapters/postgresql/schemas/extensions/ltree.js +430 -0
  97. package/dist/adapters/postgresql/schemas/extensions/ltree.js.map +1 -0
  98. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts +251 -0
  99. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts.map +1 -0
  100. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js +294 -0
  101. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js.map +1 -0
  102. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts +10 -0
  103. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts.map +1 -0
  104. package/dist/adapters/postgresql/schemas/extensions/shared.js +15 -0
  105. package/dist/adapters/postgresql/schemas/extensions/shared.js.map +1 -0
  106. package/dist/adapters/postgresql/schemas/index.d.ts +8 -7
  107. package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
  108. package/dist/adapters/postgresql/schemas/index.js +16 -10
  109. package/dist/adapters/postgresql/schemas/index.js.map +1 -1
  110. package/dist/adapters/postgresql/schemas/introspection.d.ts +445 -0
  111. package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -0
  112. package/dist/adapters/postgresql/schemas/introspection.js +481 -0
  113. package/dist/adapters/postgresql/schemas/introspection.js.map +1 -0
  114. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts +270 -0
  115. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts.map +1 -0
  116. package/dist/adapters/postgresql/schemas/jsonb/advanced.js +371 -0
  117. package/dist/adapters/postgresql/schemas/jsonb/advanced.js.map +1 -0
  118. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts +283 -0
  119. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts.map +1 -0
  120. package/dist/adapters/postgresql/schemas/jsonb/basic.js +456 -0
  121. package/dist/adapters/postgresql/schemas/jsonb/basic.js.map +1 -0
  122. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts +6 -0
  123. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts.map +1 -0
  124. package/dist/adapters/postgresql/schemas/jsonb/index.js +6 -0
  125. package/dist/adapters/postgresql/schemas/jsonb/index.js.map +1 -0
  126. package/dist/adapters/postgresql/schemas/monitoring.d.ts +45 -29
  127. package/dist/adapters/postgresql/schemas/monitoring.d.ts.map +1 -1
  128. package/dist/adapters/postgresql/schemas/monitoring.js +51 -18
  129. package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
  130. package/dist/adapters/postgresql/schemas/partitioning.d.ts +28 -32
  131. package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
  132. package/dist/adapters/postgresql/schemas/partitioning.js +82 -53
  133. package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
  134. package/dist/adapters/postgresql/schemas/partman.d.ts +78 -7
  135. package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
  136. package/dist/adapters/postgresql/schemas/partman.js +54 -41
  137. package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
  138. package/dist/adapters/postgresql/schemas/performance.d.ts +37 -19
  139. package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -1
  140. package/dist/adapters/postgresql/schemas/performance.js +54 -12
  141. package/dist/adapters/postgresql/schemas/performance.js.map +1 -1
  142. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts +429 -0
  143. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts.map +1 -0
  144. package/dist/adapters/postgresql/schemas/{postgis.js → postgis/advanced.js} +4 -467
  145. package/dist/adapters/postgresql/schemas/postgis/advanced.js.map +1 -0
  146. package/dist/adapters/postgresql/schemas/{postgis.d.ts → postgis/basic.d.ts} +1 -423
  147. package/dist/adapters/postgresql/schemas/postgis/basic.d.ts.map +1 -0
  148. package/dist/adapters/postgresql/schemas/postgis/basic.js +493 -0
  149. package/dist/adapters/postgresql/schemas/postgis/basic.js.map +1 -0
  150. package/dist/adapters/postgresql/schemas/postgis/index.d.ts +6 -0
  151. package/dist/adapters/postgresql/schemas/postgis/index.d.ts.map +1 -0
  152. package/dist/adapters/postgresql/schemas/postgis/index.js +6 -0
  153. package/dist/adapters/postgresql/schemas/postgis/index.js.map +1 -0
  154. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +50 -32
  155. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
  156. package/dist/adapters/postgresql/schemas/schema-mgmt.js +93 -26
  157. package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
  158. package/dist/adapters/postgresql/schemas/stats/index.d.ts +6 -0
  159. package/dist/adapters/postgresql/schemas/stats/index.d.ts.map +1 -0
  160. package/dist/adapters/postgresql/schemas/stats/index.js +6 -0
  161. package/dist/adapters/postgresql/schemas/stats/index.js.map +1 -0
  162. package/dist/adapters/postgresql/schemas/stats/input.d.ts +260 -0
  163. package/dist/adapters/postgresql/schemas/stats/input.d.ts.map +1 -0
  164. package/dist/adapters/postgresql/schemas/{stats.js → stats/input.js} +2 -331
  165. package/dist/adapters/postgresql/schemas/stats/input.js.map +1 -0
  166. package/dist/adapters/postgresql/schemas/{stats.d.ts → stats/output.d.ts} +3 -246
  167. package/dist/adapters/postgresql/schemas/stats/output.d.ts.map +1 -0
  168. package/dist/adapters/postgresql/schemas/stats/output.js +334 -0
  169. package/dist/adapters/postgresql/schemas/stats/output.js.map +1 -0
  170. package/dist/adapters/postgresql/schemas/text-search.d.ts +44 -32
  171. package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
  172. package/dist/adapters/postgresql/schemas/text-search.js +53 -36
  173. package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
  174. package/dist/adapters/postgresql/schemas/vector.d.ts +10 -10
  175. package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -1
  176. package/dist/adapters/postgresql/schemas/vector.js +12 -16
  177. package/dist/adapters/postgresql/schemas/vector.js.map +1 -1
  178. package/dist/adapters/postgresql/tools/admin.d.ts.map +1 -1
  179. package/dist/adapters/postgresql/tools/admin.js +82 -67
  180. package/dist/adapters/postgresql/tools/admin.js.map +1 -1
  181. package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
  182. package/dist/adapters/postgresql/tools/backup/dump.js +119 -97
  183. package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
  184. package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -1
  185. package/dist/adapters/postgresql/tools/backup/planning.js +345 -287
  186. package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -1
  187. package/dist/adapters/postgresql/tools/citext/analysis.d.ts +24 -0
  188. package/dist/adapters/postgresql/tools/citext/analysis.d.ts.map +1 -0
  189. package/dist/adapters/postgresql/tools/{citext.js → citext/analysis.js} +131 -281
  190. package/dist/adapters/postgresql/tools/citext/analysis.js.map +1 -0
  191. package/dist/adapters/postgresql/tools/citext/index.d.ts +15 -0
  192. package/dist/adapters/postgresql/tools/citext/index.d.ts.map +1 -0
  193. package/dist/adapters/postgresql/tools/citext/index.js +23 -0
  194. package/dist/adapters/postgresql/tools/citext/index.js.map +1 -0
  195. package/dist/adapters/postgresql/tools/citext/setup.d.ts +16 -0
  196. package/dist/adapters/postgresql/tools/citext/setup.d.ts.map +1 -0
  197. package/dist/adapters/postgresql/tools/citext/setup.js +193 -0
  198. package/dist/adapters/postgresql/tools/citext/setup.js.map +1 -0
  199. package/dist/adapters/postgresql/tools/codemode/index.d.ts.map +1 -1
  200. package/dist/adapters/postgresql/tools/codemode/index.js +3 -12
  201. package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
  202. package/dist/adapters/postgresql/tools/core/convenience.d.ts +12 -22
  203. package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
  204. package/dist/adapters/postgresql/tools/core/convenience.js +116 -211
  205. package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
  206. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts +1 -0
  207. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts.map +1 -1
  208. package/dist/adapters/postgresql/tools/core/error-helpers.js +8 -1
  209. package/dist/adapters/postgresql/tools/core/error-helpers.js.map +1 -1
  210. package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -1
  211. package/dist/adapters/postgresql/tools/core/health.js +124 -114
  212. package/dist/adapters/postgresql/tools/core/health.js.map +1 -1
  213. package/dist/adapters/postgresql/tools/core/index.d.ts +2 -1
  214. package/dist/adapters/postgresql/tools/core/index.d.ts.map +1 -1
  215. package/dist/adapters/postgresql/tools/core/index.js +3 -2
  216. package/dist/adapters/postgresql/tools/core/index.js.map +1 -1
  217. package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
  218. package/dist/adapters/postgresql/tools/core/indexes.js +153 -128
  219. package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
  220. package/dist/adapters/postgresql/tools/core/objects.d.ts.map +1 -1
  221. package/dist/adapters/postgresql/tools/core/objects.js +186 -161
  222. package/dist/adapters/postgresql/tools/core/objects.js.map +1 -1
  223. package/dist/adapters/postgresql/tools/core/query.d.ts.map +1 -1
  224. package/dist/adapters/postgresql/tools/core/query.js +37 -25
  225. package/dist/adapters/postgresql/tools/core/query.js.map +1 -1
  226. package/dist/adapters/postgresql/tools/core/schemas.d.ts +6 -3
  227. package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -1
  228. package/dist/adapters/postgresql/tools/core/schemas.js +11 -2
  229. package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -1
  230. package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
  231. package/dist/adapters/postgresql/tools/core/tables.js +156 -129
  232. package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
  233. package/dist/adapters/postgresql/tools/core/utility.d.ts +26 -0
  234. package/dist/adapters/postgresql/tools/core/utility.d.ts.map +1 -0
  235. package/dist/adapters/postgresql/tools/core/utility.js +174 -0
  236. package/dist/adapters/postgresql/tools/core/utility.js.map +1 -0
  237. package/dist/adapters/postgresql/tools/cron.js +149 -70
  238. package/dist/adapters/postgresql/tools/cron.js.map +1 -1
  239. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts +12 -0
  240. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts.map +1 -0
  241. package/dist/adapters/postgresql/tools/introspection/analysis.js +574 -0
  242. package/dist/adapters/postgresql/tools/introspection/analysis.js.map +1 -0
  243. package/dist/adapters/postgresql/tools/introspection/graph.d.ts +55 -0
  244. package/dist/adapters/postgresql/tools/introspection/graph.d.ts.map +1 -0
  245. package/dist/adapters/postgresql/tools/introspection/graph.js +638 -0
  246. package/dist/adapters/postgresql/tools/introspection/graph.js.map +1 -0
  247. package/dist/adapters/postgresql/tools/introspection/index.d.ts +19 -0
  248. package/dist/adapters/postgresql/tools/introspection/index.d.ts.map +1 -0
  249. package/dist/adapters/postgresql/tools/introspection/index.js +36 -0
  250. package/dist/adapters/postgresql/tools/introspection/index.js.map +1 -0
  251. package/dist/adapters/postgresql/tools/introspection/migration.d.ts +15 -0
  252. package/dist/adapters/postgresql/tools/introspection/migration.d.ts.map +1 -0
  253. package/dist/adapters/postgresql/tools/introspection/migration.js +599 -0
  254. package/dist/adapters/postgresql/tools/introspection/migration.js.map +1 -0
  255. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts +20 -0
  256. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts.map +1 -0
  257. package/dist/adapters/postgresql/tools/jsonb/analytics.js +367 -0
  258. package/dist/adapters/postgresql/tools/jsonb/analytics.js.map +1 -0
  259. package/dist/adapters/postgresql/tools/jsonb/index.d.ts +4 -2
  260. package/dist/adapters/postgresql/tools/jsonb/index.d.ts.map +1 -1
  261. package/dist/adapters/postgresql/tools/jsonb/index.js +8 -4
  262. package/dist/adapters/postgresql/tools/jsonb/index.js.map +1 -1
  263. package/dist/adapters/postgresql/tools/jsonb/read.d.ts +38 -0
  264. package/dist/adapters/postgresql/tools/jsonb/read.d.ts.map +1 -0
  265. package/dist/adapters/postgresql/tools/jsonb/read.js +543 -0
  266. package/dist/adapters/postgresql/tools/jsonb/read.js.map +1 -0
  267. package/dist/adapters/postgresql/tools/jsonb/{advanced.d.ts → transform.d.ts} +1 -13
  268. package/dist/adapters/postgresql/tools/jsonb/transform.d.ts.map +1 -0
  269. package/dist/adapters/postgresql/tools/jsonb/{advanced.js → transform.js} +39 -361
  270. package/dist/adapters/postgresql/tools/jsonb/transform.js.map +1 -0
  271. package/dist/adapters/postgresql/tools/jsonb/write.d.ts +14 -0
  272. package/dist/adapters/postgresql/tools/jsonb/write.d.ts.map +1 -0
  273. package/dist/adapters/postgresql/tools/jsonb/write.js +468 -0
  274. package/dist/adapters/postgresql/tools/jsonb/write.js.map +1 -0
  275. package/dist/adapters/postgresql/tools/kcache.d.ts.map +1 -1
  276. package/dist/adapters/postgresql/tools/kcache.js +116 -51
  277. package/dist/adapters/postgresql/tools/kcache.js.map +1 -1
  278. package/dist/adapters/postgresql/tools/ltree.d.ts.map +1 -1
  279. package/dist/adapters/postgresql/tools/ltree.js +358 -259
  280. package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
  281. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts +15 -0
  282. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts.map +1 -0
  283. package/dist/adapters/postgresql/tools/{monitoring.js → monitoring/analysis.js} +37 -361
  284. package/dist/adapters/postgresql/tools/monitoring/analysis.js.map +1 -0
  285. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts +17 -0
  286. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts.map +1 -0
  287. package/dist/adapters/postgresql/tools/monitoring/basic.js +432 -0
  288. package/dist/adapters/postgresql/tools/monitoring/basic.js.map +1 -0
  289. package/dist/adapters/postgresql/tools/monitoring/index.d.ts +16 -0
  290. package/dist/adapters/postgresql/tools/monitoring/index.d.ts.map +1 -0
  291. package/dist/adapters/postgresql/tools/monitoring/index.js +31 -0
  292. package/dist/adapters/postgresql/tools/monitoring/index.js.map +1 -0
  293. package/dist/adapters/postgresql/tools/partitioning/index.d.ts +15 -0
  294. package/dist/adapters/postgresql/tools/partitioning/index.d.ts.map +1 -0
  295. package/dist/adapters/postgresql/tools/partitioning/index.js +23 -0
  296. package/dist/adapters/postgresql/tools/partitioning/index.js.map +1 -0
  297. package/dist/adapters/postgresql/tools/partitioning/info.d.ts +11 -0
  298. package/dist/adapters/postgresql/tools/partitioning/info.d.ts.map +1 -0
  299. package/dist/adapters/postgresql/tools/partitioning/info.js +302 -0
  300. package/dist/adapters/postgresql/tools/partitioning/info.js.map +1 -0
  301. package/dist/adapters/postgresql/tools/partitioning/management.d.ts +28 -0
  302. package/dist/adapters/postgresql/tools/partitioning/management.d.ts.map +1 -0
  303. package/dist/adapters/postgresql/tools/{partitioning.js → partitioning/management.js} +48 -307
  304. package/dist/adapters/postgresql/tools/partitioning/management.js.map +1 -0
  305. package/dist/adapters/postgresql/tools/partman/helpers.d.ts +29 -0
  306. package/dist/adapters/postgresql/tools/partman/helpers.d.ts.map +1 -0
  307. package/dist/adapters/postgresql/tools/partman/helpers.js +59 -0
  308. package/dist/adapters/postgresql/tools/partman/helpers.js.map +1 -0
  309. package/dist/adapters/postgresql/tools/partman/index.d.ts +2 -1
  310. package/dist/adapters/postgresql/tools/partman/index.d.ts.map +1 -1
  311. package/dist/adapters/postgresql/tools/partman/index.js +4 -2
  312. package/dist/adapters/postgresql/tools/partman/index.js.map +1 -1
  313. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts +20 -0
  314. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts.map +1 -0
  315. package/dist/adapters/postgresql/tools/partman/maintenance.js +496 -0
  316. package/dist/adapters/postgresql/tools/partman/maintenance.js.map +1 -0
  317. package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
  318. package/dist/adapters/postgresql/tools/partman/management.js +452 -417
  319. package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
  320. package/dist/adapters/postgresql/tools/partman/operations.d.ts +1 -13
  321. package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
  322. package/dist/adapters/postgresql/tools/partman/operations.js +173 -654
  323. package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
  324. package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
  325. package/dist/adapters/postgresql/tools/performance/analysis.js +79 -45
  326. package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
  327. package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
  328. package/dist/adapters/postgresql/tools/performance/monitoring.js +83 -55
  329. package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
  330. package/dist/adapters/postgresql/tools/performance/optimization.d.ts.map +1 -1
  331. package/dist/adapters/postgresql/tools/performance/optimization.js +18 -11
  332. package/dist/adapters/postgresql/tools/performance/optimization.js.map +1 -1
  333. package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
  334. package/dist/adapters/postgresql/tools/performance/stats.js +441 -286
  335. package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
  336. package/dist/adapters/postgresql/tools/pgcrypto.d.ts.map +1 -1
  337. package/dist/adapters/postgresql/tools/pgcrypto.js +67 -79
  338. package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
  339. package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -1
  340. package/dist/adapters/postgresql/tools/postgis/advanced.js +30 -25
  341. package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -1
  342. package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
  343. package/dist/adapters/postgresql/tools/postgis/basic.js +137 -100
  344. package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
  345. package/dist/adapters/postgresql/tools/schema/index.d.ts +16 -0
  346. package/dist/adapters/postgresql/tools/schema/index.d.ts.map +1 -0
  347. package/dist/adapters/postgresql/tools/schema/index.js +32 -0
  348. package/dist/adapters/postgresql/tools/schema/index.js.map +1 -0
  349. package/dist/adapters/postgresql/tools/schema/objects.d.ts +15 -0
  350. package/dist/adapters/postgresql/tools/schema/objects.d.ts.map +1 -0
  351. package/dist/adapters/postgresql/tools/schema/objects.js +378 -0
  352. package/dist/adapters/postgresql/tools/schema/objects.js.map +1 -0
  353. package/dist/adapters/postgresql/tools/schema/views.d.ts +15 -0
  354. package/dist/adapters/postgresql/tools/schema/views.d.ts.map +1 -0
  355. package/dist/adapters/postgresql/tools/{schema.js → schema/views.js} +91 -339
  356. package/dist/adapters/postgresql/tools/schema/views.js.map +1 -0
  357. package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
  358. package/dist/adapters/postgresql/tools/stats/advanced.js +40 -235
  359. package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
  360. package/dist/adapters/postgresql/tools/stats/basic.d.ts.map +1 -1
  361. package/dist/adapters/postgresql/tools/stats/basic.js +45 -30
  362. package/dist/adapters/postgresql/tools/stats/basic.js.map +1 -1
  363. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts +33 -0
  364. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts.map +1 -0
  365. package/dist/adapters/postgresql/tools/stats/math-utils.js +225 -0
  366. package/dist/adapters/postgresql/tools/stats/math-utils.js.map +1 -0
  367. package/dist/adapters/postgresql/tools/text/index.d.ts +16 -0
  368. package/dist/adapters/postgresql/tools/text/index.d.ts.map +1 -0
  369. package/dist/adapters/postgresql/tools/text/index.js +33 -0
  370. package/dist/adapters/postgresql/tools/text/index.js.map +1 -0
  371. package/dist/adapters/postgresql/tools/text/matching.d.ts +17 -0
  372. package/dist/adapters/postgresql/tools/text/matching.d.ts.map +1 -0
  373. package/dist/adapters/postgresql/tools/text/matching.js +565 -0
  374. package/dist/adapters/postgresql/tools/text/matching.js.map +1 -0
  375. package/dist/adapters/postgresql/tools/text/search.d.ts +17 -0
  376. package/dist/adapters/postgresql/tools/text/search.d.ts.map +1 -0
  377. package/dist/adapters/postgresql/tools/text/search.js +653 -0
  378. package/dist/adapters/postgresql/tools/text/search.js.map +1 -0
  379. package/dist/adapters/postgresql/tools/transactions.d.ts.map +1 -1
  380. package/dist/adapters/postgresql/tools/transactions.js +11 -27
  381. package/dist/adapters/postgresql/tools/transactions.js.map +1 -1
  382. package/dist/adapters/postgresql/tools/vector/{basic.d.ts → data.d.ts} +10 -8
  383. package/dist/adapters/postgresql/tools/vector/data.d.ts.map +1 -0
  384. package/dist/adapters/postgresql/tools/vector/data.js +540 -0
  385. package/dist/adapters/postgresql/tools/vector/data.js.map +1 -0
  386. package/dist/adapters/postgresql/tools/vector/index.d.ts.map +1 -1
  387. package/dist/adapters/postgresql/tools/vector/index.js +6 -2
  388. package/dist/adapters/postgresql/tools/vector/index.js.map +1 -1
  389. package/dist/adapters/postgresql/tools/vector/management.d.ts +11 -0
  390. package/dist/adapters/postgresql/tools/vector/management.d.ts.map +1 -0
  391. package/dist/adapters/postgresql/tools/vector/management.js +425 -0
  392. package/dist/adapters/postgresql/tools/vector/management.js.map +1 -0
  393. package/dist/adapters/postgresql/tools/vector/query.d.ts +14 -0
  394. package/dist/adapters/postgresql/tools/vector/query.d.ts.map +1 -0
  395. package/dist/adapters/postgresql/tools/vector/query.js +767 -0
  396. package/dist/adapters/postgresql/tools/vector/query.js.map +1 -0
  397. package/dist/adapters/postgresql/tools/vector/{advanced.d.ts → search-advanced.d.ts} +4 -5
  398. package/dist/adapters/postgresql/tools/vector/search-advanced.d.ts.map +1 -0
  399. package/dist/adapters/postgresql/tools/vector/search-advanced.js +626 -0
  400. package/dist/adapters/postgresql/tools/vector/search-advanced.js.map +1 -0
  401. package/dist/auth/auth-context.d.ts +28 -0
  402. package/dist/auth/auth-context.d.ts.map +1 -0
  403. package/dist/auth/auth-context.js +37 -0
  404. package/dist/auth/auth-context.js.map +1 -0
  405. package/dist/auth/scope-map.d.ts +20 -0
  406. package/dist/auth/scope-map.d.ts.map +1 -0
  407. package/dist/auth/scope-map.js +40 -0
  408. package/dist/auth/scope-map.js.map +1 -0
  409. package/dist/auth/scopes.d.ts.map +1 -1
  410. package/dist/auth/scopes.js +2 -0
  411. package/dist/auth/scopes.js.map +1 -1
  412. package/dist/cli/args.d.ts +3 -2
  413. package/dist/cli/args.d.ts.map +1 -1
  414. package/dist/cli/args.js +4 -3
  415. package/dist/cli/args.js.map +1 -1
  416. package/dist/cli.js +11 -5
  417. package/dist/cli.js.map +1 -1
  418. package/dist/codemode/api/aliases.d.ts +14 -0
  419. package/dist/codemode/api/aliases.d.ts.map +1 -0
  420. package/dist/codemode/api/aliases.js +503 -0
  421. package/dist/codemode/api/aliases.js.map +1 -0
  422. package/dist/codemode/api/group-api.d.ts +23 -0
  423. package/dist/codemode/api/group-api.d.ts.map +1 -0
  424. package/dist/codemode/api/group-api.js +179 -0
  425. package/dist/codemode/api/group-api.js.map +1 -0
  426. package/dist/codemode/{api.d.ts → api/index.d.ts} +5 -4
  427. package/dist/codemode/api/index.d.ts.map +1 -0
  428. package/dist/codemode/api/index.js +192 -0
  429. package/dist/codemode/api/index.js.map +1 -0
  430. package/dist/codemode/api/maps.d.ts +47 -0
  431. package/dist/codemode/api/maps.d.ts.map +1 -0
  432. package/dist/codemode/api/maps.js +523 -0
  433. package/dist/codemode/api/maps.js.map +1 -0
  434. package/dist/codemode/api/normalize.d.ts +13 -0
  435. package/dist/codemode/api/normalize.d.ts.map +1 -0
  436. package/dist/codemode/api/normalize.js +120 -0
  437. package/dist/codemode/api/normalize.js.map +1 -0
  438. package/dist/codemode/index.d.ts +1 -3
  439. package/dist/codemode/index.d.ts.map +1 -1
  440. package/dist/codemode/index.js +1 -5
  441. package/dist/codemode/index.js.map +1 -1
  442. package/dist/codemode/sandbox.d.ts +14 -1
  443. package/dist/codemode/sandbox.d.ts.map +1 -1
  444. package/dist/codemode/sandbox.js +66 -44
  445. package/dist/codemode/sandbox.js.map +1 -1
  446. package/dist/codemode/types.d.ts.map +1 -1
  447. package/dist/codemode/types.js +3 -0
  448. package/dist/codemode/types.js.map +1 -1
  449. package/dist/constants/ServerInstructions.d.ts +5 -1
  450. package/dist/constants/ServerInstructions.d.ts.map +1 -1
  451. package/dist/constants/ServerInstructions.js +91 -43
  452. package/dist/constants/ServerInstructions.js.map +1 -1
  453. package/dist/filtering/ToolConstants.d.ts +22 -19
  454. package/dist/filtering/ToolConstants.d.ts.map +1 -1
  455. package/dist/filtering/ToolConstants.js +48 -37
  456. package/dist/filtering/ToolConstants.js.map +1 -1
  457. package/dist/filtering/ToolFilter.d.ts.map +1 -1
  458. package/dist/filtering/ToolFilter.js +10 -13
  459. package/dist/filtering/ToolFilter.js.map +1 -1
  460. package/dist/pool/ConnectionPool.js +1 -1
  461. package/dist/pool/ConnectionPool.js.map +1 -1
  462. package/dist/server/McpServer.d.ts +1 -1
  463. package/dist/server/McpServer.d.ts.map +1 -1
  464. package/dist/server/McpServer.js +1 -2
  465. package/dist/server/McpServer.js.map +1 -1
  466. package/dist/transports/http.d.ts +44 -10
  467. package/dist/transports/http.d.ts.map +1 -1
  468. package/dist/transports/http.js +327 -40
  469. package/dist/transports/http.js.map +1 -1
  470. package/dist/types/filtering.d.ts +2 -2
  471. package/dist/types/filtering.d.ts.map +1 -1
  472. package/dist/utils/icons.d.ts.map +1 -1
  473. package/dist/utils/icons.js +5 -0
  474. package/dist/utils/icons.js.map +1 -1
  475. package/dist/utils/logger.d.ts +6 -6
  476. package/dist/utils/logger.d.ts.map +1 -1
  477. package/dist/utils/logger.js +18 -15
  478. package/dist/utils/logger.js.map +1 -1
  479. package/dist/utils/progress-utils.d.ts +2 -2
  480. package/dist/utils/progress-utils.d.ts.map +1 -1
  481. package/dist/utils/progress-utils.js +2 -3
  482. package/dist/utils/progress-utils.js.map +1 -1
  483. package/dist/utils/version.d.ts +9 -0
  484. package/dist/utils/version.d.ts.map +1 -0
  485. package/dist/utils/version.js +12 -0
  486. package/dist/utils/version.js.map +1 -0
  487. package/dist/utils/where-clause.d.ts +4 -0
  488. package/dist/utils/where-clause.d.ts.map +1 -1
  489. package/dist/utils/where-clause.js +40 -0
  490. package/dist/utils/where-clause.js.map +1 -1
  491. package/package.json +19 -14
  492. package/dist/adapters/postgresql/schemas/core.d.ts.map +0 -1
  493. package/dist/adapters/postgresql/schemas/core.js.map +0 -1
  494. package/dist/adapters/postgresql/schemas/extensions.d.ts +0 -833
  495. package/dist/adapters/postgresql/schemas/extensions.d.ts.map +0 -1
  496. package/dist/adapters/postgresql/schemas/extensions.js +0 -1170
  497. package/dist/adapters/postgresql/schemas/extensions.js.map +0 -1
  498. package/dist/adapters/postgresql/schemas/jsonb.d.ts +0 -533
  499. package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +0 -1
  500. package/dist/adapters/postgresql/schemas/jsonb.js +0 -790
  501. package/dist/adapters/postgresql/schemas/jsonb.js.map +0 -1
  502. package/dist/adapters/postgresql/schemas/postgis.d.ts.map +0 -1
  503. package/dist/adapters/postgresql/schemas/postgis.js.map +0 -1
  504. package/dist/adapters/postgresql/schemas/stats.d.ts.map +0 -1
  505. package/dist/adapters/postgresql/schemas/stats.js.map +0 -1
  506. package/dist/adapters/postgresql/tools/citext.d.ts +0 -18
  507. package/dist/adapters/postgresql/tools/citext.d.ts.map +0 -1
  508. package/dist/adapters/postgresql/tools/citext.js.map +0 -1
  509. package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +0 -1
  510. package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +0 -1
  511. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts +0 -20
  512. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +0 -1
  513. package/dist/adapters/postgresql/tools/jsonb/basic.js +0 -915
  514. package/dist/adapters/postgresql/tools/jsonb/basic.js.map +0 -1
  515. package/dist/adapters/postgresql/tools/monitoring.d.ts +0 -13
  516. package/dist/adapters/postgresql/tools/monitoring.d.ts.map +0 -1
  517. package/dist/adapters/postgresql/tools/monitoring.js.map +0 -1
  518. package/dist/adapters/postgresql/tools/partitioning.d.ts +0 -13
  519. package/dist/adapters/postgresql/tools/partitioning.d.ts.map +0 -1
  520. package/dist/adapters/postgresql/tools/partitioning.js.map +0 -1
  521. package/dist/adapters/postgresql/tools/schema.d.ts +0 -13
  522. package/dist/adapters/postgresql/tools/schema.d.ts.map +0 -1
  523. package/dist/adapters/postgresql/tools/schema.js.map +0 -1
  524. package/dist/adapters/postgresql/tools/text.d.ts +0 -13
  525. package/dist/adapters/postgresql/tools/text.d.ts.map +0 -1
  526. package/dist/adapters/postgresql/tools/text.js +0 -903
  527. package/dist/adapters/postgresql/tools/text.js.map +0 -1
  528. package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +0 -1
  529. package/dist/adapters/postgresql/tools/vector/advanced.js +0 -958
  530. package/dist/adapters/postgresql/tools/vector/advanced.js.map +0 -1
  531. package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +0 -1
  532. package/dist/adapters/postgresql/tools/vector/basic.js +0 -1165
  533. package/dist/adapters/postgresql/tools/vector/basic.js.map +0 -1
  534. package/dist/codemode/api.d.ts.map +0 -1
  535. package/dist/codemode/api.js +0 -1510
  536. package/dist/codemode/api.js.map +0 -1
  537. package/dist/codemode/sandbox-factory.d.ts +0 -72
  538. package/dist/codemode/sandbox-factory.d.ts.map +0 -1
  539. package/dist/codemode/sandbox-factory.js +0 -88
  540. package/dist/codemode/sandbox-factory.js.map +0 -1
  541. package/dist/codemode/worker-sandbox.d.ts +0 -82
  542. package/dist/codemode/worker-sandbox.d.ts.map +0 -1
  543. package/dist/codemode/worker-sandbox.js +0 -244
  544. package/dist/codemode/worker-sandbox.js.map +0 -1
  545. package/dist/codemode/worker-script.d.ts +0 -8
  546. package/dist/codemode/worker-script.d.ts.map +0 -1
  547. package/dist/codemode/worker-script.js +0 -113
  548. package/dist/codemode/worker-script.js.map +0 -1
@@ -1,22 +1,36 @@
1
1
  /**
2
2
  * postgres-mcp - HTTP Transport
3
3
  *
4
- * HTTP/SSE transport with OAuth 2.0 support.
4
+ * Dual-protocol HTTP transport with backward compatibility:
5
+ * - `/mcp` — Streamable HTTP transport (MCP protocol 2025-11-25)
6
+ * - `/sse` + `/messages` — Legacy SSE transport (MCP protocol 2024-11-05)
7
+ *
8
+ * Includes OAuth 2.0 support, rate limiting, CORS, and security headers.
5
9
  */
10
+ import { randomUUID } from "node:crypto";
6
11
  import { createServer, } from "node:http";
7
12
  import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
8
- import { validateAuth, formatOAuthError } from "../auth/middleware.js";
13
+ import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
14
+ import { isInitializeRequest } from "@modelcontextprotocol/sdk/types.js";
15
+ import { validateAuth, formatOAuthError, } from "../auth/middleware.js";
16
+ import { runWithAuthContext } from "../auth/auth-context.js";
9
17
  import { logger } from "../utils/logger.js";
10
18
  /**
11
19
  * HTTP Transport for MCP
20
+ *
21
+ * Supports two transport protocols simultaneously:
22
+ * 1. Streamable HTTP (2025-11-25) via `/mcp` — preferred for modern clients
23
+ * 2. Legacy SSE (2024-11-05) via `/sse` + `/messages` — backward compatibility
12
24
  */
13
25
  export class HttpTransport {
14
26
  server = null;
15
27
  config;
16
- transport = null;
17
28
  onConnect;
29
+ /** Active transports by session ID (supports both transport types) */
30
+ transports = new Map();
18
31
  // Rate limiting state
19
32
  rateLimitMap = new Map();
33
+ rateLimitCleanupInterval = null;
20
34
  // Default configuration values
21
35
  static DEFAULT_RATE_LIMIT_WINDOW_MS = 60000; // 1 minute
22
36
  static DEFAULT_RATE_LIMIT_MAX_REQUESTS = 100;
@@ -53,6 +67,17 @@ export class HttpTransport {
53
67
  }
54
68
  });
55
69
  });
70
+ // Start deterministic rate limit cleanup (every 60s)
71
+ if (this.config.enableRateLimit) {
72
+ this.rateLimitCleanupInterval = setInterval(() => {
73
+ const now = Date.now();
74
+ for (const [ip, entry] of this.rateLimitMap) {
75
+ if (now > entry.resetTime) {
76
+ this.rateLimitMap.delete(ip);
77
+ }
78
+ }
79
+ }, 60_000);
80
+ }
56
81
  this.server.on("error", reject);
57
82
  this.server.listen(this.config.port, this.config.host, () => {
58
83
  logger.info(`HTTP transport listening on ${this.config.host ?? "localhost"}:${String(this.config.port)}`);
@@ -64,6 +89,20 @@ export class HttpTransport {
64
89
  * Stop the HTTP server
65
90
  */
66
91
  async stop() {
92
+ if (this.rateLimitCleanupInterval) {
93
+ clearInterval(this.rateLimitCleanupInterval);
94
+ this.rateLimitCleanupInterval = null;
95
+ }
96
+ // Close all active transports
97
+ for (const [sessionId, transport] of this.transports) {
98
+ try {
99
+ await transport.close();
100
+ }
101
+ catch {
102
+ logger.warn("Error closing transport during shutdown", { sessionId });
103
+ }
104
+ }
105
+ this.transports.clear();
67
106
  return new Promise((resolve) => {
68
107
  if (this.server) {
69
108
  this.server.close(() => {
@@ -110,14 +149,7 @@ export class HttpTransport {
110
149
  const maxRequests = this.config.rateLimitMaxRequests ??
111
150
  HttpTransport.DEFAULT_RATE_LIMIT_MAX_REQUESTS;
112
151
  const entry = this.rateLimitMap.get(clientIp);
113
- // Clean up expired entries periodically (every 100 checks)
114
- if (this.rateLimitMap.size > 100 && Math.random() < 0.01) {
115
- for (const [ip, e] of this.rateLimitMap) {
116
- if (now > e.resetTime) {
117
- this.rateLimitMap.delete(ip);
118
- }
119
- }
120
- }
152
+ // Expired entries are cleaned up by a deterministic interval (see start())
121
153
  if (!entry || now > entry.resetTime) {
122
154
  // Start new window
123
155
  this.rateLimitMap.set(clientIp, { count: 1, resetTime: now + windowMs });
@@ -129,6 +161,59 @@ export class HttpTransport {
129
161
  entry.count++;
130
162
  return true;
131
163
  }
164
+ /**
165
+ * Read and parse JSON body from an incoming request.
166
+ * Returns undefined for GET/DELETE/OPTIONS (no body expected).
167
+ * Enforces maxBodySize limit while streaming to prevent memory exhaustion.
168
+ */
169
+ async readBody(req, res) {
170
+ if (req.method === "GET" ||
171
+ req.method === "DELETE" ||
172
+ req.method === "OPTIONS") {
173
+ return undefined;
174
+ }
175
+ const maxBodySize = this.config.maxBodySize ?? HttpTransport.DEFAULT_MAX_BODY_SIZE;
176
+ return new Promise((resolve, reject) => {
177
+ const chunks = [];
178
+ let receivedBytes = 0;
179
+ let limitExceeded = false;
180
+ req.on("data", (chunk) => {
181
+ if (limitExceeded)
182
+ return;
183
+ receivedBytes += chunk.length;
184
+ if (receivedBytes > maxBodySize) {
185
+ limitExceeded = true;
186
+ req.destroy();
187
+ if (!res.headersSent) {
188
+ res.writeHead(413, { "Content-Type": "application/json" });
189
+ res.end(JSON.stringify({
190
+ error: "payload_too_large",
191
+ error_description: `Request body exceeds maximum size of ${String(maxBodySize)} bytes.`,
192
+ }));
193
+ }
194
+ reject(new Error("Payload too large"));
195
+ return;
196
+ }
197
+ chunks.push(chunk);
198
+ });
199
+ req.on("end", () => {
200
+ if (limitExceeded)
201
+ return;
202
+ const raw = Buffer.concat(chunks).toString("utf-8");
203
+ if (!raw) {
204
+ resolve(undefined);
205
+ return;
206
+ }
207
+ try {
208
+ resolve(JSON.parse(raw));
209
+ }
210
+ catch {
211
+ reject(new Error("Invalid JSON in request body"));
212
+ }
213
+ });
214
+ req.on("error", reject);
215
+ });
216
+ }
132
217
  /**
133
218
  * Handle incoming HTTP request
134
219
  */
@@ -152,6 +237,18 @@ export class HttpTransport {
152
237
  }));
153
238
  return;
154
239
  }
240
+ // Check body size — fast rejection via Content-Length header.
241
+ // Streaming byte tracking for spoofed/missing headers is handled inside readBody().
242
+ const maxBodySize = this.config.maxBodySize ?? HttpTransport.DEFAULT_MAX_BODY_SIZE;
243
+ const contentLength = parseInt(req.headers["content-length"] ?? "0", 10);
244
+ if (contentLength > maxBodySize) {
245
+ res.writeHead(413, { "Content-Type": "application/json" });
246
+ res.end(JSON.stringify({
247
+ error: "payload_too_large",
248
+ error_description: `Request body exceeds maximum size of ${String(maxBodySize)} bytes.`,
249
+ }));
250
+ return;
251
+ }
155
252
  const url = new URL(req.url ?? "/", `http://${req.headers.host ?? "localhost"}`);
156
253
  // Handle well-known endpoints
157
254
  if (url.pathname === "/.well-known/oauth-protected-resource") {
@@ -163,11 +260,17 @@ export class HttpTransport {
163
260
  this.handleHealthCheck(res);
164
261
  return;
165
262
  }
263
+ // Root info endpoint
264
+ if (url.pathname === "/" && req.method === "GET") {
265
+ this.handleRootInfo(res);
266
+ return;
267
+ }
166
268
  // Authenticate if OAuth is configured and path is not public
269
+ let authCtx;
167
270
  if (this.config.resourceServer && this.config.tokenValidator) {
168
271
  if (!this.isPublicPath(url.pathname)) {
169
272
  try {
170
- await validateAuth(req.headers.authorization, {
273
+ authCtx = await validateAuth(req.headers.authorization, {
171
274
  tokenValidator: this.config.tokenValidator,
172
275
  required: true,
173
276
  });
@@ -183,44 +286,201 @@ export class HttpTransport {
183
286
  }
184
287
  }
185
288
  }
186
- // Handle MCP requests
187
- if (url.pathname === "/sse") {
188
- await this.handleSSERequest(req, res);
289
+ // Dispatch MCP requests — wrap in auth context if OAuth is active
290
+ const dispatch = async () => {
291
+ // =====================================================================
292
+ // Streamable HTTP Transport (Protocol 2025-11-25) — canonical endpoint
293
+ // =====================================================================
294
+ if (url.pathname === "/mcp") {
295
+ await this.handleStreamableRequest(req, res);
296
+ return;
297
+ }
298
+ // =====================================================================
299
+ // Legacy SSE Transport (Protocol 2024-11-05) — backward compatibility
300
+ // =====================================================================
301
+ if (url.pathname === "/sse") {
302
+ this.handleLegacySSERequest(req, res);
303
+ return;
304
+ }
305
+ if (url.pathname === "/messages") {
306
+ await this.handleLegacyMessageRequest(req, res, url);
307
+ return;
308
+ }
309
+ res.writeHead(404);
310
+ res.end(JSON.stringify({ error: "Not found" }));
311
+ };
312
+ if (authCtx) {
313
+ await runWithAuthContext(authCtx, dispatch);
314
+ }
315
+ else {
316
+ await dispatch();
317
+ }
318
+ }
319
+ // ===========================================================================
320
+ // Streamable HTTP Transport (Protocol 2025-11-25)
321
+ // ===========================================================================
322
+ /**
323
+ * Handle Streamable HTTP requests on `/mcp`.
324
+ *
325
+ * Supports GET (SSE stream), POST (initialize + messages), DELETE (terminate).
326
+ * Session management is handled via the `Mcp-Session-Id` header.
327
+ */
328
+ async handleStreamableRequest(req, res) {
329
+ const sessionId = req.headers["mcp-session-id"];
330
+ // For non-POST requests (GET for SSE stream, DELETE for session termination),
331
+ // delegate directly to the transport if we have a valid session
332
+ if (req.method !== "POST") {
333
+ if (sessionId && this.transports.has(sessionId)) {
334
+ const existing = this.transports.get(sessionId);
335
+ if (existing instanceof StreamableHTTPServerTransport) {
336
+ await existing.handleRequest(req, res);
337
+ return;
338
+ }
339
+ }
340
+ res.writeHead(400, { "Content-Type": "application/json" });
341
+ res.end(JSON.stringify({
342
+ jsonrpc: "2.0",
343
+ error: {
344
+ code: -32000,
345
+ message: "Bad Request: No valid session ID provided",
346
+ },
347
+ id: null,
348
+ }));
349
+ return;
350
+ }
351
+ // POST requests — pre-parse the body so the SDK receives parsed JSON
352
+ let body;
353
+ try {
354
+ body = await this.readBody(req, res);
355
+ }
356
+ catch (readError) {
357
+ // readBody rejects with "Payload too large" after sending 413 to client
358
+ if (readError instanceof Error &&
359
+ readError.message === "Payload too large") {
360
+ return;
361
+ }
362
+ res.writeHead(400, { "Content-Type": "application/json" });
363
+ res.end(JSON.stringify({
364
+ jsonrpc: "2.0",
365
+ error: { code: -32700, message: "Parse error: Invalid JSON" },
366
+ id: null,
367
+ }));
189
368
  return;
190
369
  }
191
- if (url.pathname === "/messages") {
192
- await this.handleMessageRequest(req, res);
370
+ // Existing session route to the correct transport
371
+ if (sessionId && this.transports.has(sessionId)) {
372
+ const existing = this.transports.get(sessionId);
373
+ if (existing instanceof StreamableHTTPServerTransport) {
374
+ await existing.handleRequest(req, res, body);
375
+ return;
376
+ }
377
+ // Session exists but uses legacy SSE transport
378
+ res.writeHead(400, { "Content-Type": "application/json" });
379
+ res.end(JSON.stringify({
380
+ jsonrpc: "2.0",
381
+ error: {
382
+ code: -32000,
383
+ message: "Bad Request: Session exists but uses a different transport protocol",
384
+ },
385
+ id: null,
386
+ }));
193
387
  return;
194
388
  }
195
- res.writeHead(404);
196
- res.end(JSON.stringify({ error: "Not found" }));
389
+ // No session ID — must be an initialization request
390
+ if (!sessionId && isInitializeRequest(body)) {
391
+ const newTransport = new StreamableHTTPServerTransport({
392
+ sessionIdGenerator: () => randomUUID(),
393
+ onsessioninitialized: (newSessionId) => {
394
+ logger.debug("Streamable HTTP session initialized", {
395
+ sessionId: newSessionId,
396
+ });
397
+ this.transports.set(newSessionId, newTransport);
398
+ },
399
+ });
400
+ // Clean up on close
401
+ newTransport.onclose = () => {
402
+ const sid = newTransport.sessionId;
403
+ if (sid && this.transports.has(sid)) {
404
+ logger.debug("Streamable HTTP transport closed", {
405
+ sessionId: sid,
406
+ });
407
+ this.transports.delete(sid);
408
+ }
409
+ };
410
+ // Connect MCP server to this transport (must complete before handling request)
411
+ if (this.onConnect) {
412
+ await this.onConnect(newTransport);
413
+ }
414
+ // Handle request with pre-parsed body
415
+ await newTransport.handleRequest(req, res, body);
416
+ return;
417
+ }
418
+ // POST without session ID and not an initialization request
419
+ res.writeHead(400, { "Content-Type": "application/json" });
420
+ res.end(JSON.stringify({
421
+ jsonrpc: "2.0",
422
+ error: {
423
+ code: -32000,
424
+ message: "Bad Request: No valid session ID provided",
425
+ },
426
+ id: null,
427
+ }));
197
428
  }
429
+ // ===========================================================================
430
+ // Legacy SSE Transport (Protocol 2024-11-05)
431
+ // ===========================================================================
198
432
  /**
199
- * Handle SSE connection request
433
+ * Handle legacy SSE connection request (GET /sse).
434
+ *
435
+ * Creates an SSEServerTransport that establishes an event stream and
436
+ * directs the client to POST messages to `/messages?sessionId=<id>`.
200
437
  */
201
- async handleSSERequest(req, res) {
202
- // Create new transport for this connection
203
- // Note: Do NOT call transport.start() here - the MCP SDK's Server.connect()
204
- // calls start() internally, and calling it twice throws "Transport already started"
205
- const transport = new StreamableHTTPServerTransport();
206
- this.transport = transport;
438
+ handleLegacySSERequest(_req, res) {
439
+ logger.debug("Legacy SSE connection established");
440
+ const transport = new SSEServerTransport("/messages", res);
441
+ this.transports.set(transport.sessionId, transport);
442
+ // Clean up on disconnect
443
+ res.on("close", () => {
444
+ logger.debug("Legacy SSE transport closed", {
445
+ sessionId: transport.sessionId,
446
+ });
447
+ this.transports.delete(transport.sessionId);
448
+ });
449
+ // Connect MCP server to this transport
207
450
  if (this.onConnect) {
208
- this.onConnect(transport);
451
+ void this.onConnect(transport);
209
452
  }
210
- // Handle the request (keeps connection open for SSE)
211
- await transport.handleRequest(req, res);
212
453
  }
213
454
  /**
214
- * Handle MCP message request
455
+ * Handle legacy message request (POST /messages?sessionId=<id>).
456
+ *
457
+ * Routes the message to the correct SSEServerTransport instance.
215
458
  */
216
- async handleMessageRequest(req, res) {
217
- if (!this.transport) {
218
- res.writeHead(400);
219
- res.end(JSON.stringify({ error: "No active connection" }));
459
+ async handleLegacyMessageRequest(req, res, url) {
460
+ const sessionId = url.searchParams.get("sessionId");
461
+ if (!sessionId) {
462
+ res.writeHead(400, { "Content-Type": "application/json" });
463
+ res.end(JSON.stringify({ error: "Missing sessionId parameter" }));
464
+ return;
465
+ }
466
+ const transport = this.transports.get(sessionId);
467
+ if (!transport) {
468
+ res.writeHead(404, { "Content-Type": "application/json" });
469
+ res.end(JSON.stringify({ error: "No transport found for sessionId" }));
220
470
  return;
221
471
  }
222
- await this.transport.handleRequest(req, res);
472
+ if (!(transport instanceof SSEServerTransport)) {
473
+ res.writeHead(400, { "Content-Type": "application/json" });
474
+ res.end(JSON.stringify({
475
+ error: "Session exists but uses a different transport protocol. Use /mcp instead.",
476
+ }));
477
+ return;
478
+ }
479
+ await transport.handlePostMessage(req, res);
223
480
  }
481
+ // ===========================================================================
482
+ // Utility Endpoints
483
+ // ===========================================================================
224
484
  /**
225
485
  * Handle protected resource metadata endpoint
226
486
  */
@@ -244,6 +504,28 @@ export class HttpTransport {
244
504
  timestamp: new Date().toISOString(),
245
505
  }));
246
506
  }
507
+ /**
508
+ * Handle root info endpoint — helpful for browser visitors and debugging
509
+ */
510
+ handleRootInfo(res) {
511
+ res.writeHead(200, { "Content-Type": "application/json" });
512
+ res.end(JSON.stringify({
513
+ name: "postgres-mcp",
514
+ description: "PostgreSQL MCP Server with dual HTTP transport",
515
+ endpoints: {
516
+ "POST /mcp": "JSON-RPC requests (Streamable HTTP, MCP 2025-11-25)",
517
+ "GET /mcp": "SSE stream for server-to-client notifications",
518
+ "DELETE /mcp": "Session termination",
519
+ "GET /sse": "Legacy SSE connection (MCP 2024-11-05)",
520
+ "POST /messages": "Legacy SSE message endpoint",
521
+ "GET /health": "Health check",
522
+ },
523
+ documentation: "https://github.com/neverinfamous/postgres-mcp",
524
+ }));
525
+ }
526
+ // ===========================================================================
527
+ // Security Headers
528
+ // ===========================================================================
247
529
  /**
248
530
  * Set security headers for all responses
249
531
  */
@@ -252,12 +534,14 @@ export class HttpTransport {
252
534
  res.setHeader("X-Content-Type-Options", "nosniff");
253
535
  // Prevent clickjacking
254
536
  res.setHeader("X-Frame-Options", "DENY");
255
- // Enable XSS filtering
256
- res.setHeader("X-XSS-Protection", "1; mode=block");
257
537
  // Prevent caching of API responses
258
538
  res.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
259
539
  // Content Security Policy - API server has no content to load
260
540
  res.setHeader("Content-Security-Policy", "default-src 'none'; frame-ancestors 'none'");
541
+ // Restrict browser features not needed by an API server
542
+ res.setHeader("Permissions-Policy", "camera=(), microphone=(), geolocation=()");
543
+ // Prevent referrer leakage — API server does not need referrers
544
+ res.setHeader("Referrer-Policy", "no-referrer");
261
545
  // HTTP Strict Transport Security (for HTTPS deployments)
262
546
  if (this.config.enableHSTS) {
263
547
  const maxAge = this.config.hstsMaxAge ?? HttpTransport.DEFAULT_HSTS_MAX_AGE;
@@ -287,11 +571,14 @@ export class HttpTransport {
287
571
  }
288
572
  }
289
573
  }
574
+ // ===========================================================================
575
+ // Accessors
576
+ // ===========================================================================
290
577
  /**
291
- * Get the underlying transport
578
+ * Get all active transports (for testing/introspection)
292
579
  */
293
- getTransport() {
294
- return this.transport;
580
+ getTransports() {
581
+ return this.transports;
295
582
  }
296
583
  }
297
584
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/transports/http.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,14 @@
6
6
  /**
7
7
  * Tool group identifiers for PostgreSQL
8
8
  */
9
- export type ToolGroup = "core" | "transactions" | "jsonb" | "text" | "performance" | "admin" | "monitoring" | "backup" | "schema" | "vector" | "postgis" | "partitioning" | "stats" | "cron" | "partman" | "kcache" | "citext" | "ltree" | "pgcrypto" | "codemode";
9
+ export type ToolGroup = "core" | "transactions" | "jsonb" | "text" | "performance" | "admin" | "monitoring" | "backup" | "schema" | "vector" | "postgis" | "partitioning" | "stats" | "cron" | "partman" | "kcache" | "citext" | "ltree" | "pgcrypto" | "introspection" | "codemode";
10
10
  /**
11
11
  * Meta-group identifiers for common multi-group selections
12
12
  * These are shortcuts that expand to multiple ToolGroups
13
13
  *
14
14
  * STRICT LIMIT: All shortcuts must stay ≤50 tools
15
15
  */
16
- export type MetaGroup = "starter" | "essential" | "dev-power" | "ai-data" | "ai-vector" | "dba-monitor" | "dba-manage" | "dba-stats" | "geo" | "base-core" | "base-ops" | "ext-ai" | "ext-geo" | "ext-schedule" | "ext-perf";
16
+ export type MetaGroup = "starter" | "essential" | "dev-schema" | "dev-analytics" | "ai-data" | "ai-vector" | "dba-monitor" | "dba-schema" | "dba-infra" | "dba-stats" | "geo" | "base-ops" | "ext-ai" | "ext-geo" | "ext-schedule" | "ext-perf";
17
17
  /**
18
18
  * Tool filter rule
19
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"filtering.d.ts","sourceRoot":"","sources":["../../src/types/filtering.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,cAAc,GACd,OAAO,GACP,MAAM,GACN,aAAa,GACb,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,cAAc,GACd,OAAO,GACP,MAAM,GACN,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,UAAU,GACV,UAAU,CAAC;AAEf;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAEjB,SAAS,GACT,WAAW,GACX,WAAW,GAEX,SAAS,GACT,WAAW,GAEX,aAAa,GACb,YAAY,GACZ,WAAW,GAEX,KAAK,GAEL,WAAW,GACX,UAAU,GAEV,QAAQ,GACR,SAAS,GACT,cAAc,GACd,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAE5B,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IAEf,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IAEZ,4BAA4B;IAC5B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,qDAAqD;IACrD,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC3B"}
1
+ {"version":3,"file":"filtering.d.ts","sourceRoot":"","sources":["../../src/types/filtering.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,cAAc,GACd,OAAO,GACP,MAAM,GACN,aAAa,GACb,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,cAAc,GACd,OAAO,GACP,MAAM,GACN,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,UAAU,GACV,eAAe,GACf,UAAU,CAAC;AAEf;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAEjB,SAAS,GACT,WAAW,GAEX,YAAY,GACZ,eAAe,GAEf,SAAS,GACT,WAAW,GAEX,aAAa,GACb,YAAY,GACZ,WAAW,GACX,WAAW,GAEX,KAAK,GAEL,UAAU,GAEV,QAAQ,GACR,SAAS,GACT,cAAc,GACd,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oCAAoC;IACpC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;IAE5B,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IAEf,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IAEZ,4BAA4B;IAC5B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,qDAAqD;IACrD,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqL9E;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,WAAW,CAAC,EAAE,eAAe,GAC5B,QAAQ,EAAE,CAkBZ;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,EAAE,CAE5D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAMnE"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA0L9E;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,WAAW,CAAC,EAAE,eAAe,GAC5B,QAAQ,EAAE,CAkBZ;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,EAAE,CAE5D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAMnE"}
@@ -112,6 +112,11 @@ const CATEGORY_ICONS = {
112
112
  path: '<rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/>',
113
113
  color: "#EAB308",
114
114
  },
115
+ // Introspection: Magnifying glass with graph nodes
116
+ introspection: {
117
+ path: '<circle cx="10" cy="10" r="7"/><path d="m21 21-4.35-4.35"/><circle cx="8" cy="8" r="1.5"/><circle cx="12" cy="10" r="1.5"/><path d="M8 8l4 2"/>',
118
+ color: "#A855F7",
119
+ },
115
120
  // Codemode: Terminal/code
116
121
  codemode: {
117
122
  path: '<polyline points="4,17 10,11 4,5"/><line x1="12" y1="19" x2="20" y2="19"/>',
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  * Format: [timestamp] [LEVEL] [MODULE] [CODE] message {context}
8
8
  * Example: [2025-12-18T01:30:00Z] [ERROR] [ADAPTER] [PG_CONNECT_FAILED] Failed to connect {"host":"localhost"}
9
9
  */
10
- import type { Server } from "@modelcontextprotocol/sdk/server/index.js";
10
+ import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
11
11
  /**
12
12
  * RFC 5424 syslog severity levels
13
13
  * @see https://datatracker.ietf.org/doc/html/rfc5424#section-6.2.1
@@ -67,7 +67,7 @@ declare class Logger {
67
67
  * Set the MCP server for protocol logging
68
68
  * When set, logs will be sent to connected MCP clients
69
69
  */
70
- setMcpServer(server: Server): void;
70
+ setMcpServer(server: McpServer): void;
71
71
  /**
72
72
  * Set the logger name (appears in MCP log messages)
73
73
  */
@@ -109,10 +109,10 @@ declare class Logger {
109
109
  /**
110
110
  * Write a sanitized string to stderr in a way that breaks taint tracking.
111
111
  *
112
- * This function creates a completely new string by copying character codes,
113
- * which breaks the data-flow path that static analysis tools (like CodeQL)
114
- * use to track potentially sensitive data. The input MUST already be fully
115
- * sanitized before calling this function.
112
+ * String concatenation creates a new string reference, breaking the
113
+ * data-flow path that static analysis tools (like CodeQL) use to track
114
+ * potentially sensitive data. The input MUST already be fully sanitized
115
+ * before calling this function.
116
116
  *
117
117
  * Security guarantees (enforced by callers):
118
118
  * - All sensitive data redacted by sanitizeContext()