@langwatch/mcp-server 2.2.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.
- package/CHANGELOG.md +33 -0
- package/dist/add-dashboard-widget-3IE3W5RR.js +46 -0
- package/dist/add-dashboard-widget-XNAIGV37.js +45 -0
- package/dist/{archive-project-KWFM3I5Z.js → archive-project-LAWWNKTX.js} +4 -4
- package/dist/{archive-project-SPVHXK6A.js → archive-project-X64627XS.js} +4 -4
- package/dist/{archive-run-plan-Z4SYE6BP.js → archive-run-plan-3HKFL5MS.js} +4 -4
- package/dist/{archive-run-plan-65QN3XRX.js → archive-run-plan-C35EJACZ.js} +4 -4
- package/dist/{archive-scenario-A6QV5LOW.js → archive-scenario-3DOXHOJJ.js} +4 -4
- package/dist/{archive-scenario-FXEYQNEH.js → archive-scenario-7KDGEZM5.js} +4 -4
- package/dist/{archive-test-suite-NKZDZY3D.js → archive-test-suite-KZOESY2Y.js} +4 -4
- package/dist/{archive-test-suite-5ADQ3KPQ.js → archive-test-suite-RPJ6ZKBV.js} +4 -4
- package/dist/{assign-prompt-tag-5IUZXJ2T.js → assign-prompt-tag-2A25CXB7.js} +3 -3
- package/dist/{assign-prompt-tag-HBZLBIFD.js → assign-prompt-tag-TQRV6D6V.js} +3 -3
- package/dist/{chunk-Y34DHR5K.js → chunk-27SS5FBC.js} +2 -2
- package/dist/chunk-2RLDGMPZ.js +79 -0
- package/dist/{chunk-VMWJD732.js → chunk-3GVTJ7NK.js} +2 -2
- package/dist/chunk-6DF65T3B.js +36 -0
- package/dist/{chunk-3OCG3QPU.js → chunk-6OLI3LFY.js} +2 -2
- package/dist/{chunk-B4J3PJLX.js → chunk-7HJSQOSZ.js} +2 -6
- package/dist/{chunk-UWLE5T2F.js → chunk-7MNQDTKJ.js} +46 -27
- package/dist/{chunk-I7ATIZED.js → chunk-BHCYKMRH.js} +2 -2
- package/dist/{chunk-H6WGMG2T.js → chunk-DULFP3MK.js} +1 -1
- package/dist/{chunk-NKMTIHIJ.js → chunk-FSU2ZBUM.js} +2 -2
- package/dist/{chunk-SXFC3FNH.js → chunk-I2Z5CBOU.js} +2 -2
- package/dist/{chunk-J7PQKBLD.js → chunk-JEMUBKLJ.js} +533 -402
- package/dist/{chunk-7VNSRCXO.js → chunk-JOFSQFCN.js} +2 -2
- package/dist/{chunk-HGELNIVY.js → chunk-JQN3VXPH.js} +3 -3
- package/dist/{chunk-UTJCWXPZ.js → chunk-LXBQK3J3.js} +2 -2
- package/dist/{chunk-JRJPH75H.js → chunk-MQRTYXHJ.js} +2 -2
- package/dist/{chunk-YCARO42Z.js → chunk-P2JRKSYI.js} +3 -3
- package/dist/{chunk-PTDR56Z3.js → chunk-QF7ZGYVI.js} +2 -2
- package/dist/{chunk-UNJM3BIL.js → chunk-QTAHHJH3.js} +2 -2
- package/dist/chunk-SLRQHMJZ.js +41 -0
- package/dist/{chunk-SUPUUC4W.js → chunk-YQWZ4CDN.js} +5 -3
- package/dist/{config-EAKW6F26.js → config-2WQGMAEN.js} +2 -2
- package/dist/config.js +1 -1
- package/dist/{create-agent-S5ZBCEFT.js → create-agent-IE7Q2Z4C.js} +4 -4
- package/dist/{create-agent-AYZ3LB3V.js → create-agent-JMCQ5WZC.js} +4 -4
- package/dist/create-analytics-report-4X5N7EOT.js +19 -0
- package/dist/create-analytics-report-IKWZRS2O.js +18 -0
- package/dist/{create-annotation-VUSXULQK.js → create-annotation-IZ53SJOX.js} +4 -4
- package/dist/{create-annotation-LHNCLHYP.js → create-annotation-JR6DBHPW.js} +4 -4
- package/dist/{create-api-key-T4KSNPKB.js → create-api-key-IKMOTWCD.js} +4 -4
- package/dist/{create-api-key-NNYKARMG.js → create-api-key-YUDAGOWL.js} +4 -4
- package/dist/{create-dataset-2MC4SD4O.js → create-dataset-54FJCX45.js} +4 -4
- package/dist/{create-dataset-LUP5PVDM.js → create-dataset-ONX3RADL.js} +4 -4
- package/dist/{create-dataset-records-W4GLN2FV.js → create-dataset-records-HPLMFDJY.js} +4 -4
- package/dist/{create-dataset-records-NSKBZP3G.js → create-dataset-records-QZZZF64Z.js} +4 -4
- package/dist/{create-evaluator-HMTYO5SS.js → create-evaluator-I5I52HOQ.js} +4 -4
- package/dist/{create-evaluator-643G6LXL.js → create-evaluator-L66QGSDX.js} +4 -4
- package/dist/create-mcp-server.cjs +851 -597
- package/dist/create-mcp-server.js +523 -392
- package/dist/{create-project-6N7PIYRY.js → create-project-UPZGETN5.js} +4 -4
- package/dist/{create-project-KAIC46UY.js → create-project-Y5EGJKDG.js} +4 -4
- package/dist/{create-prompt-PKJ7EDRR.js → create-prompt-RNUJOL25.js} +3 -3
- package/dist/{create-prompt-E67LXIYT.js → create-prompt-WGQLJASD.js} +3 -3
- package/dist/{create-prompt-tag-OPQUEXWB.js → create-prompt-tag-3ZCA7M7O.js} +3 -3
- package/dist/{create-prompt-tag-4YO3FSJ3.js → create-prompt-tag-R6KIAZTB.js} +3 -3
- package/dist/{create-scenario-UEM77OE7.js → create-scenario-WIMKZLQO.js} +4 -4
- package/dist/{create-scenario-5PJBMAXO.js → create-scenario-WO5NWXVQ.js} +4 -4
- package/dist/{create-test-suite-4IPXVSFQ.js → create-test-suite-AVSR7IIM.js} +4 -4
- package/dist/{create-test-suite-SZEPVXSE.js → create-test-suite-LRKCNIJA.js} +4 -4
- package/dist/{create-trigger-5HZSCRAN.js → create-trigger-CBO2XDYC.js} +4 -4
- package/dist/{create-trigger-PRELMT6J.js → create-trigger-M3VFK5UH.js} +4 -4
- package/dist/dashboards-4X6QUT3E.js +90 -0
- package/dist/dashboards-CX2T6RKH.js +91 -0
- package/dist/{delete-agent-QMEK3XHK.js → delete-agent-QUVDMSOC.js} +4 -4
- package/dist/{delete-agent-JUIZWAXG.js → delete-agent-Y4QTEQ3B.js} +4 -4
- package/dist/delete-analytics-report-T4GIMEOA.js +18 -0
- package/dist/delete-analytics-report-WIP24EXV.js +19 -0
- package/dist/{delete-annotation-VKIQWUYW.js → delete-annotation-BWO5ZEZY.js} +4 -4
- package/dist/{delete-annotation-HY3O2OGR.js → delete-annotation-ESUH3RWN.js} +4 -4
- package/dist/{delete-dataset-WKRUW4FP.js → delete-dataset-N4AEYIAA.js} +4 -4
- package/dist/{delete-dataset-HQCR66MG.js → delete-dataset-ZRD23FLO.js} +4 -4
- package/dist/{delete-dataset-records-SDUHQLLM.js → delete-dataset-records-HC7VLBT7.js} +4 -4
- package/dist/{delete-dataset-records-C2IQFFVQ.js → delete-dataset-records-XC2DFVXD.js} +4 -4
- package/dist/{delete-evaluator-QP3QHTLN.js → delete-evaluator-27P5XLNV.js} +4 -4
- package/dist/{delete-evaluator-4SNSCLEE.js → delete-evaluator-LJII4YLC.js} +4 -4
- package/dist/{delete-prompt-tag-YYQ4VMAD.js → delete-prompt-tag-DH7IQO4X.js} +3 -3
- package/dist/{delete-prompt-tag-NZ4JQMYG.js → delete-prompt-tag-OC57CN32.js} +3 -3
- package/dist/{delete-workflow-5J46T73T.js → delete-workflow-I4IXK3ZL.js} +4 -4
- package/dist/{delete-workflow-JSWABL5F.js → delete-workflow-JXREDDW7.js} +4 -4
- package/dist/{discover-schema-A33SLMXW.js → discover-schema-ME5BAD2S.js} +4 -4
- package/dist/{discover-schema-55YJBFGQ.js → discover-schema-OHYBG3CY.js} +4 -4
- package/dist/{get-agent-LJQX7OF4.js → get-agent-6GKIKKL7.js} +4 -4
- package/dist/{get-agent-OTIYUFZA.js → get-agent-UKZUBVPB.js} +4 -4
- package/dist/{get-analytics-IQZKJHLW.js → get-analytics-TI2U3JLA.js} +3 -3
- package/dist/{get-analytics-DCS72353.js → get-analytics-ZGQ4LY3I.js} +3 -3
- package/dist/get-analytics-report-PD6XZ4ZA.js +29 -0
- package/dist/get-analytics-report-QMXNQ7VA.js +30 -0
- package/dist/{get-dataset-ALSP7RTX.js → get-dataset-5QORNVOZ.js} +4 -4
- package/dist/{get-dataset-X4B5JDG2.js → get-dataset-E5WLIPNK.js} +4 -4
- package/dist/{get-evaluator-XEUZGZCH.js → get-evaluator-GYQFB4F3.js} +4 -4
- package/dist/{get-evaluator-ISMC4LLI.js → get-evaluator-QQV65MQB.js} +4 -4
- package/dist/{get-project-5VKROSDH.js → get-project-43SGQCAT.js} +4 -4
- package/dist/{get-project-RM6FRCBK.js → get-project-W5DCKXZP.js} +4 -4
- package/dist/{get-prompt-OWXJZHQQ.js → get-prompt-IUTPSRRI.js} +3 -3
- package/dist/{get-prompt-W52DY36E.js → get-prompt-ZTCWGYJV.js} +3 -3
- package/dist/{get-run-plan-BE3M2AUX.js → get-run-plan-M3LVXMGO.js} +4 -4
- package/dist/{get-run-plan-RUXQ6PAX.js → get-run-plan-MEPEU353.js} +4 -4
- package/dist/{get-scenario-RNM7BAX2.js → get-scenario-2DM4XR44.js} +4 -4
- package/dist/{get-scenario-YM4ODWW6.js → get-scenario-D6EPSSPW.js} +4 -4
- package/dist/{get-simulation-run-6GIATQE5.js → get-simulation-run-53WM2XOO.js} +4 -4
- package/dist/{get-simulation-run-LCFSMPGQ.js → get-simulation-run-RKQ52TKP.js} +4 -4
- package/dist/{get-test-suite-P5LJ6VLF.js → get-test-suite-DP2HNOQZ.js} +4 -4
- package/dist/{get-test-suite-GC2O7YH6.js → get-test-suite-MUSY2CDJ.js} +4 -4
- package/dist/{get-trace-SEF3FMR5.js → get-trace-5Z2BIZ3V.js} +3 -3
- package/dist/{get-trace-KBRVV4NN.js → get-trace-THPWSLD3.js} +3 -3
- package/dist/{get-workflow-YXULW4GC.js → get-workflow-63E7BNLY.js} +4 -4
- package/dist/{get-workflow-7PVED7JE.js → get-workflow-R6XUKTZ7.js} +4 -4
- package/dist/{http-server-IR4QOS43.js → http-server-4JHSQN56.js} +245 -45
- package/dist/index.js +1847 -899
- package/dist/langwatch-api-analytics-reports-IIHGTTQA.js +17 -0
- package/dist/langwatch-api-analytics-reports-IQ6CHM5Y.js +18 -0
- package/dist/{langwatch-api-annotations-TBHLCQ5R.js → langwatch-api-annotations-CN2KYV3Z.js} +4 -4
- package/dist/{langwatch-api-annotations-6SA4OB4C.js → langwatch-api-annotations-CRI6JTQR.js} +4 -4
- package/dist/{langwatch-api-monitors-CBF3FGIM.js → langwatch-api-monitors-66O5Z5LB.js} +3 -3
- package/dist/{langwatch-api-monitors-YNWA2M5Y.js → langwatch-api-monitors-GNHQRPMR.js} +3 -3
- package/dist/{langwatch-api-secrets-RNFO4LF2.js → langwatch-api-secrets-B7BURV76.js} +3 -3
- package/dist/{langwatch-api-secrets-ADTOJELP.js → langwatch-api-secrets-P6SHZOHE.js} +3 -3
- package/dist/{langwatch-api-triggers-KQDQC6L5.js → langwatch-api-triggers-6FR4VWDL.js} +4 -4
- package/dist/{langwatch-api-triggers-QS7HDIVW.js → langwatch-api-triggers-VKNGXSJH.js} +4 -4
- package/dist/langwatch-api-workflows-22RQFYO7.js +15 -0
- package/dist/{langwatch-api-workflows-OKC4FXIF.js → langwatch-api-workflows-KDACD36L.js} +4 -4
- package/dist/{list-agents-RBAOCF53.js → list-agents-SVXWLLO7.js} +4 -4
- package/dist/{list-agents-HVYWEQMI.js → list-agents-XM5JNCVK.js} +4 -4
- package/dist/list-analytics-reports-DEKKC6BU.js +32 -0
- package/dist/list-analytics-reports-E7QFC22G.js +33 -0
- package/dist/{list-annotations-J4UAHSUN.js → list-annotations-5CGNOIKI.js} +4 -4
- package/dist/{list-annotations-HJH4NBLD.js → list-annotations-P26ELIAO.js} +4 -4
- package/dist/{list-api-keys-A2PMV435.js → list-api-keys-B4YL7STE.js} +4 -4
- package/dist/{list-api-keys-7UTJRZDG.js → list-api-keys-ZIJJH755.js} +4 -4
- package/dist/list-dashboards-F4YJPDKD.js +29 -0
- package/dist/list-dashboards-XHYTXEQK.js +30 -0
- package/dist/{list-dataset-records-WFM7F33C.js → list-dataset-records-SWCEDRPX.js} +4 -4
- package/dist/{list-dataset-records-M5TKA6LK.js → list-dataset-records-YWGROVKC.js} +4 -4
- package/dist/{list-datasets-B5X4P7BQ.js → list-datasets-32SCF66H.js} +4 -4
- package/dist/{list-datasets-THUKQHPX.js → list-datasets-YYADWT4D.js} +4 -4
- package/dist/{list-evaluators-MYH2OVCI.js → list-evaluators-KKQKBJKN.js} +4 -4
- package/dist/{list-evaluators-NLVWF6K7.js → list-evaluators-V6LP6ZQA.js} +4 -4
- package/dist/{list-model-providers-3JUGP4YI.js → list-model-providers-RCPVT7R4.js} +4 -4
- package/dist/{list-model-providers-H3XKORFO.js → list-model-providers-TMBSB6EE.js} +4 -4
- package/dist/{list-projects-YNNSRMLC.js → list-projects-4Y74TFDZ.js} +4 -4
- package/dist/{list-projects-6EJ5YYEW.js → list-projects-R4MTRF3C.js} +4 -4
- package/dist/{list-prompt-tags-NVFQO6WX.js → list-prompt-tags-C345AGM2.js} +3 -3
- package/dist/{list-prompt-tags-XUQTTAH4.js → list-prompt-tags-RITKQDC5.js} +3 -3
- package/dist/{list-prompts-IRI6AIXO.js → list-prompts-DSJ2LUSU.js} +3 -3
- package/dist/{list-prompts-HSIMMHTF.js → list-prompts-F7C5L5XK.js} +3 -3
- package/dist/{list-run-plans-PX2XI6EK.js → list-run-plans-YPGLC5QG.js} +4 -4
- package/dist/{list-run-plans-QALLCN2K.js → list-run-plans-ZHRZHCDL.js} +4 -4
- package/dist/{list-scenarios-SSJQEMJP.js → list-scenarios-6HN72TMW.js} +4 -4
- package/dist/{list-scenarios-QZRPVHS4.js → list-scenarios-HCYFOTSL.js} +4 -4
- package/dist/{list-simulation-runs-OEADLLQR.js → list-simulation-runs-BKVMQQMT.js} +4 -4
- package/dist/{list-simulation-runs-KNOLGMDV.js → list-simulation-runs-JNST5PQU.js} +4 -4
- package/dist/{list-test-suites-N4WVLBKK.js → list-test-suites-4ZVYYKVB.js} +4 -4
- package/dist/{list-test-suites-ANAQBLDG.js → list-test-suites-YY4J3L7H.js} +4 -4
- package/dist/{list-trigger-fires-WTW4DVIW.js → list-trigger-fires-3XM6YZWG.js} +4 -4
- package/dist/{list-trigger-fires-JV3WFYYG.js → list-trigger-fires-5C5XM2KQ.js} +4 -4
- package/dist/{list-triggers-V4Y356AK.js → list-triggers-DARBIIRA.js} +4 -4
- package/dist/{list-triggers-SQNIG35Q.js → list-triggers-MRSWN7RR.js} +4 -4
- package/dist/{list-workflows-ZHTX5LCL.js → list-workflows-BGUSQUJX.js} +4 -4
- package/dist/{list-workflows-IMSX7SXU.js → list-workflows-NXOWP3XS.js} +4 -4
- package/dist/{rename-prompt-tag-IQI7MHOI.js → rename-prompt-tag-F3WT4FB4.js} +3 -3
- package/dist/{rename-prompt-tag-PA2BRIE6.js → rename-prompt-tag-HR5HZZI2.js} +3 -3
- package/dist/{rename-test-suite-NNVLMLKY.js → rename-test-suite-2ZRXG5O7.js} +4 -4
- package/dist/{rename-test-suite-4J7UX5S2.js → rename-test-suite-PWXKE7Z4.js} +4 -4
- package/dist/{report-issue-AS34ZMJF.js → report-issue-HG7XCPOY.js} +28 -2
- package/dist/{report-issue-DCZFLGDO.js → report-issue-TWRFUPGB.js} +28 -2
- package/dist/{rerun-run-plan-TG2V4WM4.js → rerun-run-plan-BFRZFEJB.js} +4 -4
- package/dist/{rerun-run-plan-ZI5OY3VA.js → rerun-run-plan-LXM3RFZC.js} +4 -4
- package/dist/{revoke-api-key-3J3ZA4UB.js → revoke-api-key-GR55PUP4.js} +4 -4
- package/dist/{revoke-api-key-SFMEFWJC.js → revoke-api-key-KCDOYPUK.js} +4 -4
- package/dist/{run-agent-YNV6ZHW4.js → run-agent-HRVRHRHI.js} +4 -4
- package/dist/{run-agent-W4VJP72Z.js → run-agent-WS6TADJQ.js} +4 -4
- package/dist/{run-plan-6C77GWG4.js → run-plan-G24DBB5D.js} +4 -4
- package/dist/{run-plan-PAARQSI4.js → run-plan-NSXMBEC5.js} +4 -4
- package/dist/{run-query-T4QW2Z5O.js → run-query-6YVOA5NV.js} +19 -5
- package/dist/{run-query-KJDH544C.js → run-query-7QIYSDVI.js} +19 -5
- package/dist/{run-test-suite-STB6NUJM.js → run-test-suite-NTKLJZCJ.js} +4 -4
- package/dist/{run-test-suite-SQJELEZX.js → run-test-suite-P33XFQ6H.js} +4 -4
- package/dist/{run-workflow-D6PQNBI6.js → run-workflow-E5ZRSXUB.js} +4 -4
- package/dist/{run-workflow-SP32SO5M.js → run-workflow-HDF6CRLM.js} +4 -4
- package/dist/{search-traces-HCBGOG6R.js → search-traces-X7NSRTTP.js} +3 -3
- package/dist/{search-traces-HSTQ6WTQ.js → search-traces-XWZYOZOM.js} +3 -3
- package/dist/{set-model-provider-GF7NXUJA.js → set-model-provider-XJF47L6H.js} +4 -4
- package/dist/{set-model-provider-KDQ7C4EZ.js → set-model-provider-YPUCFEXG.js} +4 -4
- package/dist/{update-agent-MXNOBS4H.js → update-agent-6FHGWOO7.js} +4 -4
- package/dist/{update-agent-DWG43T2P.js → update-agent-VEDXQRSM.js} +4 -4
- package/dist/update-dashboard-widget-VOKXN7JA.js +64 -0
- package/dist/update-dashboard-widget-VUIQZ7F5.js +63 -0
- package/dist/{update-dataset-SQZ6T4WX.js → update-dataset-7AQ24NRS.js} +4 -4
- package/dist/{update-dataset-DQH3OHOU.js → update-dataset-GHKDCJJQ.js} +4 -4
- package/dist/{update-dataset-record-3AT4IPBC.js → update-dataset-record-IRD6FH2C.js} +4 -4
- package/dist/{update-dataset-record-7PLDGTMR.js → update-dataset-record-ZZUPG7AS.js} +4 -4
- package/dist/{update-evaluator-4LFTKFPT.js → update-evaluator-O6EJFTQJ.js} +4 -4
- package/dist/{update-evaluator-IGTX6PX4.js → update-evaluator-PUJFU5LT.js} +4 -4
- package/dist/{update-project-PLJIOZS6.js → update-project-HO53IHXC.js} +4 -4
- package/dist/{update-project-QVHSJRUP.js → update-project-VTVU6KNP.js} +4 -4
- package/dist/{update-prompt-GDKRYJI3.js → update-prompt-FABVQCAC.js} +3 -3
- package/dist/{update-prompt-MY263DYF.js → update-prompt-MNRLCLBA.js} +3 -3
- package/dist/{update-scenario-MOHRQKAQ.js → update-scenario-MQZZM5CP.js} +4 -4
- package/dist/{update-scenario-7KA3JDXA.js → update-scenario-XIZNUH4I.js} +4 -4
- package/package.json +2 -2
- package/pyproject.toml +17 -2
- package/src/config.d.ts +2 -0
- package/src/config.ts +2 -0
- package/src/create-mcp-server.ts +165 -41
- package/src/langwatch-api-analytics-reports.ts +62 -0
- package/src/langwatch-api-dashboard-widgets.ts +4 -68
- package/src/langwatch-api-dashboards.ts +110 -28
- package/src/langwatch-api-projects.ts +0 -17
- package/src/langwatch-api-query.ts +6 -0
- package/src/langwatch-api.ts +60 -27
- package/src/schemas/widget-sources.ts +69 -0
- package/src/tools/add-dashboard-widget.ts +23 -32
- package/src/tools/create-analytics-report.ts +7 -0
- package/src/tools/dashboard-widget-queries.ts +22 -0
- package/src/tools/dashboards.ts +104 -0
- package/src/tools/delete-analytics-report.ts +7 -0
- package/src/tools/get-analytics-report.ts +23 -0
- package/src/tools/list-analytics-reports.ts +27 -0
- package/src/tools/list-dashboards.ts +20 -21
- package/src/tools/report-issue.ts +2 -0
- package/src/tools/run-experiment.ts +5 -1
- package/src/tools/run-query.ts +23 -1
- package/src/tools/update-dashboard-widget.ts +32 -40
- package/uv.lock +667 -341
- package/dist/add-dashboard-widget-4ZC5UN73.js +0 -50
- package/dist/add-dashboard-widget-ACC6QYBG.js +0 -49
- package/dist/chunk-5FNCQRCX.js +0 -91
- package/dist/chunk-ILZDO25L.js +0 -36
- package/dist/chunk-K2I7Z3LZ.js +0 -28
- package/dist/create-dashboard-DHVFMEU4.js +0 -18
- package/dist/create-dashboard-WTKKS5Z6.js +0 -19
- package/dist/delete-dashboard-76N66XXL.js +0 -18
- package/dist/delete-dashboard-JVIVHNJM.js +0 -19
- package/dist/get-dashboard-5NYJEIX2.js +0 -29
- package/dist/get-dashboard-QMTYDQAZ.js +0 -30
- package/dist/langwatch-api-dashboards-6EO2VVZW.js +0 -17
- package/dist/langwatch-api-dashboards-NHU5BZD7.js +0 -18
- package/dist/langwatch-api-workflows-XGJE6SR5.js +0 -15
- package/dist/list-dashboard-boards-OPWROHMG.js +0 -33
- package/dist/list-dashboard-boards-U2GJ7GC5.js +0 -34
- package/dist/list-dashboards-ROSYFLDQ.js +0 -33
- package/dist/list-dashboards-RQ635ZU7.js +0 -32
- package/dist/update-dashboard-widget-CJKJLCDY.js +0 -71
- package/dist/update-dashboard-widget-CYQDS2NR.js +0 -70
- package/src/langwatch-api-boards.ts +0 -46
- package/src/tools/create-dashboard.ts +0 -7
- package/src/tools/dashboard-exists.ts +0 -25
- package/src/tools/delete-dashboard.ts +0 -7
- package/src/tools/get-dashboard.ts +0 -22
- package/src/tools/list-dashboard-boards.ts +0 -28
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
assertDashboardExists,
|
|
3
|
-
getDashboardWidget,
|
|
4
|
-
normalizeDashboardWidgetQueries,
|
|
5
|
-
updateDashboardWidget
|
|
6
|
-
} from "./chunk-5FNCQRCX.js";
|
|
7
|
-
import "./chunk-K2I7Z3LZ.js";
|
|
8
|
-
import {
|
|
9
|
-
getCurrentProject
|
|
10
|
-
} from "./chunk-B4J3PJLX.js";
|
|
11
|
-
import {
|
|
12
|
-
LangWatchApiError
|
|
13
|
-
} from "./chunk-UWLE5T2F.js";
|
|
14
|
-
import "./chunk-H6WGMG2T.js";
|
|
15
|
-
|
|
16
|
-
// src/tools/update-dashboard-widget.ts
|
|
17
|
-
async function handleUpdateDashboardWidget(params) {
|
|
18
|
-
const { dashboardId, widgetId, name, code, description } = params;
|
|
19
|
-
if (name === void 0 && code === void 0 && params.queries === void 0 && description === void 0) {
|
|
20
|
-
throw new Error("Provide at least one of name, code, queries or description to change.");
|
|
21
|
-
}
|
|
22
|
-
const queries = params.queries === void 0 ? void 0 : normalizeDashboardWidgetQueries({ queries: params.queries });
|
|
23
|
-
const project = await getCurrentProject();
|
|
24
|
-
await assertDashboardExists({ projectId: project.id, dashboardId });
|
|
25
|
-
const current = await getWidgetOnDashboard({ projectId: project.id, widgetId, dashboardId });
|
|
26
|
-
const widget = await updateDashboardWidget({
|
|
27
|
-
projectId: project.id,
|
|
28
|
-
widgetId: current.id,
|
|
29
|
-
...name === void 0 ? {} : { name },
|
|
30
|
-
...code === void 0 ? {} : { code },
|
|
31
|
-
...queries === void 0 ? {} : { queries },
|
|
32
|
-
...description === void 0 ? {} : { description }
|
|
33
|
-
});
|
|
34
|
-
return [
|
|
35
|
-
`Widget "${widget.name}" updated on dashboard "${dashboardId}".`,
|
|
36
|
-
`**Widget ID**: ${widget.id}`,
|
|
37
|
-
`**Queries**: ${widget.definition.queries.map((query) => query.name).join(", ") || "(none)"}`,
|
|
38
|
-
"",
|
|
39
|
-
"```json",
|
|
40
|
-
JSON.stringify(widget, null, 2),
|
|
41
|
-
"```"
|
|
42
|
-
].join("\n");
|
|
43
|
-
}
|
|
44
|
-
async function getWidgetOnDashboard({
|
|
45
|
-
projectId,
|
|
46
|
-
widgetId,
|
|
47
|
-
dashboardId
|
|
48
|
-
}) {
|
|
49
|
-
let widget;
|
|
50
|
-
try {
|
|
51
|
-
widget = await getDashboardWidget({ projectId, widgetId });
|
|
52
|
-
} catch (error) {
|
|
53
|
-
if (error instanceof LangWatchApiError && error.status === 404) {
|
|
54
|
-
throw new Error(
|
|
55
|
-
`No widget with ID "${widgetId}" was found in this project. Use the widget ID add_dashboard_widget returned.`
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
throw error;
|
|
59
|
-
}
|
|
60
|
-
if (widget.dashboardId !== dashboardId) {
|
|
61
|
-
throw new Error(
|
|
62
|
-
`Widget "${widgetId}" is not on dashboard "${dashboardId}". Pass the dashboard the widget was added to.`
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
return widget;
|
|
66
|
-
}
|
|
67
|
-
export {
|
|
68
|
-
handleUpdateDashboardWidget
|
|
69
|
-
};
|
|
70
|
-
//# sourceMappingURL=update-dashboard-widget-CYQDS2NR.js.map
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { makeRequest } from "./langwatch-api.js";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A board in the Dashboards area, the place a widget is added to
|
|
5
|
-
* (`modules/dashboard/contract/src/board-rest.schemas.ts`). Analytics Reports boards are
|
|
6
|
-
* `/api/v1/dashboards`, and hold no widget.
|
|
7
|
-
*/
|
|
8
|
-
export interface Board {
|
|
9
|
-
id: string;
|
|
10
|
-
name: string;
|
|
11
|
-
description: string | null;
|
|
12
|
-
scope: "PRIVATE" | "PROJECT" | "ORGANIZATION";
|
|
13
|
-
createdAt: string;
|
|
14
|
-
updatedAt: string;
|
|
15
|
-
platformUrl: string;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface BoardListItem extends Board {
|
|
19
|
-
widgetCount: number;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/** The project's Dashboards boards, each with how many widgets it holds. */
|
|
23
|
-
export async function listBoards({
|
|
24
|
-
projectId,
|
|
25
|
-
}: {
|
|
26
|
-
projectId: string;
|
|
27
|
-
}): Promise<{ data: BoardListItem[] }> {
|
|
28
|
-
return makeRequest(
|
|
29
|
-
"GET",
|
|
30
|
-
`/api/v1/projects/${encodeURIComponent(projectId)}/analytics/boards`,
|
|
31
|
-
) as Promise<{ data: BoardListItem[] }>;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/** Reads one Dashboards board; a board in another project, or only in Reports, answers 404. */
|
|
35
|
-
export async function getBoard({
|
|
36
|
-
projectId,
|
|
37
|
-
boardId,
|
|
38
|
-
}: {
|
|
39
|
-
projectId: string;
|
|
40
|
-
boardId: string;
|
|
41
|
-
}): Promise<Board> {
|
|
42
|
-
return makeRequest(
|
|
43
|
-
"GET",
|
|
44
|
-
`/api/v1/projects/${encodeURIComponent(projectId)}/analytics/boards/${encodeURIComponent(boardId)}`,
|
|
45
|
-
) as Promise<Board>;
|
|
46
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { createDashboard as apiCreateDashboard } from "../langwatch-api-dashboards.ts";
|
|
2
|
-
|
|
3
|
-
export async function handleCreateDashboard(params: { name: string }): Promise<string> {
|
|
4
|
-
const dashboard = await apiCreateDashboard({ name: params.name });
|
|
5
|
-
|
|
6
|
-
return `Dashboard created successfully!\n\n**Name**: ${dashboard.name}\n**ID**: ${dashboard.id}`;
|
|
7
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { getBoard } from "../langwatch-api-boards.js";
|
|
2
|
-
import { LangWatchApiError } from "../langwatch-api.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Refuses a dashboard id that names no Dashboards board in this project, naming the id, so an
|
|
6
|
-
* agent's typo, or the id of an Analytics Reports board, fails before any widget is written.
|
|
7
|
-
*/
|
|
8
|
-
export async function assertDashboardExists({
|
|
9
|
-
projectId,
|
|
10
|
-
dashboardId,
|
|
11
|
-
}: {
|
|
12
|
-
projectId: string;
|
|
13
|
-
dashboardId: string;
|
|
14
|
-
}): Promise<void> {
|
|
15
|
-
try {
|
|
16
|
-
await getBoard({ projectId, boardId: dashboardId });
|
|
17
|
-
} catch (error) {
|
|
18
|
-
if (error instanceof LangWatchApiError && error.status === 404) {
|
|
19
|
-
throw new Error(
|
|
20
|
-
`No dashboard with ID "${dashboardId}" was found in this project. Use list_dashboard_boards to find a valid dashboard ID.`,
|
|
21
|
-
);
|
|
22
|
-
}
|
|
23
|
-
throw error;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { deleteDashboard as apiDeleteDashboard } from "../langwatch-api-dashboards.ts";
|
|
2
|
-
|
|
3
|
-
export async function handleDeleteDashboard(params: { id: string }): Promise<string> {
|
|
4
|
-
const result = await apiDeleteDashboard(params.id);
|
|
5
|
-
|
|
6
|
-
return `Dashboard deleted successfully!\n\n**Name**: ${result.name}\n**ID**: ${result.id}`;
|
|
7
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { getDashboard as apiGetDashboard } from "../langwatch-api-dashboards.ts";
|
|
2
|
-
|
|
3
|
-
export async function handleGetDashboard(params: { id: string }): Promise<string> {
|
|
4
|
-
const dashboard = await apiGetDashboard(params.id);
|
|
5
|
-
|
|
6
|
-
const lines: string[] = [];
|
|
7
|
-
lines.push(`# ${dashboard.name}\n`);
|
|
8
|
-
lines.push(`**ID**: ${dashboard.id}`);
|
|
9
|
-
lines.push(`**Order**: ${dashboard.order}`);
|
|
10
|
-
lines.push(`**Graphs**: ${Array.isArray(dashboard.graphs) ? dashboard.graphs.length : 0}`);
|
|
11
|
-
lines.push(`**Created**: ${dashboard.createdAt}`);
|
|
12
|
-
lines.push(`**Updated**: ${dashboard.updatedAt}`);
|
|
13
|
-
|
|
14
|
-
if (Array.isArray(dashboard.graphs) && dashboard.graphs.length > 0) {
|
|
15
|
-
lines.push("\n## Graphs\n");
|
|
16
|
-
lines.push("```json");
|
|
17
|
-
lines.push(JSON.stringify(dashboard.graphs, null, 2));
|
|
18
|
-
lines.push("```");
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return lines.join("\n");
|
|
22
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The `list_dashboard_boards` MCP tool: the Dashboards boards a widget can be added to, with
|
|
3
|
-
* the id `add_dashboard_widget` and `update_dashboard_widget` take.
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import { listBoards } from "../langwatch-api-boards.js";
|
|
7
|
-
import { getCurrentProject } from "../langwatch-api-projects.js";
|
|
8
|
-
|
|
9
|
-
export async function handleListDashboardBoards(): Promise<string> {
|
|
10
|
-
const project = await getCurrentProject();
|
|
11
|
-
const { data: boards } = await listBoards({ projectId: project.id });
|
|
12
|
-
|
|
13
|
-
if (boards.length === 0) {
|
|
14
|
-
return "No dashboards found in this project. Create one in the Dashboards area first.";
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
return [
|
|
18
|
-
`# Dashboards (${boards.length} total)\n`,
|
|
19
|
-
...boards.flatMap((board) => [
|
|
20
|
-
`## ${board.name}`,
|
|
21
|
-
`**ID**: ${board.id}`,
|
|
22
|
-
`**Widgets**: ${board.widgetCount}`,
|
|
23
|
-
`**URL**: ${board.platformUrl}`,
|
|
24
|
-
"",
|
|
25
|
-
]),
|
|
26
|
-
"> Pass the ID to `add_dashboard_widget` to add a widget to that dashboard.",
|
|
27
|
-
].join("\n");
|
|
28
|
-
}
|