langflow-mcp-server 1.2.0 → 2.0.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 (63) hide show
  1. package/README.md +90 -2
  2. package/dist/__tests__/fixtures/advanced-execution.d.ts +22 -0
  3. package/dist/__tests__/fixtures/advanced-execution.d.ts.map +1 -0
  4. package/dist/__tests__/fixtures/advanced-execution.js +77 -0
  5. package/dist/__tests__/fixtures/advanced-execution.js.map +1 -0
  6. package/dist/__tests__/fixtures/api-keys.d.ts +8 -0
  7. package/dist/__tests__/fixtures/api-keys.d.ts.map +1 -0
  8. package/dist/__tests__/fixtures/api-keys.js +38 -0
  9. package/dist/__tests__/fixtures/api-keys.js.map +1 -0
  10. package/dist/__tests__/fixtures/auth.d.ts +9 -0
  11. package/dist/__tests__/fixtures/auth.d.ts.map +1 -0
  12. package/dist/__tests__/fixtures/auth.js +26 -0
  13. package/dist/__tests__/fixtures/auth.js.map +1 -0
  14. package/dist/__tests__/fixtures/custom-components.d.ts +5 -0
  15. package/dist/__tests__/fixtures/custom-components.d.ts.map +1 -0
  16. package/dist/__tests__/fixtures/custom-components.js +49 -0
  17. package/dist/__tests__/fixtures/custom-components.js.map +1 -0
  18. package/dist/__tests__/fixtures/files.d.ts +14 -0
  19. package/dist/__tests__/fixtures/files.d.ts.map +1 -0
  20. package/dist/__tests__/fixtures/files.js +41 -0
  21. package/dist/__tests__/fixtures/files.js.map +1 -0
  22. package/dist/__tests__/fixtures/misc.d.ts +18 -0
  23. package/dist/__tests__/fixtures/misc.d.ts.map +1 -0
  24. package/dist/__tests__/fixtures/misc.js +101 -0
  25. package/dist/__tests__/fixtures/misc.js.map +1 -0
  26. package/dist/__tests__/fixtures/monitoring.d.ts +13 -0
  27. package/dist/__tests__/fixtures/monitoring.d.ts.map +1 -0
  28. package/dist/__tests__/fixtures/monitoring.js +88 -0
  29. package/dist/__tests__/fixtures/monitoring.js.map +1 -0
  30. package/dist/__tests__/fixtures/store.d.ts +18 -0
  31. package/dist/__tests__/fixtures/store.d.ts.map +1 -0
  32. package/dist/__tests__/fixtures/store.js +96 -0
  33. package/dist/__tests__/fixtures/store.js.map +1 -0
  34. package/dist/__tests__/fixtures/users.d.ts +9 -0
  35. package/dist/__tests__/fixtures/users.d.ts.map +1 -0
  36. package/dist/__tests__/fixtures/users.js +55 -0
  37. package/dist/__tests__/fixtures/users.js.map +1 -0
  38. package/dist/__tests__/fixtures/validation.d.ts +10 -0
  39. package/dist/__tests__/fixtures/validation.d.ts.map +1 -0
  40. package/dist/__tests__/fixtures/validation.js +43 -0
  41. package/dist/__tests__/fixtures/validation.js.map +1 -0
  42. package/dist/__tests__/fixtures/vertices.d.ts +29 -0
  43. package/dist/__tests__/fixtures/vertices.d.ts.map +1 -0
  44. package/dist/__tests__/fixtures/vertices.js +51 -0
  45. package/dist/__tests__/fixtures/vertices.js.map +1 -0
  46. package/dist/mcp/server.d.ts +2 -0
  47. package/dist/mcp/server.d.ts.map +1 -1
  48. package/dist/mcp/server.js +344 -5
  49. package/dist/mcp/server.js.map +1 -1
  50. package/dist/mcp/tools.d.ts.map +1 -1
  51. package/dist/mcp/tools.js +1218 -0
  52. package/dist/mcp/tools.js.map +1 -1
  53. package/dist/mcp/validation.d.ts +241 -0
  54. package/dist/mcp/validation.d.ts.map +1 -1
  55. package/dist/mcp/validation.js +211 -2
  56. package/dist/mcp/validation.js.map +1 -1
  57. package/dist/services/langflow-client.d.ts +131 -1
  58. package/dist/services/langflow-client.d.ts.map +1 -1
  59. package/dist/services/langflow-client.js +843 -1
  60. package/dist/services/langflow-client.js.map +1 -1
  61. package/dist/types/index.d.ts +226 -0
  62. package/dist/types/index.d.ts.map +1 -1
  63. package/package.json +2 -1
package/dist/mcp/tools.js CHANGED
@@ -1326,6 +1326,1224 @@ Related Tools:
1326
1326
  idempotentHint: true,
1327
1327
  openWorldHint: true
1328
1328
  }
