@langwatch/mcp-server 3.0.0 → 3.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 (209) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/{add-dashboard-widget-MJHIC3CC.js → add-dashboard-widget-3IE3W5RR.js} +8 -7
  3. package/dist/{add-dashboard-widget-55UI6H22.js → add-dashboard-widget-XNAIGV37.js} +8 -7
  4. package/dist/{archive-project-L4PAKT34.js → archive-project-LAWWNKTX.js} +3 -3
  5. package/dist/{archive-project-K5UD7A6X.js → archive-project-X64627XS.js} +3 -3
  6. package/dist/{archive-run-plan-AOKNYQIO.js → archive-run-plan-3HKFL5MS.js} +3 -3
  7. package/dist/{archive-run-plan-5HSQG2HX.js → archive-run-plan-C35EJACZ.js} +3 -3
  8. package/dist/{archive-scenario-5IJQESHH.js → archive-scenario-3DOXHOJJ.js} +3 -3
  9. package/dist/{archive-scenario-2CWJW2VD.js → archive-scenario-7KDGEZM5.js} +3 -3
  10. package/dist/{archive-test-suite-OPB7NFI7.js → archive-test-suite-KZOESY2Y.js} +3 -3
  11. package/dist/{archive-test-suite-ZC3TN6VH.js → archive-test-suite-RPJ6ZKBV.js} +3 -3
  12. package/dist/{assign-prompt-tag-6DDE6ZZ5.js → assign-prompt-tag-2A25CXB7.js} +2 -2
  13. package/dist/{assign-prompt-tag-D7O23MJM.js → assign-prompt-tag-TQRV6D6V.js} +2 -2
  14. package/dist/{chunk-HLQJXUR6.js → chunk-27SS5FBC.js} +2 -2
  15. package/dist/{chunk-MOCU5XWF.js → chunk-2RLDGMPZ.js} +2 -2
  16. package/dist/{chunk-YCIUEZVK.js → chunk-3GVTJ7NK.js} +2 -2
  17. package/dist/{chunk-WCKZDOGF.js → chunk-6DF65T3B.js} +11 -6
  18. package/dist/{chunk-AASW2TO2.js → chunk-6OLI3LFY.js} +2 -2
  19. package/dist/{chunk-D2HS73VI.js → chunk-7HJSQOSZ.js} +2 -2
  20. package/dist/{chunk-7CZQDZ2K.js → chunk-7MNQDTKJ.js} +38 -26
  21. package/dist/{chunk-7GETGE6B.js → chunk-BHCYKMRH.js} +2 -2
  22. package/dist/{chunk-QXLMHLRC.js → chunk-FSU2ZBUM.js} +2 -2
  23. package/dist/{chunk-KILVK3FS.js → chunk-I2Z5CBOU.js} +2 -2
  24. package/dist/{chunk-R5YJIYPF.js → chunk-JEMUBKLJ.js} +130 -109
  25. package/dist/{chunk-XQYH52SI.js → chunk-JOFSQFCN.js} +2 -2
  26. package/dist/{chunk-4RX3G62A.js → chunk-JQN3VXPH.js} +3 -3
  27. package/dist/{chunk-B4RFWIUP.js → chunk-LXBQK3J3.js} +2 -2
  28. package/dist/{chunk-RFC2SBEX.js → chunk-MQRTYXHJ.js} +2 -2
  29. package/dist/{chunk-EYPJBL7P.js → chunk-P2JRKSYI.js} +3 -3
  30. package/dist/{chunk-VOUGDY2O.js → chunk-QF7ZGYVI.js} +2 -2
  31. package/dist/{chunk-SHSVN3SE.js → chunk-QTAHHJH3.js} +2 -2
  32. package/dist/{chunk-O2WGVCED.js → chunk-SLRQHMJZ.js} +2 -2
  33. package/dist/{chunk-GA5JUSPT.js → chunk-YQWZ4CDN.js} +5 -3
  34. package/dist/{create-agent-IRZOU4R5.js → create-agent-IE7Q2Z4C.js} +3 -3
  35. package/dist/{create-agent-6JNLMYQD.js → create-agent-JMCQ5WZC.js} +3 -3
  36. package/dist/{create-analytics-report-N4L4V5QL.js → create-analytics-report-4X5N7EOT.js} +3 -3
  37. package/dist/{create-analytics-report-QEHXG7FU.js → create-analytics-report-IKWZRS2O.js} +3 -3
  38. package/dist/{create-annotation-CCEGIZ67.js → create-annotation-IZ53SJOX.js} +3 -3
  39. package/dist/{create-annotation-DTHCMWHB.js → create-annotation-JR6DBHPW.js} +3 -3
  40. package/dist/{create-api-key-JPEUIXGM.js → create-api-key-IKMOTWCD.js} +3 -3
  41. package/dist/{create-api-key-JKM2DSZO.js → create-api-key-YUDAGOWL.js} +3 -3
  42. package/dist/{create-dataset-WON4SOTC.js → create-dataset-54FJCX45.js} +3 -3
  43. package/dist/{create-dataset-DJNXYJ5B.js → create-dataset-ONX3RADL.js} +3 -3
  44. package/dist/{create-dataset-records-UJBW3C7C.js → create-dataset-records-HPLMFDJY.js} +3 -3
  45. package/dist/{create-dataset-records-TMEOTLTO.js → create-dataset-records-QZZZF64Z.js} +3 -3
  46. package/dist/{create-evaluator-N5AEHI4K.js → create-evaluator-I5I52HOQ.js} +3 -3
  47. package/dist/{create-evaluator-XYNY2YFY.js → create-evaluator-L66QGSDX.js} +3 -3
  48. package/dist/create-mcp-server.cjs +96 -41
  49. package/dist/create-mcp-server.js +129 -108
  50. package/dist/{create-project-YL345T5L.js → create-project-UPZGETN5.js} +3 -3
  51. package/dist/{create-project-EY4XZ7TH.js → create-project-Y5EGJKDG.js} +3 -3
  52. package/dist/{create-prompt-ZUMQHHX7.js → create-prompt-RNUJOL25.js} +2 -2
  53. package/dist/{create-prompt-JZQNQ7I3.js → create-prompt-WGQLJASD.js} +2 -2
  54. package/dist/{create-prompt-tag-JFP2Q3PO.js → create-prompt-tag-3ZCA7M7O.js} +2 -2
  55. package/dist/{create-prompt-tag-CJ5FZ436.js → create-prompt-tag-R6KIAZTB.js} +2 -2
  56. package/dist/{create-scenario-S6OWWKJO.js → create-scenario-WIMKZLQO.js} +3 -3
  57. package/dist/{create-scenario-CQU2SSFB.js → create-scenario-WO5NWXVQ.js} +3 -3
  58. package/dist/{create-test-suite-Y7P2RI4L.js → create-test-suite-AVSR7IIM.js} +3 -3
  59. package/dist/{create-test-suite-OLGCAGJA.js → create-test-suite-LRKCNIJA.js} +3 -3
  60. package/dist/{create-trigger-RQ653WYF.js → create-trigger-CBO2XDYC.js} +3 -3
  61. package/dist/{create-trigger-4CNBTISJ.js → create-trigger-M3VFK5UH.js} +3 -3
  62. package/dist/{dashboards-BA7M6CMO.js → dashboards-4X6QUT3E.js} +3 -3
  63. package/dist/{dashboards-U663GUIB.js → dashboards-CX2T6RKH.js} +3 -3
  64. package/dist/{delete-agent-J2Q4DRZ2.js → delete-agent-QUVDMSOC.js} +3 -3
  65. package/dist/{delete-agent-ZAU4LTXB.js → delete-agent-Y4QTEQ3B.js} +3 -3
  66. package/dist/{delete-analytics-report-YUYLDHLL.js → delete-analytics-report-T4GIMEOA.js} +3 -3
  67. package/dist/{delete-analytics-report-QK6X7P4S.js → delete-analytics-report-WIP24EXV.js} +3 -3
  68. package/dist/{delete-annotation-KJOCDLV3.js → delete-annotation-BWO5ZEZY.js} +3 -3
  69. package/dist/{delete-annotation-7X4NYXXM.js → delete-annotation-ESUH3RWN.js} +3 -3
  70. package/dist/{delete-dataset-NXP7ZPPV.js → delete-dataset-N4AEYIAA.js} +3 -3
  71. package/dist/{delete-dataset-RUTZBBVD.js → delete-dataset-ZRD23FLO.js} +3 -3
  72. package/dist/{delete-dataset-records-75UAR5IS.js → delete-dataset-records-HC7VLBT7.js} +3 -3
  73. package/dist/{delete-dataset-records-4Z7DZCDW.js → delete-dataset-records-XC2DFVXD.js} +3 -3
  74. package/dist/{delete-evaluator-RI4GALGX.js → delete-evaluator-27P5XLNV.js} +3 -3
  75. package/dist/{delete-evaluator-E3CUNGTQ.js → delete-evaluator-LJII4YLC.js} +3 -3
  76. package/dist/{delete-prompt-tag-S4KBZTNG.js → delete-prompt-tag-DH7IQO4X.js} +2 -2
  77. package/dist/{delete-prompt-tag-LE3WJPKS.js → delete-prompt-tag-OC57CN32.js} +2 -2
  78. package/dist/{delete-workflow-PWQPDW6H.js → delete-workflow-I4IXK3ZL.js} +3 -3
  79. package/dist/{delete-workflow-4CZFIQCQ.js → delete-workflow-JXREDDW7.js} +3 -3
  80. package/dist/{discover-schema-7WHIIATI.js → discover-schema-ME5BAD2S.js} +3 -3
  81. package/dist/{discover-schema-J2ANOBKO.js → discover-schema-OHYBG3CY.js} +3 -3
  82. package/dist/{get-agent-5T3CXQOR.js → get-agent-6GKIKKL7.js} +3 -3
  83. package/dist/{get-agent-ZKYQJUQ7.js → get-agent-UKZUBVPB.js} +3 -3
  84. package/dist/{get-analytics-4MPEK4KV.js → get-analytics-TI2U3JLA.js} +2 -2
  85. package/dist/{get-analytics-ZLI3A4F5.js → get-analytics-ZGQ4LY3I.js} +2 -2
  86. package/dist/{get-analytics-report-JCKYMA2S.js → get-analytics-report-PD6XZ4ZA.js} +3 -3
  87. package/dist/{get-analytics-report-SKIP2JWH.js → get-analytics-report-QMXNQ7VA.js} +3 -3
  88. package/dist/{get-dataset-APGZBYMH.js → get-dataset-5QORNVOZ.js} +3 -3
  89. package/dist/{get-dataset-LWXDVMVE.js → get-dataset-E5WLIPNK.js} +3 -3
  90. package/dist/{get-evaluator-3A7BJBAB.js → get-evaluator-GYQFB4F3.js} +3 -3
  91. package/dist/{get-evaluator-IWNJINRY.js → get-evaluator-QQV65MQB.js} +3 -3
  92. package/dist/{get-project-RK6AJTEP.js → get-project-43SGQCAT.js} +3 -3
  93. package/dist/{get-project-EQVB4LEL.js → get-project-W5DCKXZP.js} +3 -3
  94. package/dist/{get-prompt-TLG2T2DS.js → get-prompt-IUTPSRRI.js} +2 -2
  95. package/dist/{get-prompt-ZER557X3.js → get-prompt-ZTCWGYJV.js} +2 -2
  96. package/dist/{get-run-plan-PEHRO5M3.js → get-run-plan-M3LVXMGO.js} +3 -3
  97. package/dist/{get-run-plan-5X7DDJRN.js → get-run-plan-MEPEU353.js} +3 -3
  98. package/dist/{get-scenario-UQX45ZZO.js → get-scenario-2DM4XR44.js} +3 -3
  99. package/dist/{get-scenario-375W5D6I.js → get-scenario-D6EPSSPW.js} +3 -3
  100. package/dist/{get-simulation-run-QZTLGL7W.js → get-simulation-run-53WM2XOO.js} +3 -3
  101. package/dist/{get-simulation-run-2NBXJADG.js → get-simulation-run-RKQ52TKP.js} +3 -3
  102. package/dist/{get-test-suite-OODIR3RI.js → get-test-suite-DP2HNOQZ.js} +3 -3
  103. package/dist/{get-test-suite-GVIBDG7K.js → get-test-suite-MUSY2CDJ.js} +3 -3
  104. package/dist/{get-trace-AGCHVPJK.js → get-trace-5Z2BIZ3V.js} +2 -2
  105. package/dist/{get-trace-KJLYAZRC.js → get-trace-THPWSLD3.js} +2 -2
  106. package/dist/{get-workflow-7LZSVPP2.js → get-workflow-63E7BNLY.js} +3 -3
  107. package/dist/{get-workflow-3TV2YYC5.js → get-workflow-R6XUKTZ7.js} +3 -3
  108. package/dist/{http-server-7CCN3EHJ.js → http-server-4JHSQN56.js} +5 -5
  109. package/dist/index.js +112 -44
  110. package/dist/{langwatch-api-analytics-reports-6CF6KUET.js → langwatch-api-analytics-reports-IIHGTTQA.js} +3 -3
  111. package/dist/{langwatch-api-analytics-reports-RPFB5AO5.js → langwatch-api-analytics-reports-IQ6CHM5Y.js} +3 -3
  112. package/dist/{langwatch-api-annotations-H4AI4TKG.js → langwatch-api-annotations-CN2KYV3Z.js} +3 -3
  113. package/dist/{langwatch-api-annotations-QSJNUQQS.js → langwatch-api-annotations-CRI6JTQR.js} +3 -3
  114. package/dist/{langwatch-api-monitors-ENHLOL3S.js → langwatch-api-monitors-66O5Z5LB.js} +2 -2
  115. package/dist/{langwatch-api-monitors-OHSGADTH.js → langwatch-api-monitors-GNHQRPMR.js} +2 -2
  116. package/dist/{langwatch-api-secrets-AGW6UUMD.js → langwatch-api-secrets-B7BURV76.js} +2 -2
  117. package/dist/{langwatch-api-secrets-CLTS766Q.js → langwatch-api-secrets-P6SHZOHE.js} +2 -2
  118. package/dist/{langwatch-api-triggers-G5UWFNN2.js → langwatch-api-triggers-6FR4VWDL.js} +3 -3
  119. package/dist/{langwatch-api-triggers-QMR7KEXW.js → langwatch-api-triggers-VKNGXSJH.js} +3 -3
  120. package/dist/{langwatch-api-workflows-HKTBIKKY.js → langwatch-api-workflows-22RQFYO7.js} +3 -3
  121. package/dist/{langwatch-api-workflows-OMROZH2O.js → langwatch-api-workflows-KDACD36L.js} +3 -3
  122. package/dist/{list-agents-MG24MHZE.js → list-agents-SVXWLLO7.js} +3 -3
  123. package/dist/{list-agents-BYWDNAHT.js → list-agents-XM5JNCVK.js} +3 -3
  124. package/dist/{list-analytics-reports-G3EPWGSQ.js → list-analytics-reports-DEKKC6BU.js} +3 -3
  125. package/dist/{list-analytics-reports-PPWIFRES.js → list-analytics-reports-E7QFC22G.js} +3 -3
  126. package/dist/{list-annotations-Y4EUBJHG.js → list-annotations-5CGNOIKI.js} +3 -3
  127. package/dist/{list-annotations-QCLGEK5A.js → list-annotations-P26ELIAO.js} +3 -3
  128. package/dist/{list-api-keys-DAVOBPFK.js → list-api-keys-B4YL7STE.js} +3 -3
  129. package/dist/{list-api-keys-JMW5WRXX.js → list-api-keys-ZIJJH755.js} +3 -3
  130. package/dist/{list-dashboards-2P3VJFRS.js → list-dashboards-F4YJPDKD.js} +3 -3
  131. package/dist/{list-dashboards-MW5O3MKH.js → list-dashboards-XHYTXEQK.js} +3 -3
  132. package/dist/{list-dataset-records-KEHT7G6Q.js → list-dataset-records-SWCEDRPX.js} +3 -3
  133. package/dist/{list-dataset-records-KMLLMZAZ.js → list-dataset-records-YWGROVKC.js} +3 -3
  134. package/dist/{list-datasets-P3JK2ZHS.js → list-datasets-32SCF66H.js} +3 -3
  135. package/dist/{list-datasets-Z7OOE4KI.js → list-datasets-YYADWT4D.js} +3 -3
  136. package/dist/{list-evaluators-7RRESBOU.js → list-evaluators-KKQKBJKN.js} +3 -3
  137. package/dist/{list-evaluators-VATJVOHR.js → list-evaluators-V6LP6ZQA.js} +3 -3
  138. package/dist/{list-model-providers-OXDRPUCJ.js → list-model-providers-RCPVT7R4.js} +3 -3
  139. package/dist/{list-model-providers-VXQJWDXU.js → list-model-providers-TMBSB6EE.js} +3 -3
  140. package/dist/{list-projects-X72ZXVY5.js → list-projects-4Y74TFDZ.js} +3 -3
  141. package/dist/{list-projects-HUVK7L3W.js → list-projects-R4MTRF3C.js} +3 -3
  142. package/dist/{list-prompt-tags-3I3LWFIR.js → list-prompt-tags-C345AGM2.js} +2 -2
  143. package/dist/{list-prompt-tags-DRHUH2ND.js → list-prompt-tags-RITKQDC5.js} +2 -2
  144. package/dist/{list-prompts-6DX3QECJ.js → list-prompts-DSJ2LUSU.js} +2 -2
  145. package/dist/{list-prompts-PS423RU3.js → list-prompts-F7C5L5XK.js} +2 -2
  146. package/dist/{list-run-plans-6VNHINPY.js → list-run-plans-YPGLC5QG.js} +3 -3
  147. package/dist/{list-run-plans-5SXPOV3X.js → list-run-plans-ZHRZHCDL.js} +3 -3
  148. package/dist/{list-scenarios-EQWCW7Q4.js → list-scenarios-6HN72TMW.js} +3 -3
  149. package/dist/{list-scenarios-GKNH3YND.js → list-scenarios-HCYFOTSL.js} +3 -3
  150. package/dist/{list-simulation-runs-KHY7KALI.js → list-simulation-runs-BKVMQQMT.js} +3 -3
  151. package/dist/{list-simulation-runs-PUDK32C2.js → list-simulation-runs-JNST5PQU.js} +3 -3
  152. package/dist/{list-test-suites-GY56LGLY.js → list-test-suites-4ZVYYKVB.js} +3 -3
  153. package/dist/{list-test-suites-7H2DRILK.js → list-test-suites-YY4J3L7H.js} +3 -3
  154. package/dist/{list-trigger-fires-OZUF65LI.js → list-trigger-fires-3XM6YZWG.js} +3 -3
  155. package/dist/{list-trigger-fires-7RZUP54Y.js → list-trigger-fires-5C5XM2KQ.js} +3 -3
  156. package/dist/{list-triggers-XC5KMX4C.js → list-triggers-DARBIIRA.js} +3 -3
  157. package/dist/{list-triggers-BGUCUXTJ.js → list-triggers-MRSWN7RR.js} +3 -3
  158. package/dist/{list-workflows-55NYC3PC.js → list-workflows-BGUSQUJX.js} +3 -3
  159. package/dist/{list-workflows-HV7FUWZA.js → list-workflows-NXOWP3XS.js} +3 -3
  160. package/dist/{rename-prompt-tag-2I7Z5FCY.js → rename-prompt-tag-F3WT4FB4.js} +2 -2
  161. package/dist/{rename-prompt-tag-SZYTOWDX.js → rename-prompt-tag-HR5HZZI2.js} +2 -2
  162. package/dist/{rename-test-suite-CLIEPZDO.js → rename-test-suite-2ZRXG5O7.js} +3 -3
  163. package/dist/{rename-test-suite-27AYY33K.js → rename-test-suite-PWXKE7Z4.js} +3 -3
  164. package/dist/{report-issue-5HSL7CNB.js → report-issue-HG7XCPOY.js} +2 -2
  165. package/dist/{report-issue-N7ND5TM6.js → report-issue-TWRFUPGB.js} +2 -2
  166. package/dist/{rerun-run-plan-O3VUZ6CG.js → rerun-run-plan-BFRZFEJB.js} +3 -3
  167. package/dist/{rerun-run-plan-OJTVVGJI.js → rerun-run-plan-LXM3RFZC.js} +3 -3
  168. package/dist/{revoke-api-key-NZNCFOIR.js → revoke-api-key-GR55PUP4.js} +3 -3
  169. package/dist/{revoke-api-key-BU6BKGCG.js → revoke-api-key-KCDOYPUK.js} +3 -3
  170. package/dist/{run-agent-HPCGZGYW.js → run-agent-HRVRHRHI.js} +3 -3
  171. package/dist/{run-agent-244O4Y5M.js → run-agent-WS6TADJQ.js} +3 -3
  172. package/dist/{run-plan-2ZPGGZ4H.js → run-plan-G24DBB5D.js} +3 -3
  173. package/dist/{run-plan-KSXUYQT3.js → run-plan-NSXMBEC5.js} +3 -3
  174. package/dist/{run-query-BQUHIUC2.js → run-query-6YVOA5NV.js} +18 -4
  175. package/dist/{run-query-4LMOQ5UW.js → run-query-7QIYSDVI.js} +18 -4
  176. package/dist/{run-test-suite-UEOMCON6.js → run-test-suite-NTKLJZCJ.js} +3 -3
  177. package/dist/{run-test-suite-P3WLVPXC.js → run-test-suite-P33XFQ6H.js} +3 -3
  178. package/dist/{run-workflow-I4IHEN54.js → run-workflow-E5ZRSXUB.js} +3 -3
  179. package/dist/{run-workflow-EFZ6HG5B.js → run-workflow-HDF6CRLM.js} +3 -3
  180. package/dist/{search-traces-6IR7PR4L.js → search-traces-X7NSRTTP.js} +2 -2
  181. package/dist/{search-traces-BYML2NQ4.js → search-traces-XWZYOZOM.js} +2 -2
  182. package/dist/{set-model-provider-SHEVKWRC.js → set-model-provider-XJF47L6H.js} +3 -3
  183. package/dist/{set-model-provider-RBNGWFVI.js → set-model-provider-YPUCFEXG.js} +3 -3
  184. package/dist/{update-agent-ZPXWRMS2.js → update-agent-6FHGWOO7.js} +3 -3
  185. package/dist/{update-agent-PTKTM2B5.js → update-agent-VEDXQRSM.js} +3 -3
  186. package/dist/{update-dashboard-widget-IP2TTQ5G.js → update-dashboard-widget-VOKXN7JA.js} +11 -10
  187. package/dist/{update-dashboard-widget-HKCBXH7X.js → update-dashboard-widget-VUIQZ7F5.js} +11 -10
  188. package/dist/{update-dataset-IRVMY5PF.js → update-dataset-7AQ24NRS.js} +3 -3
  189. package/dist/{update-dataset-GHIN6JR3.js → update-dataset-GHKDCJJQ.js} +3 -3
  190. package/dist/{update-dataset-record-Z3L7ACNF.js → update-dataset-record-IRD6FH2C.js} +3 -3
  191. package/dist/{update-dataset-record-6VI7K2CL.js → update-dataset-record-ZZUPG7AS.js} +3 -3
  192. package/dist/{update-evaluator-5NLNE6VY.js → update-evaluator-O6EJFTQJ.js} +3 -3
  193. package/dist/{update-evaluator-FEH7H6NS.js → update-evaluator-PUJFU5LT.js} +3 -3
  194. package/dist/{update-project-QPR3QX55.js → update-project-HO53IHXC.js} +3 -3
  195. package/dist/{update-project-75H3LDQT.js → update-project-VTVU6KNP.js} +3 -3
  196. package/dist/{update-prompt-BCDFTNLK.js → update-prompt-FABVQCAC.js} +2 -2
  197. package/dist/{update-prompt-NPRXYSWA.js → update-prompt-MNRLCLBA.js} +2 -2
  198. package/dist/{update-scenario-EM5XGMB7.js → update-scenario-MQZZM5CP.js} +3 -3
  199. package/dist/{update-scenario-BNOMDCMV.js → update-scenario-XIZNUH4I.js} +3 -3
  200. package/package.json +1 -1
  201. package/src/create-mcp-server.ts +18 -1
  202. package/src/langwatch-api-dashboard-widgets.ts +1 -0
  203. package/src/langwatch-api-query.ts +6 -0
  204. package/src/langwatch-api.ts +50 -27
  205. package/src/schemas/widget-sources.ts +36 -0
  206. package/src/tools/add-dashboard-widget.ts +5 -2
  207. package/src/tools/dashboard-widget-queries.ts +13 -4
  208. package/src/tools/run-query.ts +23 -1
  209. package/src/tools/update-dashboard-widget.ts +9 -6
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.1.0](https://github.com/langwatch/langwatch/compare/mcp-server@v3.0.0...mcp-server@v3.1.0) (2026-11-02)
4
+
5
+
6
+ ### Features
7
+
8
+ * **dashboards:** widget queries take sources and projects as params ([#9171](https://github.com/langwatch/langwatch/issues/9171)) ([af5a9c3](https://github.com/langwatch/langwatch/commit/af5a9c342951371a1cf547188cff78f9cd50bcc1))
9
+
3
10
  ## [3.0.0](https://github.com/langwatch/langwatch/compare/mcp-server@v2.2.0...mcp-server@v3.0.0) (2026-10-30)
4
11
 
5
12
 
@@ -1,21 +1,22 @@
1
1
  import {
2
2
  normalizeDashboardWidgetQueries,
3
- withSources
4
- } from "./chunk-WCKZDOGF.js";
3
+ withLists
4
+ } from "./chunk-6DF65T3B.js";
5
5
  import {
6
6
  createWidgetOnDashboard
7
- } from "./chunk-MOCU5XWF.js";
7
+ } from "./chunk-2RLDGMPZ.js";
8
8
  import {
9
9
  LangWatchApiError
10
- } from "./chunk-7CZQDZ2K.js";
10
+ } from "./chunk-7MNQDTKJ.js";
11
11
  import "./chunk-DULFP3MK.js";