1329
+ },
1330
+ {
1331
+ name: 'upload_file',
1332
+ description: 'Upload a file to a specific flow. Supports multipart/form-data for binary file uploads.',
1333
+ inputSchema: {
1334
+ type: 'object',
1335
+ properties: {
1336
+ flow_id: {
1337
+ type: 'string',
1338
+ description: 'Flow ID (UUID) to upload file to'
1339
+ },
1340
+ file_content: {
1341
+ type: 'string',
1342
+ description: 'Base64 encoded file content'
1343
+ },
1344
+ file_name: {
1345
+ type: 'string',
1346
+ description: 'Name of the file to upload'
1347
+ }
1348
+ },
1349
+ required: ['flow_id', 'file_content', 'file_name']
1350
+ },
1351
+ annotations: {
1352
+ readOnlyHint: false,
1353
+ destructiveHint: false,
1354
+ idempotentHint: false,
1355
+ openWorldHint: true
1356
+ }
1357
+ },
1358
+ {
1359
+ name: 'download_file',
1360
+ description: 'Download a specific file from a flow. Returns file content as base64.',
1361
+ inputSchema: {
1362
+ type: 'object',
1363
+ properties: {
1364
+ flow_id: {
1365
+ type: 'string',
1366
+ description: 'Flow ID (UUID) containing the file'
1367
+ },
1368
+ file_name: {
1369
+ type: 'string',
1370
+ description: 'Name of the file to download'
1371
+ }
1372
+ },
1373
+ required: ['flow_id', 'file_name']
1374
+ },
1375
+ annotations: {
1376
+ readOnlyHint: true,
1377
+ destructiveHint: false,
1378
+ idempotentHint: true,
1379
+ openWorldHint: true
1380
+ }
1381
+ },
1382
+ {
1383
+ name: 'list_files',
1384
+ description: 'List all files associated with a specific flow.',
1385
+ inputSchema: {
1386
+ type: 'object',
1387
+ properties: {
1388
+ flow_id: {
1389
+ type: 'string',
1390
+ description: 'Flow ID (UUID) to list files from'
1391
+ }
1392
+ },
1393
+ required: ['flow_id']
1394
+ },
1395
+ annotations: {
1396
+ readOnlyHint: true,
1397
+ destructiveHint: false,
1398
+ idempotentHint: true,
1399
+ openWorldHint: true
1400
+ }
1401
+ },
1402
+ {
1403
+ name: 'delete_file',
1404
+ description: 'Delete a specific file from a flow.',
1405
+ inputSchema: {
1406
+ type: 'object',
1407
+ properties: {
1408
+ flow_id: {
1409
+ type: 'string',
1410
+ description: 'Flow ID (UUID) containing the file'
1411
+ },
1412
+ file_name: {
1413
+ type: 'string',
1414
+ description: 'Name of the file to delete'
1415
+ }
1416
+ },
1417
+ required: ['flow_id', 'file_name']
1418
+ },
1419
+ annotations: {
1420
+ readOnlyHint: false,
1421
+ destructiveHint: true,
1422
+ idempotentHint: true,
1423
+ openWorldHint: true
1424
+ }
1425
+ },
1426
+ {
1427
+ name: 'get_file_image',
1428
+ description: 'Get an image file from a flow. Returns image content as base64.',
1429
+ inputSchema: {
1430
+ type: 'object',
1431
+ properties: {
1432
+ flow_id: {
1433
+ type: 'string',
1434
+ description: 'Flow ID (UUID) containing the image'
1435
+ },
1436
+ file_name: {
1437
+ type: 'string',
1438
+ description: 'Name of the image file to retrieve'
1439
+ }
1440
+ },
1441
+ required: ['flow_id', 'file_name']
1442
+ },
1443
+ annotations: {
1444
+ readOnlyHint: true,
1445
+ destructiveHint: false,
1446
+ idempotentHint: true,
1447
+ openWorldHint: true
1448
+ }
1449
+ },
1450
+ {
1451
+ name: 'list_profile_pictures',
1452
+ description: 'List all available profile pictures.',
1453
+ inputSchema: {
1454
+ type: 'object',
1455
+ properties: {}
1456
+ },
1457
+ annotations: {
1458
+ readOnlyHint: true,
1459
+ destructiveHint: false,
1460
+ idempotentHint: true,
1461
+ openWorldHint: true
1462
+ }
1463
+ },
1464
+ {
1465
+ name: 'get_profile_picture',
1466
+ description: 'Get a specific profile picture by folder and file name.',
1467
+ inputSchema: {
1468
+ type: 'object',
1469
+ properties: {
1470
+ folder_name: {
1471
+ type: 'string',
1472
+ description: 'Folder name containing the profile picture'
1473
+ },
1474
+ file_name: {
1475
+ type: 'string',
1476
+ description: 'Name of the profile picture file'
1477
+ }
1478
+ },
1479
+ required: ['folder_name', 'file_name']
1480
+ },
1481
+ annotations: {
1482
+ readOnlyHint: true,
1483
+ destructiveHint: false,
1484
+ idempotentHint: true,
1485
+ openWorldHint: true
1486
+ }
1487
+ },
1488
+ {
1489
+ name: 'validate_code',
1490
+ description: 'Validate Python code for custom components. Checks syntax and provides error/warning feedback.',
1491
+ inputSchema: {
1492
+ type: 'object',
1493
+ properties: {
1494
+ code: {
1495
+ type: 'string',
1496
+ description: 'Python code to validate'
1497
+ }
1498
+ },
1499
+ required: ['code']
1500
+ },
1501
+ annotations: {
1502
+ readOnlyHint: true,
1503
+ destructiveHint: false,
1504
+ idempotentHint: true,
1505
+ openWorldHint: true
1506
+ }
1507
+ },
1508
+ {
1509
+ name: 'validate_prompt',
1510
+ description: 'Validate prompt template syntax. Checks for valid variable syntax and returns extracted variables.',
1511
+ inputSchema: {
1512
+ type: 'object',
1513
+ properties: {
1514
+ prompt: {
1515
+ type: 'string',
1516
+ description: 'Prompt template to validate'
1517
+ }
1518
+ },
1519
+ required: ['prompt']
1520
+ },
1521
+ annotations: {
1522
+ readOnlyHint: true,
1523
+ destructiveHint: false,
1524
+ idempotentHint: true,
1525
+ openWorldHint: true
1526
+ }
1527
+ },
1528
+ {
1529
+ name: 'check_store',
1530
+ description: 'Check if the Langflow component store is enabled and accessible.',
1531
+ inputSchema: {
1532
+ type: 'object',
1533
+ properties: {}
1534
+ },
1535
+ annotations: {
1536
+ readOnlyHint: true,
1537
+ destructiveHint: false,
1538
+ idempotentHint: true,
1539
+ openWorldHint: true
1540
+ }
1541
+ },
1542
+ {
1543
+ name: 'check_store_api_key',
1544
+ description: 'Validate a store API key for accessing the Langflow component store.',
1545
+ inputSchema: {
1546
+ type: 'object',
1547
+ properties: {
1548
+ api_key: {
1549
+ type: 'string',
1550
+ description: 'Store API key to validate'
1551
+ }
1552
+ },
1553
+ required: ['api_key']
1554
+ },
1555
+ annotations: {
1556
+ readOnlyHint: true,
1557
+ destructiveHint: false,
1558
+ idempotentHint: true,
1559
+ openWorldHint: true
1560
+ }
1561
+ },
1562
+ {
1563
+ name: 'list_store_components',
1564
+ description: 'Browse available components in the Langflow store. Supports pagination, filtering by tags, and search.',
1565
+ inputSchema: {
1566
+ type: 'object',
1567
+ properties: {
1568
+ page: {
1569
+ type: 'number',
1570
+ description: 'Page number for pagination (default: 1)'
1571
+ },
1572
+ limit: {
1573
+ type: 'number',
1574
+ description: 'Number of items per page (default: 50, max: 100)'
1575
+ },
1576
+ tags: {
1577
+ type: 'array',
1578
+ items: { type: 'string' },
1579
+ description: 'Filter by tags'
1580
+ },
1581
+ search: {
1582
+ type: 'string',
1583
+ description: 'Search query for component names/descriptions'
1584
+ }
1585
+ }
1586
+ },
1587
+ annotations: {
1588
+ readOnlyHint: true,
1589
+ destructiveHint: false,
1590
+ idempotentHint: true,
1591
+ openWorldHint: true
1592
+ }
1593
+ },
1594
+ {
1595
+ name: 'get_store_component',
1596
+ description: 'Get detailed information about a specific store component.',
1597
+ inputSchema: {
1598
+ type: 'object',
1599
+ properties: {
1600
+ component_id: {
1601
+ type: 'string',
1602
+ description: 'Store component ID'
1603
+ }
1604
+ },
1605
+ required: ['component_id']
1606
+ },
1607
+ annotations: {
1608
+ readOnlyHint: true,
1609
+ destructiveHint: false,
1610
+ idempotentHint: true,
1611
+ openWorldHint: true
1612
+ }
1613
+ },
1614
+ {
1615
+ name: 'list_store_tags',
1616
+ description: 'List all available component tags in the store.',
1617
+ inputSchema: {
1618
+ type: 'object',
1619
+ properties: {}
1620
+ },
1621
+ annotations: {
1622
+ readOnlyHint: true,
1623
+ destructiveHint: false,
1624
+ idempotentHint: true,
1625
+ openWorldHint: true
1626
+ }
1627
+ },
1628
+ {
1629
+ name: 'get_user_likes',
1630
+ description: 'Get components liked by the current user.',
1631
+ inputSchema: {
1632
+ type: 'object',
1633
+ properties: {}
1634
+ },
1635
+ annotations: {
1636
+ readOnlyHint: true,
1637
+ destructiveHint: false,
1638
+ idempotentHint: true,
1639
+ openWorldHint: true
1640
+ }
1641
+ },
1642
+ {
1643
+ name: 'run_flow_advanced',
1644
+ description: 'Advanced flow execution with full parameter control including tweaks, input/output types, session management, and streaming.',
1645
+ inputSchema: {
1646
+ type: 'object',
1647
+ properties: {
1648
+ flow_id: {
1649
+ type: 'string',
1650
+ description: 'Flow ID (UUID) to execute'
1651
+ },
1652
+ input_value: {
1653
+ type: 'string',
1654
+ description: 'Input value for the flow'
1655
+ },
1656
+ input_type: {
1657
+ type: 'string',
1658
+ description: 'Type of input (e.g., "chat", "text")'
1659
+ },
1660
+ output_type: {
1661
+ type: 'string',
1662
+ description: 'Expected output type (e.g., "chat", "text", "json")'
1663
+ },
1664
+ output_component: {
1665
+ type: 'string',
1666
+ description: 'Specific output component to retrieve results from'
1667
+ },
1668
+ tweaks: {
1669
+ type: 'object',
1670
+ description: 'Component-specific parameter overrides'
1671
+ },
1672
+ session_id: {
1673
+ type: 'string',
1674
+ description: 'Session ID for conversation continuity'
1675
+ },
1676
+ stream: {
1677
+ type: 'boolean',
1678
+ description: 'Enable streaming mode (default: false)'
1679
+ }
1680
+ },
1681
+ required: ['flow_id']
1682
+ },
1683
+ annotations: {
1684
+ readOnlyHint: false,
1685
+ destructiveHint: false,
1686
+ idempotentHint: false,
1687
+ openWorldHint: true
1688
+ }
1689
+ },
1690
+ {
1691
+ name: 'process_flow',
1692
+ description: 'Legacy process endpoint for backward compatibility. Processes a flow with inputs and optional tweaks.',
1693
+ inputSchema: {
1694
+ type: 'object',
1695
+ properties: {
1696
+ flow_id: {
1697
+ type: 'string',
1698
+ description: 'Flow ID (UUID) to process'
1699
+ },
1700
+ inputs: {
1701
+ type: 'object',
1702
+ description: 'Input values for the flow'
1703
+ },
1704
+ tweaks: {
1705
+ type: 'object',
1706
+ description: 'Component-specific parameter overrides'
1707
+ }
1708
+ },
1709
+ required: ['flow_id']
1710
+ },
1711
+ annotations: {
1712
+ readOnlyHint: false,
1713
+ destructiveHint: false,
1714
+ idempotentHint: false,
1715
+ openWorldHint: true
1716
+ }
1717
+ },
1718
+ {
1719
+ name: 'predict_flow',
1720
+ description: 'Legacy predict endpoint for backward compatibility. Predicts flow output with inputs and optional tweaks.',
1721
+ inputSchema: {
1722
+ type: 'object',
1723
+ properties: {
1724
+ flow_id: {
1725
+ type: 'string',
1726
+ description: 'Flow ID (UUID) to predict'
1727
+ },
1728
+ inputs: {
1729
+ type: 'object',
1730
+ description: 'Input values for the flow'
1731
+ },
1732
+ tweaks: {
1733
+ type: 'object',
1734
+ description: 'Component-specific parameter overrides'
1735
+ }
1736
+ },
1737
+ required: ['flow_id']
1738
+ },
1739
+ annotations: {
1740
+ readOnlyHint: false,
1741
+ destructiveHint: false,
1742
+ idempotentHint: false,
1743
+ openWorldHint: true
1744
+ }
1745
+ },
1746
+ {
1747
+ name: 'get_monitor_builds',
1748
+ description: 'Get build execution history for a specific flow. Retrieves vertex build map model containing build status and execution details. Essential for monitoring flow build history, debugging build failures, and tracking build performance over time.',
1749
+ inputSchema: {
1750
+ type: 'object',
1751
+ properties: {
1752
+ flow_id: {
1753
+ type: 'string',
1754
+ format: 'uuid',
1755
+ description: 'Flow ID (UUID) to retrieve build history for'
1756
+ }
1757
+ },
1758
+ required: ['flow_id']
1759
+ },
1760
+ annotations: {
1761
+ readOnlyHint: true,
1762
+ destructiveHint: false,
1763
+ idempotentHint: true,
1764
+ openWorldHint: true
1765
+ }
1766
+ },
1767
+ {
1768
+ name: 'get_monitor_messages',
1769
+ description: 'Query chat/message history with flexible filtering options. Retrieve messages filtered by flow ID, session, sender, or sender name. Supports custom ordering for chronological or reverse-chronological message retrieval. Essential for debugging chat flows, analyzing conversation patterns, and monitoring user interactions.',
1770
+ inputSchema: {
1771
+ type: 'object',
1772
+ properties: {
1773
+ flow_id: {
1774
+ type: 'string',
1775
+ description: 'Optional flow ID (UUID) to filter messages by flow'
1776
+ },
1777
+ session_id: {
1778
+ type: 'string',
1779
+ description: 'Optional session ID to filter messages by session'
1780
+ },
1781
+ sender: {
1782
+ type: 'string',
1783
+ description: 'Optional sender identifier to filter messages'
1784
+ },
1785
+ sender_name: {
1786
+ type: 'string',
1787
+ description: 'Optional sender name to filter messages'
1788
+ },
1789
+ order_by: {
1790
+ type: 'string',
1791
+ description: 'Optional field to order results by (default: timestamp)'
1792
+ }
1793
+ }
1794
+ },
1795
+ annotations: {
1796
+ readOnlyHint: true,
1797
+ destructiveHint: false,
1798
+ idempotentHint: true,
1799
+ openWorldHint: true
1800
+ }
1801
+ },
1802
+ {
1803
+ name: 'get_monitor_message',
1804
+ description: 'Get detailed information about a specific message by ID. Retrieves complete message data including sender, content, timestamp, and metadata. Useful for inspecting individual message details and debugging message-related issues.',
1805
+ inputSchema: {
1806
+ type: 'object',
1807
+ properties: {
1808
+ message_id: {
1809
+ type: 'string',
1810
+ format: 'uuid',
1811
+ description: 'Message ID (UUID) to retrieve'
1812
+ }
1813
+ },
1814
+ required: ['message_id']
1815
+ },
1816
+ annotations: {
1817
+ readOnlyHint: true,
1818
+ destructiveHint: false,
1819
+ idempotentHint: true,
1820
+ openWorldHint: true
1821
+ }
1822
+ },
1823
+ {
1824
+ name: 'get_monitor_sessions',
1825
+ description: 'List all chat session IDs, optionally filtered by flow. Returns array of session identifiers that can be used to query session-specific messages. Essential for discovering active sessions, monitoring concurrent users, and analyzing session patterns.',
1826
+ inputSchema: {
1827
+ type: 'object',
1828
+ properties: {
1829
+ flow_id: {
1830
+ type: 'string',
1831
+ description: 'Optional flow ID (UUID) to filter sessions by flow'
1832
+ }
1833
+ }
1834
+ },
1835
+ annotations: {
1836
+ readOnlyHint: true,
1837
+ destructiveHint: false,
1838
+ idempotentHint: true,
1839
+ openWorldHint: true
1840
+ }
1841
+ },
1842
+ {
1843
+ name: 'get_monitor_session_messages',
1844
+ description: 'Get all messages for a specific session ID. Retrieves complete conversation history for a session in chronological order. Essential for reviewing full conversation context, debugging session-specific issues, and analyzing user interactions within a session.',
1845
+ inputSchema: {
1846
+ type: 'object',
1847
+ properties: {
1848
+ session_id: {
1849
+ type: 'string',
1850
+ description: 'Session ID to retrieve messages for'
1851
+ }
1852
+ },
1853
+ required: ['session_id']
1854
+ },
1855
+ annotations: {
1856
+ readOnlyHint: true,
1857
+ destructiveHint: false,
1858
+ idempotentHint: true,
1859
+ openWorldHint: true
1860
+ }
1861
+ },
1862
+ {
1863
+ name: 'migrate_monitor_session',
1864
+ description: 'Migrate messages from old session ID to new session ID. Updates all messages from the old session to belong to the new session, effectively merging or renaming sessions. Useful for session continuity, combining split sessions, or correcting session identifiers.',
1865
+ inputSchema: {
1866
+ type: 'object',
1867
+ properties: {
1868
+ old_session_id: {
1869
+ type: 'string',
1870
+ description: 'Original session ID to migrate from'
1871
+ },
1872
+ new_session_id: {
1873
+ type: 'string',
1874
+ description: 'Target session ID to migrate to'
1875
+ }
1876
+ },
1877
+ required: ['old_session_id', 'new_session_id']
1878
+ },
1879
+ annotations: {
1880
+ readOnlyHint: false,
1881
+ destructiveHint: false,
1882
+ idempotentHint: true,
1883
+ openWorldHint: true
1884
+ }
1885
+ },
1886
+ {
1887
+ name: 'get_monitor_transactions',
1888
+ description: 'List transaction logs for a flow with pagination support. Retrieves detailed transaction history including execution logs, API calls, and system events. Essential for debugging flow execution, analyzing performance bottlenecks, and monitoring API usage patterns.',
1889
+ inputSchema: {
1890
+ type: 'object',
1891
+ properties: {
1892
+ flow_id: {
1893
+ type: 'string',
1894
+ description: 'Flow ID (UUID) to retrieve transactions for'
1895
+ },
1896
+ page: {
1897
+ type: 'number',
1898
+ description: 'Page number for pagination (default: 1, min: 1)'
1899
+ },
1900
+ size: {
1901
+ type: 'number',
1902
+ description: 'Number of transactions per page (default: 50, max: 100)'
1903
+ }
1904
+ },
1905
+ required: ['flow_id']
1906
+ },
1907
+ annotations: {
1908
+ readOnlyHint: true,
1909
+ destructiveHint: false,
1910
+ idempotentHint: true,
1911
+ openWorldHint: true
1912
+ }
1913
+ },
1914
+ {
1915
+ name: 'delete_monitor_builds',
1916
+ description: 'Delete build history for a specific flow. Removes all stored build execution records to clean up old data and free storage space. Use cautiously as this permanently removes build history that may be useful for debugging.',
1917
+ inputSchema: {
1918
+ type: 'object',
1919
+ properties: {
1920
+ flow_id: {
1921
+ type: 'string',
1922
+ format: 'uuid',
1923
+ description: 'Flow ID (UUID) to delete build history for'
1924
+ }
1925
+ },
1926
+ required: ['flow_id']
1927
+ },
1928
+ annotations: {
1929
+ readOnlyHint: false,
1930
+ destructiveHint: true,
1931
+ idempotentHint: true,
1932
+ openWorldHint: true
1933
+ }
1934
+ },
1935
+ {
1936
+ name: 'delete_monitor_messages',
1937
+ description: 'Delete multiple messages by their IDs. Batch deletion of message records for cleanup, privacy compliance, or storage management. Permanently removes messages from the system.',
1938
+ inputSchema: {
1939
+ type: 'object',
1940
+ properties: {
1941
+ message_ids: {
1942
+ type: 'array',
1943
+ items: { type: 'string' },
1944
+ description: 'Array of message IDs (UUIDs) to delete'
1945
+ }
1946
+ },
1947
+ required: ['message_ids']
1948
+ },
1949
+ annotations: {
1950
+ readOnlyHint: false,
1951
+ destructiveHint: true,
1952
+ idempotentHint: true,
1953
+ openWorldHint: true
1954
+ }
1955
+ },
1956
+ {
1957
+ name: 'build_vertices',
1958
+ description: 'Get vertex build order for a flow. Retrieves the ordered list of vertex IDs representing the build execution sequence. Useful for understanding flow component dependencies, optimizing build performance, and debugging build order issues. Supports partial builds with start/stop component IDs.',
1959
+ inputSchema: {
1960
+ type: 'object',
1961
+ properties: {
1962
+ flow_id: {
1963
+ type: 'string',
1964
+ description: 'Flow ID (UUID) to retrieve vertex build order for'
1965
+ },
1966
+ data: {
1967
+ type: 'object',
1968
+ description: 'Optional flow data override for build'
1969
+ },
1970
+ stop_component_id: {
1971
+ type: 'string',
1972
+ description: 'Optional component ID to stop build at'
1973
+ },
1974
+ start_component_id: {
1975
+ type: 'string',
1976
+ description: 'Optional component ID to start build from'
1977
+ }
1978
+ },
1979
+ required: ['flow_id']
1980
+ },
1981
+ annotations: {
1982
+ readOnlyHint: false,
1983
+ destructiveHint: false,
1984
+ idempotentHint: true,
1985
+ openWorldHint: true
1986
+ }
1987
+ },
1988
+ {
1989
+ name: 'get_vertex',
1990
+ description: 'Get detailed information about a specific vertex (component) in a flow. Retrieves vertex configuration, state, and metadata. Essential for inspecting individual component details, debugging component issues, and understanding flow structure at the component level.',
1991
+ inputSchema: {
1992
+ type: 'object',
1993
+ properties: {
1994
+ flow_id: {
1995
+ type: 'string',
1996
+ format: 'uuid',
1997
+ description: 'Flow ID (UUID) containing the vertex'
1998
+ },
1999
+ vertex_id: {
2000
+ type: 'string',
2001
+ description: 'Vertex ID to retrieve details for'
2002
+ }
2003
+ },
2004
+ required: ['flow_id', 'vertex_id']
2005
+ },
2006
+ annotations: {
2007
+ readOnlyHint: true,
2008
+ destructiveHint: false,
2009
+ idempotentHint: true,
2010
+ openWorldHint: true
2011
+ }
2012
+ },
2013
+ {
2014
+ name: 'stream_vertex_build',
2015
+ description: 'Stream real-time build events for a specific vertex. Provides live updates during vertex build process using server-sent events (SSE). Essential for monitoring long-running component builds, debugging build failures in real-time, and providing live build status to users.',
2016
+ inputSchema: {
2017
+ type: 'object',
2018
+ properties: {
2019
+ flow_id: {
2020
+ type: 'string',
2021
+ description: 'Flow ID (UUID) containing the vertex'
2022
+ },
2023
+ vertex_id: {
2024
+ type: 'string',
2025
+ description: 'Vertex ID to stream build events for'
2026
+ }
2027
+ },
2028
+ required: ['flow_id', 'vertex_id']
2029
+ },
2030
+ annotations: {
2031
+ readOnlyHint: true,
2032
+ destructiveHint: false,
2033
+ idempotentHint: true,
2034
+ openWorldHint: true
2035
+ }
2036
+ },
2037
+ {
2038
+ name: 'get_version',
2039
+ description: 'Get Langflow API version information. Retrieves current API version number and related system information. Essential for compatibility checks, debugging version-specific issues, and ensuring client-server version alignment.',
2040
+ inputSchema: {
2041
+ type: 'object',
2042
+ properties: {}
2043
+ },
2044
+ annotations: {
2045
+ readOnlyHint: true,
2046
+ destructiveHint: false,
2047
+ idempotentHint: true,
2048
+ openWorldHint: true
2049
+ }
2050
+ },
2051
+ {
2052
+ name: 'list_users',
2053
+ description: 'List all users in the Langflow instance. Admin-only endpoint. Supports pagination with skip and limit parameters. Returns array of user objects with id, username, email, and other profile information.',
2054
+ inputSchema: {
2055
+ type: 'object',
2056
+ properties: {
2057
+ skip: {
2058
+ type: 'number',
2059
+ description: 'Number of users to skip (default: 0)'
2060
+ },
2061
+ limit: {
2062
+ type: 'number',
2063
+ description: 'Maximum number of users to return (default: 50, max: 100)'
2064
+ }
2065
+ }
2066
+ },
2067
+ annotations: {
2068
+ readOnlyHint: true,
2069
+ destructiveHint: false,
2070
+ idempotentHint: true,
2071
+ openWorldHint: true
2072
+ }
2073
+ },
2074
+ {
2075
+ name: 'get_current_user',
2076
+ description: 'Get information about the currently authenticated user. Returns user profile including id, username, email, is_active, is_superuser status, and profile image.',
2077
+ inputSchema: {
2078
+ type: 'object',
2079
+ properties: {}
2080
+ },
2081
+ annotations: {
2082
+ readOnlyHint: true,
2083
+ destructiveHint: false,
2084
+ idempotentHint: true,
2085
+ openWorldHint: true
2086
+ }
2087
+ },
2088
+ {
2089
+ name: 'get_user',
2090
+ description: 'Get details about a specific user by ID. Returns user profile information including username, email, active status, and profile picture.',
2091
+ inputSchema: {
2092
+ type: 'object',
2093
+ properties: {
2094
+ user_id: {
2095
+ type: 'string',
2096
+ format: 'uuid',
2097
+ description: 'User ID (UUID)'
2098
+ }
2099
+ },
2100
+ required: ['user_id']
2101
+ },
2102
+ annotations: {
2103
+ readOnlyHint: true,
2104
+ destructiveHint: false,
2105
+ idempotentHint: true,
2106
+ openWorldHint: true
2107
+ }
2108
+ },
2109
+ {
2110
+ name: 'update_user',
2111
+ description: 'Update user profile information. Can modify username, password, or profile image. Returns updated user object.',
2112
+ inputSchema: {
2113
+ type: 'object',
2114
+ properties: {
2115
+ user_id: {
2116
+ type: 'string',
2117
+ format: 'uuid',
2118
+ description: 'User ID (UUID) to update'
2119
+ },
2120
+ username: {
2121
+ type: 'string',
2122
+ description: 'New username'
2123
+ },
2124
+ password: {
2125
+ type: 'string',
2126
+ description: 'New password'
2127
+ },
2128
+ profile_image: {
2129
+ type: 'string',
2130
+ description: 'New profile image URL or path'
2131
+ }
2132
+ },
2133
+ required: ['user_id']
2134
+ },
2135
+ annotations: {
2136
+ readOnlyHint: false,
2137
+ destructiveHint: false,
2138
+ idempotentHint: true,
2139
+ openWorldHint: true
2140
+ }
2141
+ },
2142
+ {
2143
+ name: 'reset_user_password',
2144
+ description: 'Reset password for a specific user. Admin-only endpoint. Requires user ID and new password (minimum 8 characters). Returns updated user object.',
2145
+ inputSchema: {
2146
+ type: 'object',
2147
+ properties: {
2148
+ user_id: {
2149
+ type: 'string',
2150
+ format: 'uuid',
2151
+ description: 'User ID (UUID) to reset password for'
2152
+ },
2153
+ new_password: {
2154
+ type: 'string',
2155
+ description: 'New password (minimum 8 characters)'
2156
+ }
2157
+ },
2158
+ required: ['user_id', 'new_password']
2159
+ },
2160
+ annotations: {
2161
+ readOnlyHint: false,
2162
+ destructiveHint: false,
2163
+ idempotentHint: false,
2164
+ openWorldHint: true
2165
+ }
2166
+ },
2167
+ {
2168
+ name: 'list_api_keys',
2169
+ description: 'List all API keys for the authenticated user. Returns array of API key objects with id, name, created_at, last_used_at, total_uses, and is_active status.',
2170
+ inputSchema: {
2171
+ type: 'object',
2172
+ properties: {}
2173
+ },
2174
+ annotations: {
2175
+ readOnlyHint: true,
2176
+ destructiveHint: false,
2177
+ idempotentHint: true,
2178
+ openWorldHint: true
2179
+ }
2180
+ },
2181
+ {
2182
+ name: 'create_api_key',
2183
+ description: 'Create a new API key with a specified name. Returns the created API key object including the key value (only shown once).',
2184
+ inputSchema: {
2185
+ type: 'object',
2186
+ properties: {
2187
+ name: {
2188
+ type: 'string',
2189
+ description: 'Name/label for the API key'
2190
+ }
2191
+ },
2192
+ required: ['name']
2193
+ },
2194
+ annotations: {
2195
+ readOnlyHint: false,
2196
+ destructiveHint: false,
2197
+ idempotentHint: false,
2198
+ openWorldHint: true
2199
+ }
2200
+ },
2201
+ {
2202
+ name: 'delete_api_key',
2203
+ description: 'Delete a specific API key by ID. This action is permanent and cannot be undone. The API key will immediately stop working.',
2204
+ inputSchema: {
2205
+ type: 'object',
2206
+ properties: {
2207
+ api_key_id: {
2208
+ type: 'string',
2209
+ format: 'uuid',
2210
+ description: 'API key ID (UUID) to delete'
2211
+ }
2212
+ },
2213
+ required: ['api_key_id']
2214
+ },
2215
+ annotations: {
2216
+ readOnlyHint: false,
2217
+ destructiveHint: true,
2218
+ idempotentHint: true,
2219
+ openWorldHint: true
2220
+ }
2221
+ },
2222
+ {
2223
+ name: 'list_custom_components',
2224
+ description: 'List all custom components created by the user. Returns array of custom component objects with code, name, description, and return type.',
2225
+ inputSchema: {
2226
+ type: 'object',
2227
+ properties: {}
2228
+ },
2229
+ annotations: {
2230
+ readOnlyHint: true,
2231
+ destructiveHint: false,
2232
+ idempotentHint: true,
2233
+ openWorldHint: true
2234
+ }
2235
+ },
2236
+ {
2237
+ name: 'create_custom_component',
2238
+ description: 'Create a new custom component with Python code. Requires component code, name, and optional description and return_type. Returns created component object.',
2239
+ inputSchema: {
2240
+ type: 'object',
2241
+ properties: {
2242
+ code: {
2243
+ type: 'string',
2244
+ description: 'Python code for the custom component'
2245
+ },
2246
+ name: {
2247
+ type: 'string',
2248
+ description: 'Component name'
2249
+ },
2250
+ description: {
2251
+ type: 'string',
2252
+ description: 'Optional component description'
2253
+ },
2254
+ return_type: {
2255
+ type: 'string',
2256
+ description: 'Optional return type specification'
2257
+ }
2258
+ },
2259
+ required: ['code', 'name']
2260
+ },
2261
+ annotations: {
2262
+ readOnlyHint: false,
2263
+ destructiveHint: false,
2264
+ idempotentHint: false,
2265
+ openWorldHint: true
2266
+ }
2267
+ },
2268
+ {
2269
+ name: 'login',
2270
+ description: 'Authenticate with username and password. Returns access token, optional refresh token, and token type. Use the access token in subsequent API requests.',
2271
+ inputSchema: {
2272
+ type: 'object',
2273
+ properties: {
2274
+ username: {
2275
+ type: 'string',
2276
+ description: 'Username for authentication'
2277
+ },
2278
+ password: {
2279
+ type: 'string',
2280
+ description: 'Password for authentication'
2281
+ }
2282
+ },
2283
+ required: ['username', 'password']
2284
+ },
2285
+ annotations: {
2286
+ readOnlyHint: false,
2287
+ destructiveHint: false,
2288
+ idempotentHint: false,
2289
+ openWorldHint: true
2290
+ }
2291
+ },
2292
+ {
2293
+ name: 'auto_login',
2294
+ description: 'Automatically login with stored credentials or session. Returns access token if auto-login is configured and enabled.',
2295
+ inputSchema: {
2296
+ type: 'object',
2297
+ properties: {}
2298
+ },
2299
+ annotations: {
2300
+ readOnlyHint: false,
2301
+ destructiveHint: false,
2302
+ idempotentHint: false,
2303
+ openWorldHint: true
2304
+ }
2305
+ },
2306
+ {
2307
+ name: 'refresh_token',
2308
+ description: 'Refresh authentication token using refresh token. Returns new access token and optionally a new refresh token.',
2309
+ inputSchema: {
2310
+ type: 'object',
2311
+ properties: {}
2312
+ },
2313
+ annotations: {
2314
+ readOnlyHint: false,
2315
+ destructiveHint: false,
2316
+ idempotentHint: false,
2317
+ openWorldHint: true
2318
+ }
2319
+ },
2320
+ {
2321
+ name: 'logout',
2322
+ description: 'Logout and invalidate current authentication session. Clears authentication tokens and terminates the session.',
2323
+ inputSchema: {
2324
+ type: 'object',
2325
+ properties: {}
2326
+ },
2327
+ annotations: {
2328
+ readOnlyHint: false,
2329
+ destructiveHint: false,
2330
+ idempotentHint: true,
2331
+ openWorldHint: true
2332
+ }
2333
+ },
2334
+ {
2335
+ name: 'get_public_flow',
2336
+ description: 'Get a public flow by ID without authentication. Public flows can be accessed by anyone without API key or login credentials.',
2337
+ inputSchema: {
2338
+ type: 'object',
2339
+ properties: {
2340
+ flow_id: {
2341
+ type: 'string',
2342
+ description: 'Flow ID (UUID) of the public flow'
2343
+ }
2344
+ },
2345
+ required: ['flow_id']
2346
+ },
2347
+ annotations: {
2348
+ readOnlyHint: true,
2349
+ destructiveHint: false,
2350
+ idempotentHint: true,
2351
+ openWorldHint: true
2352
+ }
2353
+ },
2354
+ {
2355
+ name: 'batch_create_flows',
2356
+ description: 'Create multiple flows in a single batch operation. More efficient than creating flows individually. Accepts array of flow objects.',
2357
+ inputSchema: {
2358
+ type: 'object',
2359
+ properties: {
2360
+ flows: {
2361
+ type: 'array',
2362
+ description: 'Array of flow objects to create',
2363
+ items: {
2364
+ type: 'object',
2365
+ properties: {
2366
+ name: {
2367
+ type: 'string',
2368
+ description: 'Flow name'
2369
+ },
2370
+ description: {
2371
+ type: 'string',
2372
+ description: 'Optional flow description'
2373
+ },
2374
+ data: {
2375
+ type: 'object',
2376
+ description: 'Optional flow data/configuration'
2377
+ },
2378
+ folder_id: {
2379
+ type: 'string',
2380
+ description: 'Optional folder ID to organize the flow'
2381
+ }
2382
+ }
2383
+ }
2384
+ }
2385
+ },
2386
+ required: ['flows']
2387
+ },
2388
+ annotations: {
2389
+ readOnlyHint: false,
2390
+ destructiveHint: false,
2391
+ idempotentHint: false,
2392
+ openWorldHint: true
2393
+ }
2394
+ },
2395
+ {
2396
+ name: 'get_task_status',
2397
+ description: 'Get status of an asynchronous task by task ID. Returns task status (pending, running, completed, failed), result if completed, or error if failed.',
2398
+ inputSchema: {
2399
+ type: 'object',
2400
+ properties: {
2401
+ task_id: {
2402
+ type: 'string',
2403
+ description: 'Task ID to check status for'
2404
+ }
2405
+ },
2406
+ required: ['task_id']
2407
+ },
2408
+ annotations: {
2409
+ readOnlyHint: true,
2410
+ destructiveHint: false,
2411
+ idempotentHint: true,
2412
+ openWorldHint: true
2413
+ }
2414
+ },
2415
+ {
2416
+ name: 'download_folder',
2417
+ description: 'Download entire folder as compressed archive. Returns archive file containing all flows and resources in the folder.',
2418
+ inputSchema: {
2419
+ type: 'object',
2420
+ properties: {
2421
+ folder_id: {
2422
+ type: 'string',
2423
+ description: 'Folder ID (UUID) to download'
2424
+ }
2425
+ },
2426
+ required: ['folder_id']
2427
+ },
2428
+ annotations: {
2429
+ readOnlyHint: true,
2430
+ destructiveHint: false,
2431
+ idempotentHint: true,
2432
+ openWorldHint: true
2433
+ }
2434
+ },
2435
+ {
2436
+ name: 'upload_folder',
2437
+ description: 'Upload folder from compressed archive. Provide base64-encoded file content and filename. Creates folder structure and imports all flows.',
2438
+ inputSchema: {
2439
+ type: 'object',
2440
+ properties: {
2441
+ file_content: {
2442
+ type: 'string',
2443
+ description: 'Base64-encoded archive file content'
2444
+ },
2445
+ file_name: {
2446
+ type: 'string',
2447
+ description: 'Archive filename'
2448
+ }
2449
+ },
2450
+ required: ['file_content', 'file_name']
2451
+ },
2452
+ annotations: {
2453
+ readOnlyHint: false,
2454
+ destructiveHint: false,
2455
+ idempotentHint: false,
2456
+ openWorldHint: true
2457
+ }
2458
+ },
2459
+ {
2460
+ name: 'list_starter_projects',
2461
+ description: 'List available starter project templates. Returns array of pre-built project templates that can be used to quickly bootstrap new Langflow projects.',
2462
+ inputSchema: {
2463
+ type: 'object',
2464
+ properties: {}
2465
+ },
2466
+ annotations: {
2467
+ readOnlyHint: true,
2468
+ destructiveHint: false,
2469
+ idempotentHint: true,
2470
+ openWorldHint: true
2471
+ }
2472
+ },
2473
+ {
2474
+ name: 'upload_knowledge_base',
2475
+ description: 'Upload file to create or update a knowledge base for RAG. Provide knowledge base name, base64-encoded file content, and filename.',
2476
+ inputSchema: {
2477
+ type: 'object',
2478
+ properties: {
2479
+ kb_name: {
2480
+ type: 'string',
2481
+ description: 'Knowledge base name/identifier'
2482
+ },
2483
+ file_content: {
2484
+ type: 'string',
2485
+ description: 'Base64-encoded file content'
2486
+ },
2487
+ file_name: {
2488
+ type: 'string',
2489
+ description: 'Name of the file being uploaded'
2490
+ }
2491
+ },
2492
+ required: ['kb_name', 'file_content', 'file_name']
2493
+ },
2494
+ annotations: {
2495
+ readOnlyHint: false,
2496
+ destructiveHint: false,
2497
+ idempotentHint: false,
2498
+ openWorldHint: true
2499
+ }
2500
+ },
2501
+ {
2502
+ name: 'list_elevenlabs_voices',
2503
+ description: 'List available ElevenLabs text-to-speech voices. Returns array of voice objects with voice_id and name for use in voice synthesis flows.',
2504
+ inputSchema: {
2505
+ type: 'object',
2506
+ properties: {}
2507
+ },
2508
+ annotations: {
2509
+ readOnlyHint: true,
2510
+ destructiveHint: false,
2511
+ idempotentHint: true,
2512
+ openWorldHint: true
2513
+ }
2514
+ },
2515
+ {
2516
+ name: 'health_check',
2517
+ description: 'Check Langflow instance health status. Returns health status and system information. Use to verify the API is accessible and operational.',
2518
+ inputSchema: {
2519
+ type: 'object',
2520
+ properties: {}
2521
+ },
2522
+ annotations: {
2523
+ readOnlyHint: true,
2524
+ destructiveHint: false,
2525
+ idempotentHint: true,
2526
+ openWorldHint: true
2527
+ }
2528
+ },
2529
+ {
2530
+ name: 'get_logs',
2531
+ description: 'Retrieve system logs. Supports both regular and streaming modes. Use stream parameter to enable real-time log streaming.',
2532
+ inputSchema: {
2533
+ type: 'object',
2534
+ properties: {
2535
+ stream: {
2536
+ type: 'boolean',
2537
+ description: 'Enable streaming mode for real-time logs (default: false)'
2538
+ }
2539
+ }
2540
+ },
2541
+ annotations: {
2542
+ readOnlyHint: true,
2543
+ destructiveHint: false,
2544
+ idempotentHint: true,
2545
+ openWorldHint: true
2546
+ }
1329
2547
  }
1330
2548
  ];
1331
2549
  //# sourceMappingURL=tools.js.map