12
12
  import "./chunk-SAS5OB7F.js";
13
13
 
14
14
  // src/tools/add-dashboard-widget.ts
15
15
  async function handleAddDashboardWidget(params) {
16
- const queries = withSources({
16
+ const queries = withLists({
17
17
  queries: normalizeDashboardWidgetQueries({ queries: params.queries }),
18
- sources: params.sources
18
+ sources: params.sources,
19
+ projects: params.projects
19
20
  });
20
21
  let widget;
21
22
  try {
@@ -42,4 +43,4 @@ async function handleAddDashboardWidget(params) {
42
43
  export {
43
44
  handleAddDashboardWidget
44
45
  };
45
- //# sourceMappingURL=add-dashboard-widget-MJHIC3CC.js.map
46
+ //# sourceMappingURL=add-dashboard-widget-3IE3W5RR.js.map
@@ -1,20 +1,21 @@
1
1
  import {
2
2
  normalizeDashboardWidgetQueries,
3
- withSources
4
- } from "./chunk-WCKZDOGF.js";
3
+ withLists
4
+ } from "./chunk-6DF65T3B.js";
5
5
  import {
6
6
  createWidgetOnDashboard
7
- } from "./chunk-MOCU5XWF.js";
7
+ } from "./chunk-2RLDGMPZ.js";
8
8
  import {
9
9
  LangWatchApiError
10
- } from "./chunk-7CZQDZ2K.js";
10
+ } from "./chunk-7MNQDTKJ.js";
11
11
  import "./chunk-DULFP3MK.js";
12
12
 
13
13
  // src/tools/add-dashboard-widget.ts
14
14
  async function handleAddDashboardWidget(params) {
15
- const queries = withSources({
15
+ const queries = withLists({
16
16
  queries: normalizeDashboardWidgetQueries({ queries: params.queries }),
17
- sources: params.sources
17
+ sources: params.sources,
18
+ projects: params.projects
18
19
  });
19
20
  let widget;
20
21
  try {
@@ -41,4 +42,4 @@ async function handleAddDashboardWidget(params) {
41
42
  export {
42
43
  handleAddDashboardWidget
43
44
  };
44
- //# sourceMappingURL=add-dashboard-widget-55UI6H22.js.map
45
+ //# sourceMappingURL=add-dashboard-widget-XNAIGV37.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveProject
3
- } from "./chunk-D2HS73VI.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7HJSQOSZ.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
 
7
7
  // src/tools/archive-project.ts
@@ -16,4 +16,4 @@ async function handleArchiveProject(params) {
16
16
  export {
17
17
  handleArchiveProject
18
18
  };
19
- //# sourceMappingURL=archive-project-L4PAKT34.js.map
19
+ //# sourceMappingURL=archive-project-LAWWNKTX.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveProject
3
- } from "./chunk-D2HS73VI.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7HJSQOSZ.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
  import "./chunk-SAS5OB7F.js";
7
7
 
@@ -17,4 +17,4 @@ async function handleArchiveProject(params) {
17
17
  export {
18
18
  handleArchiveProject
19
19
  };
20
- //# sourceMappingURL=archive-project-K5UD7A6X.js.map
20
+ //# sourceMappingURL=archive-project-X64627XS.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveRunPlan
3
- } from "./chunk-VOUGDY2O.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-QF7ZGYVI.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
 
7
7
  // src/tools/archive-run-plan.ts
@@ -12,4 +12,4 @@ async function handleArchiveRunPlan(params) {
12
12
  export {
13
13
  handleArchiveRunPlan
14
14
  };
15
- //# sourceMappingURL=archive-run-plan-AOKNYQIO.js.map
15
+ //# sourceMappingURL=archive-run-plan-3HKFL5MS.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveRunPlan
3
- } from "./chunk-VOUGDY2O.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-QF7ZGYVI.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
  import "./chunk-SAS5OB7F.js";
7
7
 
@@ -13,4 +13,4 @@ async function handleArchiveRunPlan(params) {
13
13
  export {
14
14
  handleArchiveRunPlan
15
15
  };
16
- //# sourceMappingURL=archive-run-plan-5HSQG2HX.js.map
16
+ //# sourceMappingURL=archive-run-plan-C35EJACZ.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveScenario
3
- } from "./chunk-7GETGE6B.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-BHCYKMRH.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
  import "./chunk-SAS5OB7F.js";
7
7
 
@@ -17,4 +17,4 @@ async function handleArchiveScenario(params) {
17
17
  export {
18
18
  handleArchiveScenario
19
19
  };
20
- //# sourceMappingURL=archive-scenario-5IJQESHH.js.map
20
+ //# sourceMappingURL=archive-scenario-3DOXHOJJ.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveScenario
3
- } from "./chunk-7GETGE6B.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-BHCYKMRH.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
 
7
7
  // src/tools/archive-scenario.ts
@@ -16,4 +16,4 @@ async function handleArchiveScenario(params) {
16
16
  export {
17
17
  handleArchiveScenario
18
18
  };
19
- //# sourceMappingURL=archive-scenario-2CWJW2VD.js.map
19
+ //# sourceMappingURL=archive-scenario-7KDGEZM5.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveTestSuite
3
- } from "./chunk-YCIUEZVK.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-3GVTJ7NK.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
  import "./chunk-SAS5OB7F.js";
7
7
 
@@ -13,4 +13,4 @@ async function handleArchiveTestSuite(params) {
13
13
  export {
14
14
  handleArchiveTestSuite
15
15
  };
16
- //# sourceMappingURL=archive-test-suite-OPB7NFI7.js.map
16
+ //# sourceMappingURL=archive-test-suite-KZOESY2Y.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  archiveTestSuite
3
- } from "./chunk-YCIUEZVK.js";
4
- import "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-3GVTJ7NK.js";
4
+ import "./chunk-7MNQDTKJ.js";
5
5
  import "./chunk-DULFP3MK.js";
6
6
 
7
7
  // src/tools/archive-test-suite.ts
@@ -12,4 +12,4 @@ async function handleArchiveTestSuite(params) {
12
12
  export {
13
13
  handleArchiveTestSuite
14
14
  };
15
- //# sourceMappingURL=archive-test-suite-ZC3TN6VH.js.map
15
+ //# sourceMappingURL=archive-test-suite-RPJ6ZKBV.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  assignPromptTag
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
  import "./chunk-DULFP3MK.js";
5
5
 
6
6
  // src/tools/assign-prompt-tag.ts
@@ -20,4 +20,4 @@ async function handleAssignPromptTag(params) {
20
20
  export {
21
21
  handleAssignPromptTag
22
22
  };
23
- //# sourceMappingURL=assign-prompt-tag-6DDE6ZZ5.js.map
23
+ //# sourceMappingURL=assign-prompt-tag-2A25CXB7.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  assignPromptTag
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
  import "./chunk-DULFP3MK.js";
5
5
  import "./chunk-SAS5OB7F.js";
6
6
 
@@ -21,4 +21,4 @@ async function handleAssignPromptTag(params) {
21
21
  export {
22
22
  handleAssignPromptTag
23
23
  };
24
- //# sourceMappingURL=assign-prompt-tag-D7O23MJM.js.map
24
+ //# sourceMappingURL=assign-prompt-tag-TQRV6D6V.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-3YLN3ATJ.js";
7
7
  import {
8
8
  makeRequest
9
- } from "./chunk-7CZQDZ2K.js";
9
+ } from "./chunk-7MNQDTKJ.js";
10
10
 
11
11
  // src/langwatch-api-triggers.ts
12
12
  import { z } from "zod";
@@ -64,4 +64,4 @@ export {
64
64
  listTriggerFires,
65
65
  deleteTrigger
66
66
  };
67
- //# sourceMappingURL=chunk-HLQJXUR6.js.map
67
+ //# sourceMappingURL=chunk-27SS5FBC.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-dashboards.ts
6
6
  var dashboardPath = (dashboardId) => `/api/v1/dashboards/${encodeURIComponent(dashboardId)}`;
@@ -76,4 +76,4 @@ export {
76
76
  updateWidgetOnDashboard,
77
77
  deleteWidgetOnDashboard
78
78
  };
79
- //# sourceMappingURL=chunk-MOCU5XWF.js.map
79
+ //# sourceMappingURL=chunk-2RLDGMPZ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-test-suites.ts
6
6
  async function listTestSuites() {
@@ -54,4 +54,4 @@ export {
54
54
  archiveTestSuite,
55
55
  runTestSuite
56
56
  };
57
- //# sourceMappingURL=chunk-YCIUEZVK.js.map
57
+ //# sourceMappingURL=chunk-3GVTJ7NK.js.map
@@ -1,10 +1,15 @@
1
1
  // src/tools/dashboard-widget-queries.ts
2
- function withSources({
2
+ function withLists({
3
3
  queries,
4
- sources
4
+ sources,
5
+ projects
5
6
  }) {
6
- if (sources === void 0) return [...queries];
7
- return queries.map((query) => ({ ...query, sources }));
7
+ if (sources === void 0 && projects === void 0) return [...queries];
8
+ return queries.map((query) => ({
9
+ ...query,
10
+ ...sources === void 0 ? {} : { sources },
11
+ ...projects === void 0 ? {} : { projects }
12
+ }));
8
13
  }
9
14
  var MAX_DASHBOARD_WIDGET_QUERIES = 8;
10
15
  function normalizeDashboardWidgetQueries({
@@ -25,7 +30,7 @@ function normalizeDashboardWidgetQueries({
25
30
  }
26
31
 
27
32
  export {
28
- withSources,
33
+ withLists,
29
34
  normalizeDashboardWidgetQueries
30
35
  };
31
- //# sourceMappingURL=chunk-WCKZDOGF.js.map
36
+ //# sourceMappingURL=chunk-6DF65T3B.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-evaluators.ts
6
6
  function getEvaluatorType(evaluator) {
@@ -38,4 +38,4 @@ export {
38
38
  updateEvaluator,
39
39
  deleteEvaluator
40
40
  };
41
- //# sourceMappingURL=chunk-AASW2TO2.js.map
41
+ //# sourceMappingURL=chunk-6OLI3LFY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-projects.ts
6
6
  async function listProjects(params) {
@@ -38,4 +38,4 @@ export {
38
38
  updateProject,
39
39
  archiveProject
40
40
  };
41
- //# sourceMappingURL=chunk-D2HS73VI.js.map
41
+ //# sourceMappingURL=chunk-7HJSQOSZ.js.map
@@ -6,7 +6,7 @@ import {
6
6
  // package.json
7
7
  var package_default = {
8
8
  name: "@langwatch/mcp-server",
9
- version: "3.0.0",
9
+ version: "3.1.0",
10
10
  description: "An MCP server for Langwatch.",
11
11
  license: "MIT",
12
12
  author: "",
@@ -115,6 +115,10 @@ var LangWatchApiError = class extends Error {
115
115
  */
116
116
  reasons;
117
117
  };
118
+ function detailsOf(meta) {
119
+ const { reasons: _reasons, target: _target, fields: _fields, ...details } = meta;
120
+ return Object.keys(details).length > 0 ? details : void 0;
121
+ }
118
122
  var VALID_FAULTS = [
119
123
  "customer",
120
124
  "platform",
@@ -137,8 +141,10 @@ function parseErrorBody(responseBody) {
137
141
  const tips = readStringArray(body.tips);
138
142
  const docsUrl = typeof body.docsUrl === "string" ? body.docsUrl : void 0;
139
143
  const fault = VALID_FAULTS.includes(body.fault) ? body.fault : void 0;
140
- const reasons = Array.isArray(body.reasons) && body.reasons.every((r) => !!r && typeof r === "object") ? body.reasons : void 0;
141
- return { code, message, tips, docsUrl, fault, reasons };
144
+ const meta = isRecord(body.meta) ? body.meta : {};
145
+ const rawReasons = Array.isArray(body.reasons) ? body.reasons : meta.reasons;
146
+ const reasons = Array.isArray(rawReasons) && rawReasons.every((r) => !!r && typeof r === "object") ? rawReasons : void 0;
147
+ return { code, message, tips, docsUrl, fault, reasons, meta: detailsOf(meta) };
142
148
  } catch {
143
149
  return {};
144
150
  }
@@ -172,6 +178,32 @@ function describeReason(reason) {
172
178
  }
173
179
  return parts.join(" \u2014 ");
174
180
  }
181
+ function apiErrorOf({
182
+ status,
183
+ responseBody
184
+ }) {
185
+ const parsed = parseErrorBody(responseBody);
186
+ const lines = [`LangWatch API error ${status}: ${parsed.message ?? responseBody}`];
187
+ if (parsed.code) lines.push(`Code: ${parsed.code}`);
188
+ if (parsed.meta) lines.push(`Details: ${JSON.stringify(parsed.meta)}`);
189
+ const reasonLines = (parsed.reasons ?? []).map(describeReason).filter((line) => line !== null);
190
+ if (reasonLines.length > 0) {
191
+ lines.push("Rejected fields:", ...reasonLines);
192
+ }
193
+ if (parsed.tips && parsed.tips.length > 0) {
194
+ lines.push("Tips:", ...parsed.tips.map((tip) => `- ${tip}`));
195
+ }
196
+ if (parsed.docsUrl) {
197
+ lines.push(`Docs: ${parsed.docsUrl}`);
198
+ }
199
+ return new LangWatchApiError(lines.join("\n"), status, responseBody, {
200
+ code: parsed.code,
201
+ tips: parsed.tips,
202
+ docsUrl: parsed.docsUrl,
203
+ fault: parsed.fault,
204
+ reasons: parsed.reasons
205
+ });
206
+ }
175
207
  async function makeRequest(method, path, body) {
176
208
  const config = getConfig();
177
209
  const url = config.endpoint + path;
@@ -194,28 +226,8 @@ async function makeRequest(method, path, body) {
194
226
  headers,
195
227
  ...body !== void 0 ? { body: JSON.stringify(body) } : {}
196
228
  });
197
- if (!response.ok) {
198
- const responseBody = await response.text();
199
- const parsed = parseErrorBody(responseBody);
200
- const lines = [`LangWatch API error ${response.status}: ${parsed.message ?? responseBody}`];
201
- const reasonLines = (parsed.reasons ?? []).map(describeReason).filter((line) => line !== null);
202
- if (reasonLines.length > 0) {
203
- lines.push("Rejected fields:", ...reasonLines);
204
- }
205
- if (parsed.tips && parsed.tips.length > 0) {
206
- lines.push("Tips:", ...parsed.tips.map((tip) => `- ${tip}`));
207
- }
208
- if (parsed.docsUrl) {
209
- lines.push(`Docs: ${parsed.docsUrl}`);
210
- }
211
- throw new LangWatchApiError(lines.join("\n"), response.status, responseBody, {
212
- code: parsed.code,
213
- tips: parsed.tips,
214
- docsUrl: parsed.docsUrl,
215
- fault: parsed.fault,
216
- reasons: parsed.reasons
217
- });
218
- }
229
+ if (!response.ok)
230
+ throw apiErrorOf({ status: response.status, responseBody: await response.text() });
219
231
  if (response.status === 204 || response.headers?.get("content-length") === "0") {
220
232
  return null;
221
233
  }
@@ -316,4 +328,4 @@ export {
316
328
  renamePromptTag,
317
329
  deletePromptTag
318
330
  };
319
- //# sourceMappingURL=chunk-7CZQDZ2K.js.map
331
+ //# sourceMappingURL=chunk-7MNQDTKJ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-scenarios.ts
6
6
  async function listScenarios() {
@@ -37,4 +37,4 @@ export {
37
37
  updateScenario,
38
38
  archiveScenario
39
39
  };
40
- //# sourceMappingURL=chunk-7GETGE6B.js.map
40
+ //# sourceMappingURL=chunk-BHCYKMRH.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-workflows.ts
6
6
  async function listWorkflows() {
@@ -29,4 +29,4 @@ export {
29
29
  runWorkflow,
30
30
  deleteWorkflow
31
31
  };
32
- //# sourceMappingURL=chunk-QXLMHLRC.js.map
32
+ //# sourceMappingURL=chunk-FSU2ZBUM.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  makeRequest
3
- } from "./chunk-7CZQDZ2K.js";
3
+ } from "./chunk-7MNQDTKJ.js";
4
4
 
5
5
  // src/langwatch-api-model-providers.ts
6
6
  async function listModelProviders() {
@@ -19,4 +19,4 @@ export {
19
19
  listModelProviders,
20
20
  setModelProvider
21
21
  };
22
- //# sourceMappingURL=chunk-KILVK3FS.js.map
22
+ //# sourceMappingURL=chunk-I2Z5CBOU.js.map