@apify/mcpc 0.2.4 → 0.3.0-beta.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 (123) hide show
  1. package/CHANGELOG.md +64 -1
  2. package/CONTRIBUTING.md +12 -0
  3. package/NOTICE +27 -0
  4. package/README.md +219 -226
  5. package/_config.yml +30 -0
  6. package/client-logo.svg +79 -0
  7. package/client-metadata.json +16 -0
  8. package/dist/bridge/index.js +51 -4
  9. package/dist/bridge/index.js.map +1 -1
  10. package/dist/cli/commands/auth.d.ts +2 -0
  11. package/dist/cli/commands/auth.d.ts.map +1 -1
  12. package/dist/cli/commands/auth.js +32 -10
  13. package/dist/cli/commands/auth.js.map +1 -1
  14. package/dist/cli/commands/clean.d.ts.map +1 -1
  15. package/dist/cli/commands/clean.js +13 -2
  16. package/dist/cli/commands/clean.js.map +1 -1
  17. package/dist/cli/commands/grep.d.ts.map +1 -1
  18. package/dist/cli/commands/grep.js +39 -8
  19. package/dist/cli/commands/grep.js.map +1 -1
  20. package/dist/cli/commands/prompts.d.ts.map +1 -1
  21. package/dist/cli/commands/prompts.js +7 -26
  22. package/dist/cli/commands/prompts.js.map +1 -1
  23. package/dist/cli/commands/resources.d.ts.map +1 -1
  24. package/dist/cli/commands/resources.js +9 -3
  25. package/dist/cli/commands/resources.js.map +1 -1
  26. package/dist/cli/commands/sessions.d.ts +45 -2
  27. package/dist/cli/commands/sessions.d.ts.map +1 -1
  28. package/dist/cli/commands/sessions.js +493 -27
  29. package/dist/cli/commands/sessions.js.map +1 -1
  30. package/dist/cli/commands/tasks.d.ts +1 -0
  31. package/dist/cli/commands/tasks.d.ts.map +1 -1
  32. package/dist/cli/commands/tasks.js +15 -1
  33. package/dist/cli/commands/tasks.js.map +1 -1
  34. package/dist/cli/commands/tools.d.ts +6 -1
  35. package/dist/cli/commands/tools.d.ts.map +1 -1
  36. package/dist/cli/commands/tools.js +66 -14
  37. package/dist/cli/commands/tools.js.map +1 -1
  38. package/dist/cli/commands/x402.d.ts.map +1 -1
  39. package/dist/cli/commands/x402.js +7 -7
  40. package/dist/cli/commands/x402.js.map +1 -1
  41. package/dist/cli/helpers.d.ts.map +1 -1
  42. package/dist/cli/helpers.js +3 -6
  43. package/dist/cli/helpers.js.map +1 -1
  44. package/dist/cli/index.js +370 -131
  45. package/dist/cli/index.js.map +1 -1
  46. package/dist/cli/output.d.ts +18 -5
  47. package/dist/cli/output.d.ts.map +1 -1
  48. package/dist/cli/output.js +275 -89
  49. package/dist/cli/output.js.map +1 -1
  50. package/dist/cli/parser.d.ts +4 -0
  51. package/dist/cli/parser.d.ts.map +1 -1
  52. package/dist/cli/parser.js +68 -24
  53. package/dist/cli/parser.js.map +1 -1
  54. package/dist/cli/shell.d.ts.map +1 -1
  55. package/dist/cli/shell.js +44 -21
  56. package/dist/cli/shell.js.map +1 -1
  57. package/dist/cli/tool-result.d.ts +1 -1
  58. package/dist/cli/tool-result.d.ts.map +1 -1
  59. package/dist/cli/tool-result.js +20 -15
  60. package/dist/cli/tool-result.js.map +1 -1
  61. package/dist/core/factory.d.ts +1 -0
  62. package/dist/core/factory.d.ts.map +1 -1
  63. package/dist/core/factory.js +3 -0
  64. package/dist/core/factory.js.map +1 -1
  65. package/dist/core/mcp-client.d.ts +1 -0
  66. package/dist/core/mcp-client.d.ts.map +1 -1
  67. package/dist/core/mcp-client.js +14 -0
  68. package/dist/core/mcp-client.js.map +1 -1
  69. package/dist/core/transports.d.ts +5 -1
  70. package/dist/core/transports.d.ts.map +1 -1
  71. package/dist/core/transports.js +26 -4
  72. package/dist/core/transports.js.map +1 -1
  73. package/dist/lib/auth/auth-page.d.ts +13 -0
  74. package/dist/lib/auth/auth-page.d.ts.map +1 -0
  75. package/dist/lib/auth/auth-page.js +129 -0
  76. package/dist/lib/auth/auth-page.js.map +1 -0
  77. package/dist/lib/auth/oauth-flow.d.ts +2 -1
  78. package/dist/lib/auth/oauth-flow.d.ts.map +1 -1
  79. package/dist/lib/auth/oauth-flow.js +65 -58
  80. package/dist/lib/auth/oauth-flow.js.map +1 -1
  81. package/dist/lib/auth/oauth-provider.d.ts +2 -0
  82. package/dist/lib/auth/oauth-provider.d.ts.map +1 -1
  83. package/dist/lib/auth/oauth-provider.js +6 -0
  84. package/dist/lib/auth/oauth-provider.js.map +1 -1
  85. package/dist/lib/auth/oauth-utils.d.ts +3 -0
  86. package/dist/lib/auth/oauth-utils.d.ts.map +1 -1
  87. package/dist/lib/auth/oauth-utils.js +32 -1
  88. package/dist/lib/auth/oauth-utils.js.map +1 -1
  89. package/dist/lib/auth/profiles.d.ts.map +1 -1
  90. package/dist/lib/auth/profiles.js +3 -3
  91. package/dist/lib/auth/profiles.js.map +1 -1
  92. package/dist/lib/bridge-manager.d.ts.map +1 -1
  93. package/dist/lib/bridge-manager.js +43 -28
  94. package/dist/lib/bridge-manager.js.map +1 -1
  95. package/dist/lib/cleanup.d.ts +5 -0
  96. package/dist/lib/cleanup.d.ts.map +1 -1
  97. package/dist/lib/cleanup.js +38 -1
  98. package/dist/lib/cleanup.js.map +1 -1
  99. package/dist/lib/config.d.ts +21 -0
  100. package/dist/lib/config.d.ts.map +1 -1
  101. package/dist/lib/config.js +99 -5
  102. package/dist/lib/config.js.map +1 -1
  103. package/dist/lib/errors.d.ts +1 -0
  104. package/dist/lib/errors.d.ts.map +1 -1
  105. package/dist/lib/errors.js +4 -1
  106. package/dist/lib/errors.js.map +1 -1
  107. package/dist/lib/session-client.d.ts +1 -0
  108. package/dist/lib/session-client.d.ts.map +1 -1
  109. package/dist/lib/session-client.js +7 -4
  110. package/dist/lib/session-client.js.map +1 -1
  111. package/dist/lib/sessions.d.ts.map +1 -1
  112. package/dist/lib/sessions.js +18 -9
  113. package/dist/lib/sessions.js.map +1 -1
  114. package/dist/lib/types.d.ts +2 -0
  115. package/dist/lib/types.d.ts.map +1 -1
  116. package/dist/lib/utils.d.ts +16 -2
  117. package/dist/lib/utils.d.ts.map +1 -1
  118. package/dist/lib/utils.js +112 -8
  119. package/dist/lib/utils.js.map +1 -1
  120. package/dist/lib/wallets.js +3 -3
  121. package/dist/lib/wallets.js.map +1 -1
  122. package/docs/TODOs.md +5 -0
  123. package/package.json +7 -6
package/_config.yml ADDED
@@ -0,0 +1,30 @@
1
+ # GitHub Pages configuration for https://apify.github.io/mcpc/
2
+ #
3
+ # Served content (everything else is excluded):
4
+ # / → README.md (project homepage)
5
+ # /client-metadata.json → OAuth CIMD document
6
+ # /client-logo.svg → Client logo for OAuth consent screens
7
+ # /LICENSE → Terms of service (referenced by CIMD tos_uri)
8
+ # /CHANGELOG.md → Release history
9
+ # /docs/ → Additional documentation, examples, images
10
+ #
11
+ # Jekyll has no include-only mode, so we exclude everything that
12
+ # shouldn't be published. node_modules/ is excluded by default.
13
+
14
+ theme: jekyll-theme-cayman
15
+
16
+ exclude:
17
+ - CLAUDE.md
18
+ - CONTRIBUTING.md
19
+ - _config.yml
20
+ - bin/
21
+ - dist/
22
+ - jest.config.js
23
+ - package.json
24
+ - package-lock.json
25
+ - renovate.json
26
+ - scripts/
27
+ - src/
28
+ - test/
29
+ - tsconfig.json
30
+ - tsconfig.test.json
@@ -0,0 +1,79 @@
1
+ <svg width="256" height="256" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_2459_19421)">
3
+ <path d="M195.982 800.211C184.515 787.494 176.758 762.181 175.641 745.284C175.106 736.885 175.63 728.451 177.2 720.184C179.9 706.415 182.329 704.767 181.836 690.026C180.908 662.424 179.455 634.56 178.855 606.974C177.149 539.646 178.443 472.274 182.736 405.06C188.424 321.599 198.18 230.08 262.293 169.124C266.726 164.91 282.793 150.817 288.6 150.434C289.062 150.665 289.612 151.003 289.836 151.499C336.164 254.15 320.732 370.278 304.099 477.75C298.794 512.028 295.281 544.596 289.046 577.129C296.002 571.018 303.859 562.936 310.7 556.367L356.309 512.579C404.661 465.959 453.346 419.685 502.362 373.763C521.106 356.047 540.229 338.734 559.713 321.835C548.994 306.444 547.294 289.687 554.906 272.32C558.321 264.524 565.547 256.152 575.245 259.325C581.62 261.409 579.842 271.441 582.99 276.891C587.507 284.72 598.554 285.863 606.042 281.726C619.527 273.314 611.179 262.174 605.943 252.521C599.063 239.846 591.197 229.353 583.632 217.478C583.445 217.681 583.268 217.884 583.079 218.084C577.399 224.146 569.823 242.516 561.93 244.117C558.087 244.896 554.398 243.265 551.367 241.007C535.324 229.046 524.519 199.737 522.116 180.535C519.589 160.381 524.677 140.292 537.231 124.201C539.621 121.137 547.896 111.102 551.816 111.323C560.014 111.782 599.522 149.589 607.029 157.265C647.721 198.889 703.114 270.624 725.867 323.761C729.141 331.411 729.39 339.706 732.201 347.383C734.063 352.476 736.75 357.309 738.801 362.339C744.749 376.65 747.682 392.031 747.404 407.527C746.665 453.685 721.087 476.575 690.878 505.841C702.271 506.455 723.01 505.444 734.921 505.235L830.928 503.294L861.898 503.034C865.031 503.03 875.441 502.621 877.643 503.308C883.444 505.112 897.693 519.62 901.323 524.165C901.319 529.686 898.798 563.043 896.421 566.335C888.827 576.862 713.684 574.477 692.059 573.999C683.314 573.805 628.641 571.826 623.803 573.607C620.447 574.839 618.559 578.311 617.003 581.298C617.67 594.989 622.679 591.229 632.552 587.507C641.853 583.996 653.119 580.204 663.026 583.499C669.01 585.557 673.893 589.982 676.533 595.733C682.618 609.066 674.064 619.566 670.003 630.784L669.783 631.4C686.973 626.128 711.053 622.185 718.948 644.755C723.273 657.121 715.606 669.098 709.977 679.828C721.559 676.385 737.322 669.92 748.556 676.17C760.536 682.838 763.483 698.26 758.826 710.319C756.916 715.266 751.344 723.537 752.7 728.081C758.376 733.899 779.159 717.955 784.571 720.611C796.516 726.473 780.024 749.261 774.939 753.993C757.107 770.594 724.614 771.114 713.574 746.859C708.424 735.554 713.165 723.815 717.443 713.257C705.325 717.977 696.583 720.974 683.338 716.094C676.94 713.738 672.171 708.965 669.637 702.665C664.433 689.701 668.16 679.814 673.156 667.84C659.747 671.674 648.495 675.387 635.051 668.161C629.441 665.145 625.284 659.37 623.796 653.232C620.645 640.216 625.608 632.823 631.767 622.28C627.537 623.757 623.71 625.217 619.248 625.81C612.266 626.783 605.191 624.835 599.691 620.425C593.375 615.457 590.842 608.94 589.801 601.323C580.13 610.046 565.69 625.902 556.001 635.768L539.818 652.244C536.229 655.876 531.325 660.401 528.508 664.51C525.638 670.2 522.642 678.395 520.204 684.489L505.263 722.556C500.136 735.666 493.968 751.854 488.451 764.547C471.486 803.559 420.197 912.71 378.861 925.231C377.741 924.959 376.604 924.64 375.538 924.188C371.978 922.689 369.412 918.914 368.087 915.421C358.236 889.468 376.802 825.516 388.021 800.108C383.392 803.503 377.785 809.459 373.595 813.636C341.904 845.204 294.467 864.98 251.588 841.774C253.802 850.68 253.681 860.006 251.236 868.848C247.954 881.152 239.99 892.672 228.823 899.043C218.356 904.891 205.977 906.288 194.471 902.909C160.826 893.339 153.115 847.354 171.735 821.348C179.128 811.026 184.806 806.239 195.982 800.211ZM220.258 869.467C225.048 862.98 228.008 855.946 226.731 847.633L226.186 844.253C217.895 846.987 212.248 848.437 203.61 844.617C198.511 842.363 196.207 836.842 194.198 835.869C180.52 860.073 201.42 891.264 220.258 869.467Z" fill="#1D1C1D"/>
4
+ <path d="M495.273 700.425C497.019 699.872 500.138 695.718 502.365 694.047L503.031 694.084C503.944 693.209 503.918 693.223 505.041 692.639C493.876 716.945 483.373 744.662 472.883 768.295C456.081 806.155 415.408 886.628 381.365 910.184C380.359 906.396 381.003 900.347 381.502 896.444C385.619 864.331 396.589 832.812 408.951 803.024C411.62 796.593 416.474 788.404 420.017 782.308C430.468 767.455 440.333 754.699 453.234 741.803C461.755 733.286 470.608 725.229 479.383 716.982C484.809 711.882 489.959 705.341 495.273 700.425Z" fill="#9E9FA3"/>
5
+ <path d="M392.509 868.667C397.357 866.458 403.081 868.567 405.341 873.392C407.6 878.218 405.554 883.962 400.753 886.272C397.602 887.791 393.878 887.498 391.003 885.508C388.126 883.513 386.544 880.134 386.855 876.649C387.166 873.163 389.326 870.119 392.509 868.667Z" fill="#1D1C1D"/>
6
+ <path d="M394.974 873.132C397.232 872.15 399.864 873.117 400.948 875.326C402.034 877.54 401.187 880.213 399.028 881.398C397.541 882.214 395.725 882.143 394.302 881.22C392.88 880.296 392.08 878.666 392.22 876.974C392.361 875.287 393.418 873.807 394.974 873.132Z" fill="#C2C3C4"/>
7
+ <path d="M416.95 769.517C419.622 768.18 420.132 767.322 422.113 765.213L426.731 771.019C424.596 774.038 420.207 779.052 420.018 782.308C416.476 788.404 411.621 796.593 408.952 803.024C396.59 832.812 385.62 864.331 381.503 896.443C381.004 900.347 380.361 906.396 381.366 910.184L379.445 911.543L378.493 911.317C373.682 903.997 380.351 866.585 383.115 856.842C388.6 837.509 403.161 782.179 416.95 769.517Z" fill="#FDFDFD"/>
8
+ <path d="M494.731 694.866C495.309 695.912 494.739 696.616 495.066 698.193L495.631 698.479C497.012 697.489 497.496 696.943 498.655 695.746L499.172 695.884C497.904 697.323 496.432 698.919 495.273 700.425C489.959 705.341 484.809 711.882 479.382 716.982C470.608 725.229 461.754 733.286 453.234 741.803C440.332 754.699 430.467 767.455 420.016 782.308C420.205 779.052 424.594 774.038 426.729 771.019L422.111 765.213C420.13 767.322 419.62 768.18 416.948 769.517C422.047 762.75 443.052 743.102 450.251 736.526C464.602 723.428 480.267 707.425 494.731 694.866Z" fill="#CDCCCE"/>
9
+ <path d="M494.732 694.866C498.77 690.429 523.931 666.292 528.508 664.51C521.82 670.695 517.539 676.494 511.991 683.693C509.626 686.753 507.119 689.327 505.041 692.639C503.917 693.223 503.944 693.209 503.031 694.084L502.364 694.047C500.138 695.718 497.019 699.872 495.273 700.425C496.432 698.919 497.904 697.323 499.173 695.884L498.655 695.746C497.497 696.943 497.013 697.489 495.631 698.479L495.066 698.193C494.739 696.616 495.309 695.912 494.732 694.866Z" fill="#B3B3B6"/>
10
+ <path d="M210.461 794.106C209.28 794.754 208.2 794.934 207.196 793.691C186.763 768.389 182.167 725.343 196.507 696.258C206.379 676.231 226.974 656.868 242.828 641.18L278.739 605.781C325.362 559.924 373.833 514.084 421.199 468.851C457.213 434.446 493.451 400.279 529.913 366.354C540.647 356.242 551.497 346.248 562.455 336.376C581.776 318.874 599.971 302.647 627.608 300.93C652.293 299.398 677.102 309.598 695.463 325.747C712.184 340.453 728.628 367.077 730.026 389.709C730.751 392.524 730.708 397.714 730.629 400.675C730.363 417.24 725.831 433.462 717.476 447.769C704.783 469.42 673.857 495.57 655.044 514.234C612.055 556.952 568.789 599.388 525.252 641.543L424.225 741.051L387.251 777.778C378.574 786.362 370.097 795.001 360.797 802.937C345.816 815.725 327.52 827.318 308.373 832.336C289.653 837.244 268.11 835.287 251.238 825.558C248.276 823.838 244.125 821.19 242.12 818.447L242.366 817.636L243.379 817.304C250.564 814.553 256.845 806.458 256.27 798.573C255.37 786.204 241.821 779.457 230.638 780.584C221.484 781.508 215.696 787.301 210.461 794.106Z" fill="url(#knifeRainbow)"/>
11
+ <path d="M721.167 370.867C724.199 376.511 727.56 385.513 730.024 389.71C730.748 392.524 730.705 397.714 730.627 400.675C730.361 417.24 725.829 433.463 717.473 447.77C704.78 469.42 673.855 495.57 655.042 514.234C612.053 556.952 568.786 599.388 525.249 641.543L424.223 741.051L387.249 777.778C378.572 786.362 370.094 795.002 360.795 802.938C345.814 815.725 327.518 827.318 308.37 832.337C289.65 837.244 268.108 835.287 251.236 825.558C248.273 823.838 244.123 821.191 242.118 818.447L242.364 817.636L243.376 817.304L243.445 818.145C243.72 818.169 243.994 818.193 244.268 818.216C268.969 823.247 286.652 822.112 310.553 811.933C338.361 800.095 358.215 777.917 379.76 757.384C399.652 738.428 418.977 718.688 438.492 699.102L549.536 589.695L643.667 497.505L669.127 472.914C680.071 462.486 688.251 455.44 697.51 442.822C708.948 427.572 716.951 410.008 719.186 390.966C719.741 386.213 719.239 374.785 721.167 370.867Z" fill="url(#knifeRainbowDark)"/>
12
+ <path d="M210.461 794.106C209.28 794.754 208.2 794.934 207.196 793.691C186.763 768.389 182.167 725.343 196.507 696.258C206.379 676.231 226.974 656.868 242.828 641.18L278.739 605.781C325.362 559.924 373.833 514.084 421.199 468.851C457.213 434.446 493.451 400.279 529.913 366.354C540.647 356.242 551.497 346.248 562.455 336.376C581.776 318.874 599.971 302.647 627.608 300.93C652.293 299.398 677.102 309.598 695.463 325.747C712.184 340.453 728.628 367.077 730.026 389.709C727.563 385.513 724.201 376.511 721.17 370.867C710.312 345.95 688.394 323.106 662.848 313.089C644.998 305.917 625.022 306.154 607.342 313.745C600.666 316.665 593.698 321.197 588.226 326.02C562.726 348.489 537.932 372.097 513.238 395.436C470.329 435.879 427.635 476.548 385.159 517.442L286.516 612.082C266.764 631.004 246.617 649.605 227.931 669.334C197.805 701.141 186.383 741.419 205.162 782.282C206.369 784.908 209.914 791.662 210.461 794.106Z" fill="#FDFDFD"/>
13
+ <path d="M272.19 175.941C275.603 172.515 279.341 169.431 283.352 166.73C315.144 254.783 308.36 330.097 295.872 420.708C291.512 453.017 286.767 485.273 281.639 517.469L272.433 574.734C271.455 580.749 269.394 596.264 267.552 601.192L266.85 601.332C254.778 603.719 220.038 603.952 211.802 612.548C227.097 614.725 239.261 613.883 253.386 615.254L249.448 619.171C238.922 629.683 229.942 638.578 220.079 649.761C215.164 655.335 208.422 664.807 204.259 669.305C201.694 673.042 199.027 676.704 196.266 680.299C190.908 600.831 190.166 521.117 194.045 441.562C197.585 359.964 200.371 267.295 251.011 198.743C256.238 191.666 265.227 181.36 272.19 175.941Z" fill="#C2C3C4"/>
14
+ <path d="M272.19 175.942C273.666 175.315 276.605 173.532 277.471 173.564C276.757 174.245 269.331 183.629 268.607 184.696C262.991 192.973 246.358 215.024 244.104 223.745L235.692 240.733C232.729 245.643 229.623 254.728 227.524 260.357C207.862 313.114 206.285 370.219 202.747 425.785C201.129 451.196 199.939 476.619 199.419 502.088C198.699 538.4 199.091 574.725 200.595 611.011C201.202 629.898 201.495 648.733 202.828 667.608C202.905 668.707 203.476 668.863 204.258 669.305C201.693 673.042 199.027 676.704 196.265 680.299C190.907 600.832 190.165 521.117 194.044 441.562C197.584 359.965 200.37 267.296 251.01 198.743C256.237 191.666 265.226 181.36 272.19 175.942Z" fill="#FDFDFD"/>
15
+ <path d="M211.803 612.547C227.098 614.725 239.262 613.883 253.387 615.254L249.449 619.171C236.222 619.353 220.736 620.039 207.748 616.798C209.484 615.181 210.389 614.41 211.803 612.547Z" fill="#FDFDFD"/>
16
+ <path d="M244.109 223.744C244.356 226.047 237.821 239.784 235.698 240.733L244.109 223.744Z" fill="#797A7E"/>
17
+ <path d="M246.621 249.307C252.018 283.312 246.794 335.177 227.851 365.158C226.101 367.928 219.596 375.434 215.982 374.616L215.513 373.879L216.18 372.699C215.065 371.812 214.076 369.55 213.964 368.365C211.822 345.757 223.427 284.521 235.184 267.1C234.518 264.787 235.672 261.802 237.782 260.651C240.583 258.2 243.801 252.648 246.621 249.307Z" fill="#FDFDFD"/>
18
+ <path d="M235.182 267.101L236.256 266.631C240.737 288.381 225.117 351.638 216.178 372.7C215.063 371.813 214.074 369.551 213.962 368.366C211.82 345.758 223.425 284.523 235.182 267.101Z" fill="#1D1C1D"/>
19
+ <path d="M235.181 267.101C234.515 264.788 235.669 261.803 237.778 260.651C236.958 262.637 235.85 264.568 236.255 266.631L235.181 267.101Z" fill="#797A7E"/>
20
+ <path d="M631.918 559.581C639.458 551.703 647.064 543.887 654.724 536.12C658.138 532.652 671.329 518.01 675.274 518.283C693.452 516.694 714.659 516.88 733.143 516.35C766.183 515.24 799.237 514.539 832.296 514.251C831.584 517.089 830.899 519.545 830.531 522.456C829.71 535.804 830.799 546.496 832.973 559.56C813.399 558.962 788.866 560.151 768.8 560.298C729.467 560.486 690.13 560.23 650.801 559.54C648.798 559.792 635.233 559.522 631.918 559.581Z" fill="#9E9FA3"/>
21
+ <path d="M650.804 559.541C652.653 557.426 656.431 553.864 658.572 551.645C665.638 552.384 672.698 552.011 679.759 552.264C701.48 553.041 724.403 552.133 746.009 553.505C745.859 550.588 749.323 531.435 750.273 528.341L750.565 527.408C751.255 525.189 751.868 524.926 753.857 523.601C763.75 523.782 774.44 523.517 784.125 523.885C796.443 523.376 819.871 524.746 830.534 522.456C829.714 535.805 830.802 546.496 832.977 559.56C813.402 558.962 788.87 560.151 768.803 560.299C729.471 560.487 690.133 560.23 650.804 559.541Z" fill="#C2C3C4"/>
22
+ <path d="M753.856 523.6C763.749 523.781 774.439 523.517 784.124 523.884C781.432 526.626 778.077 550.83 777.962 555.759C768.79 555.324 754.808 554.827 746.008 553.504C745.858 550.588 749.322 531.434 750.272 528.341L750.564 527.407C751.254 525.188 751.867 524.926 753.856 523.6Z" fill="#B5B5B7"/>
23
+ <path d="M675.273 518.284C693.451 516.695 714.657 516.882 733.142 516.352C766.182 515.242 799.236 514.541 832.295 514.253C831.582 517.091 830.897 519.547 830.53 522.457C819.866 524.747 796.438 523.377 784.12 523.886C774.436 523.519 763.746 523.783 753.852 523.602C735.62 523.797 716.901 523.232 698.629 523.006C692.364 522.929 684.839 521.962 678.453 521.652C676.099 520.777 675.378 520.855 675.273 518.284Z" fill="#FDFDFD"/>
24
+ <path d="M631.918 559.581C639.458 551.703 647.064 543.887 654.724 536.12C658.138 532.652 671.329 518.01 675.274 518.283C675.379 520.853 676.1 520.775 678.455 521.65C675.715 523.623 662.005 546.51 658.569 551.644C656.428 553.864 652.65 557.426 650.801 559.54C648.798 559.792 635.233 559.522 631.918 559.581Z" fill="#797A7E"/>
25
+ <path d="M558.808 232.048C533.906 203.103 520.259 155.615 551.664 126.039C552.192 125.542 553.062 126.115 553.674 126.338C555.773 128.025 558.214 129.896 560.234 131.63C582.066 147.045 608.607 177.273 625.745 197.768C629.202 201.903 636.599 210.767 639.275 214.92C642.258 218.195 646.841 224.179 649.397 227.833C649.272 229.542 649.54 228.97 648.677 230.28C635.217 228.129 617.66 222.455 603.962 221.712C602.677 220.826 601.624 220.408 600.216 219.771C598.606 218.337 592.762 209.078 590.384 206.275C581.162 199.622 573.673 210.943 568.318 217.585C565.933 220.543 563.52 224.843 561.397 228.104L558.808 232.048Z" fill="#B5B5B7"/>
26
+ <path d="M558.808 232.048C533.906 203.103 520.259 155.615 551.664 126.039C552.192 125.542 553.062 126.115 553.674 126.338C555.773 128.025 558.214 129.896 560.234 131.63C558.418 134.103 556.966 133.523 555.718 135.417C554.424 135.039 554.23 134.884 552.909 134.919C549.145 137.085 547.327 141.207 545.611 145.07C533.079 173.276 547.66 203.616 561.397 228.104L558.808 232.048Z" fill="#FDFDFD"/>
27
+ <path d="M553.675 126.338C555.774 128.026 558.215 129.896 560.235 131.63C558.42 134.103 556.968 133.523 555.72 135.417C555.794 132.623 554.499 129.106 553.675 126.338Z" fill="#C2C3C4"/>
28
+ <path d="M590.388 206.274C598.462 201.818 633.908 215.983 639.047 215.13L639.279 214.919C642.262 218.194 646.845 224.178 649.4 227.832C649.276 229.541 649.543 228.97 648.68 230.279C635.221 228.129 617.664 222.454 603.966 221.711C602.681 220.825 601.628 220.408 600.219 219.77C598.61 218.336 592.765 209.077 590.388 206.274Z" fill="#9E9FA3"/>
29
+ <path d="M600.221 219.77C601.63 220.408 602.683 220.825 603.968 221.711C617.666 222.455 635.223 228.129 648.683 230.28C649.546 228.97 649.278 229.541 649.403 227.832C669.391 253.63 688.636 281.692 704.619 310.124C707.998 316.129 710.887 322.426 714.013 328.554C691.665 307.68 663.633 293.892 632.528 295.004C628.82 295.168 625.127 295.522 621.456 296.068C614.804 297.369 608.168 298.775 601.558 300.28C590.693 304.05 585.831 306.075 575.841 312.209C574.285 313.156 572.51 314.397 570.964 315.417C563.581 304.715 559.579 292.168 564.557 279.508C565.362 277.46 566.324 274.236 568.401 273.274L569.14 273.734L569.561 276.223C571.844 283.541 573.343 286.293 579.548 291.084C579.682 291.102 584.92 293.008 585.657 293.271C600.384 298.507 620.469 292.064 624.526 275.628C625.501 271.568 625.45 267.328 624.372 263.294C621.867 253.539 606.146 229.298 600.221 219.77Z" fill="#C2C3C4"/>
30
+ <path d="M600.221 219.77C601.63 220.408 602.683 220.825 603.968 221.711C615.484 234.276 636.257 253.783 634.886 271.264C633.989 282.76 628.994 288.303 621.456 296.068C614.804 297.369 608.168 298.775 601.558 300.28C590.693 304.05 585.831 306.075 575.841 312.209C574.285 313.156 572.51 314.397 570.964 315.417C563.581 304.715 559.579 292.168 564.557 279.508C565.362 277.46 566.324 274.236 568.401 273.274L569.14 273.734L569.561 276.223C571.844 283.541 573.343 286.293 579.548 291.084C579.682 291.102 584.92 293.008 585.657 293.271C600.384 298.507 620.469 292.064 624.526 275.628C625.501 271.568 625.45 267.328 624.372 263.294C621.867 253.539 606.146 229.298 600.221 219.77Z" fill="#FDFDFD"/>
31
+ <path d="M570.961 315.417C563.578 304.715 559.576 292.168 564.554 279.508C565.359 277.46 566.32 274.236 568.397 273.274L569.136 273.734L569.558 276.223C571.841 283.541 573.34 286.293 579.545 291.084C576.923 290.825 578.298 290.719 575.758 289.237L575.657 290.391L576.341 290.952C578.44 292.696 579.597 294.453 582.03 295.947C586.989 298.984 598.283 297.295 601.554 300.28C590.689 304.05 585.828 306.075 575.838 312.209C574.282 313.156 572.507 314.397 570.961 315.417Z" fill="#C2C3C4"/>
32
+ <path d="M570.961 315.417C563.578 304.715 559.576 292.168 564.554 279.508C565.359 277.46 566.32 274.236 568.397 273.274L569.136 273.734L569.558 276.223C566.285 284.521 571.193 304.543 575.838 312.209C574.282 313.156 572.507 314.397 570.961 315.417Z" fill="#FDFDFD"/>
33
+ <path d="M602.665 604.523C600.814 599.371 598.355 592.986 604.845 590.123C607.033 593.641 608.663 600.961 615.152 601.498C629.474 602.692 646.632 584.803 661.312 594.863C664.662 598.377 666.083 602.361 665.45 607.211C665.185 619.031 645.052 640.762 661.764 643.318C660.611 643.642 659.535 643.943 658.366 644.225L658.921 644.158L658.951 645.099C660.582 646.059 662.242 646.998 663.81 648.05L664.655 648.065C670.842 648.164 691.701 642.265 688.724 653.87C683.154 650.165 679.022 652.728 673.258 654.74C666.444 657.113 658.648 660.822 651.289 660.272C648.252 660.247 647.723 660.119 644.792 659.28C620.238 648.045 649.265 621.61 650.784 606.731C644.043 599.754 624.337 620.146 609.647 612.853C605.822 610.652 604.252 608.485 602.665 604.523Z" fill="#FDFDFD"/>
34
+ <path d="M661.311 594.862C664.661 598.376 666.082 602.361 665.449 607.21C665.185 619.031 645.051 640.762 661.764 643.317C660.61 643.641 659.534 643.943 658.365 644.224L658.92 644.158L658.95 645.098C660.581 646.058 662.241 646.997 663.809 648.049L664.654 648.064C670.842 648.163 691.7 642.264 688.723 653.869C683.153 650.164 679.021 652.727 673.257 654.739C666.443 657.112 658.648 660.821 651.289 660.271C648.251 660.247 647.722 660.118 644.791 659.28C644.651 654.602 642.953 652.3 642.358 647.477C642.673 643.55 642.846 638.69 644.103 634.929C648.276 622.395 657.654 610.387 660.95 597.643C661.187 596.469 661.199 596.06 661.311 594.862Z" fill="#ABABAE"/>
35
+ <path d="M642.358 647.478C644.112 648.309 650.251 656.613 650.623 658.094C648.923 657.398 648.838 657.072 647.821 655.573C647.78 657.011 647.649 657.728 648.165 659.088C649.117 659.283 649.992 659.473 650.931 659.705L651.289 660.272C648.252 660.247 647.722 660.119 644.791 659.28C644.651 654.602 642.953 652.301 642.358 647.478Z" fill="#C2C3C4"/>
36
+ <path d="M661.31 594.863C664.66 598.377 666.081 602.362 665.448 607.211C663.631 604.74 663.692 600.903 660.949 597.644C661.186 596.47 661.199 596.061 661.31 594.863Z" fill="#C2C3C4"/>
37
+ <path d="M609.647 612.852C611.067 610.446 611.392 607.136 612.511 605.087C620.191 609.001 623.723 609.544 632.41 606.96C637.085 605.568 645.296 601.715 649.868 601.353C650.707 603.719 650.699 604.2 650.784 606.73C644.044 599.753 624.338 620.146 609.647 612.852Z" fill="#B8B7BA"/>
38
+ <path d="M610.845 605.356L610.769 603.859C612.85 603.175 623.058 605.028 625.771 605.217C631.889 605.654 644.904 598.758 649.869 601.353C645.297 601.715 637.086 605.567 632.411 606.96C623.723 609.544 620.192 609.001 612.512 605.087C611.783 605.025 611.601 605.17 610.845 605.356Z" fill="#C2C3C4"/>
39
+ <path d="M602.664 604.523C604.491 605.897 604.93 607.577 606.591 608.266C608.261 607.873 609.506 606.518 610.843 605.358C611.599 605.171 611.781 605.026 612.51 605.088C611.391 607.137 611.066 610.447 609.646 612.853C605.822 610.652 604.252 608.485 602.664 604.523Z" fill="#C2C3C4"/>
40
+ <path d="M844.291 514.024C850.482 513.437 867.115 513.566 873.456 514.003C878.245 517.617 882.297 521.889 886.331 526.316C888.233 529.835 885.473 550.059 884.903 554.981C868.716 557.231 857.474 558.799 841.105 558.962C839.175 549.981 837.547 532.21 839.777 523.318C840.699 518.593 841.39 517.648 844.291 514.024Z" fill="#C2C3C4"/>
41
+ <path d="M844.291 514.023C850.482 513.436 867.115 513.565 873.456 514.002C878.245 517.616 882.297 521.887 886.331 526.314C881.531 528.065 869.625 525.669 864.076 524.985C856.011 523.993 847.899 523.432 839.777 523.316C840.699 518.591 841.39 517.647 844.291 514.023Z" fill="#FDFDFD"/>
42
+ <path d="M699.024 689.118C714.152 694.256 730.351 675.931 744.38 687.239C760.675 703.125 720.748 737.821 753.589 739.439C760.344 739.77 770.095 735.991 776.467 733.585C768.42 747.494 754.082 758.574 737.186 752.876C726.33 749.396 722.497 740.381 723.849 729.429C724.98 720.272 730.594 711.822 730.984 702.703C731.066 700.713 730.265 699.726 728.862 698.439C729.014 696.924 729.009 697.457 728.651 695.928C727.301 694.091 725.663 693.585 723.561 692.571C717.691 693.532 699.822 698.022 699.024 689.118Z" fill="#B5B5B7"/>
43
+ <path d="M699.024 689.118C714.152 694.256 730.351 675.931 744.38 687.239C738.448 700.484 724.779 726.768 729.418 741.752C730.689 745.853 737.175 750.552 737.484 752.359L737.186 752.876C726.33 749.396 722.497 740.381 723.849 729.429C724.98 720.272 730.594 711.822 730.984 702.703C731.066 700.713 730.265 699.726 728.862 698.439C729.014 696.924 729.009 697.457 728.651 695.928C727.301 694.091 725.663 693.585 723.561 692.571C717.691 693.532 699.822 698.022 699.024 689.118Z" fill="#FDFDFD"/>
44
+ <path d="M663.807 648.05C662.239 646.999 660.579 646.06 658.948 645.099L658.918 644.159L658.363 644.226C659.532 643.944 660.608 643.642 661.762 643.318L662.538 643.172C675.376 640.68 691.45 631.782 703.076 641.77C716.338 657.599 689.33 675.769 699.024 689.118C699.821 698.022 717.69 693.532 723.561 692.571C725.663 693.585 727.3 694.091 728.651 695.928C729.009 697.457 729.014 696.924 728.862 698.439C719.219 698.158 702.734 711.353 691.581 706.141C688.7 705.205 685.905 703.712 683.849 701.449C670.713 687.004 688.931 668.267 688.721 653.87C691.698 642.266 670.84 648.165 664.652 648.066L663.807 648.05Z" fill="#AAAAAC"/>
45
+ <path d="M663.807 648.05C662.239 646.999 660.579 646.06 658.948 645.099L658.918 644.159L658.363 644.226C659.532 643.944 660.608 643.642 661.762 643.318L662.538 643.172C675.376 640.68 691.45 631.782 703.076 641.77C698.389 648.395 688.633 673.533 685.741 682.312C684.68 685.525 684.694 689.957 684.946 693.218C685.44 699.475 690.439 703.39 691.581 706.141C688.7 705.205 685.905 703.712 683.849 701.449C670.713 687.004 688.931 668.267 688.721 653.87C691.698 642.266 670.84 648.165 664.652 648.066L663.807 648.05Z" fill="#FDFDFD"/>
46
+ <path d="M178.586 877.986C174.127 870.911 171.606 862.785 171.275 854.425C170.49 837.642 181.054 813.404 200.751 807.529C201.314 807.364 201.709 807.992 202.135 808.413C202.238 810.023 202.337 809.207 201.189 810.857C198.37 815.668 193.616 820.048 190.155 824.522C176.303 842.424 175.259 869.581 196.246 882.538L196.984 882.985C213.963 889.839 228.793 876.091 233.484 860.608C236.78 849.728 235.11 839.384 229.696 829.524C230.942 827.589 231.565 826.382 233.317 824.833C238.288 832.074 242.154 840.684 242.67 849.562C244.308 870.268 230.626 892.247 208.736 893.905C200.309 894.568 191.963 891.866 185.526 886.389C184.708 885.689 183.589 884.71 182.959 883.847C180.949 881.547 180.197 880.696 178.586 877.986Z" fill="#B5B5B7"/>
47
+ <path d="M229.698 829.524C230.943 827.589 231.567 826.382 233.319 824.834C238.29 832.074 242.156 840.684 242.672 849.563C241.843 848.378 240.715 847.301 239.704 846.251C240.828 857.716 238.688 865.689 231.205 875.039C223.945 884.107 209.283 893.056 197.642 886.107C196.679 885.534 196.806 884.67 196.588 883.58L196.986 882.985C213.964 889.839 228.794 876.091 233.485 860.609C236.782 849.729 235.112 839.384 229.698 829.524Z" fill="#FDFDFD"/>
48
+ <path d="M233.319 824.833C238.29 832.073 242.157 840.683 242.672 849.562C241.843 848.377 240.716 847.3 239.704 846.25C238.181 840.56 235.248 830.297 233.319 824.833Z" fill="#CED0D1"/>
49
+ <path d="M178.586 877.986C174.127 870.911 171.606 862.785 171.275 854.425C170.49 837.642 181.054 813.404 200.751 807.529C201.314 807.364 201.709 807.992 202.135 808.413C202.238 810.023 202.337 809.207 201.189 810.857C193.941 813.253 185.249 824.042 181.714 830.88C177.413 839.193 174.927 855.095 176.74 863.948C177.402 869.826 180.181 872.254 178.586 877.986Z" fill="#F6F5F5"/>
50
+ <path d="M176.742 863.948C178.423 868.795 183.572 879.707 182.961 883.847C180.95 881.546 180.199 880.695 178.587 877.985C180.183 872.254 177.403 869.825 176.742 863.948Z" fill="#C2C3C4"/>
51
+ <path d="M211.031 834.194C210.364 833.865 209.723 833.479 209.117 833.048C196.632 824.124 221.864 790.456 233.347 789.848C237.154 789.645 239.983 792.172 242.464 794.288C252.176 804.841 227.891 812.72 222.98 821.289C219.424 827.497 219.086 837.336 211.031 834.194Z" fill="#9E9FA3"/>
52
+ <path d="M211.031 834.194C210.364 833.865 209.723 833.479 209.117 833.048C196.632 824.124 221.864 790.456 233.347 789.848C237.154 789.645 239.983 792.172 242.464 794.288C237.437 795.233 234.654 796.657 230.18 799.147C226.447 802.065 222.788 805.08 219.202 808.18C213.071 815.312 208.734 823.453 210.944 833.088C211.081 833.687 211.046 833.561 211.031 834.194Z" fill="#FDFDFD"/>
53
+ <path d="M219.206 808.179C219.958 802.665 225.273 800.267 230.183 799.146C226.451 802.065 222.791 805.079 219.206 808.179Z" fill="#C2C3C4"/>
54
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M598.032 389.712C591.685 383.365 581.393 383.365 575.045 389.712L514.998 449.76C513.055 451.703 509.904 451.703 507.961 449.76C506.018 447.816 506.018 444.666 507.961 442.723L568.009 382.676C578.243 372.442 594.835 372.441 605.069 382.676C611.244 388.851 613.693 397.341 612.416 405.353C620.428 404.077 628.919 406.528 635.094 412.703L635.406 413.015C645.64 423.249 645.64 439.842 635.406 450.076L581.099 504.383C580.278 505.204 580.278 506.534 581.098 507.354L592.25 518.506C594.193 520.449 594.193 523.6 592.25 525.543C590.306 527.486 587.156 527.486 585.213 525.543L574.062 514.391C569.355 509.684 569.355 502.053 574.062 497.347L628.369 443.039C634.717 436.691 634.717 426.4 628.369 420.052L628.057 419.739C621.708 413.391 611.416 413.389 605.069 419.736L560.347 464.462C560.307 464.502 560.267 464.541 560.226 464.579L559.721 465.084C557.778 467.027 554.627 467.027 552.684 465.084C550.741 463.141 550.741 459.991 552.684 458.047L598.032 412.699C604.38 406.352 604.38 396.06 598.032 389.712ZM590.058 397.689C592.001 399.633 592.001 402.783 590.058 404.726L545.647 449.136C539.3 455.484 539.3 465.775 545.647 472.123C551.995 478.47 562.287 478.47 568.634 472.123L613.044 427.713C614.988 425.77 618.138 425.77 620.081 427.713C622.024 429.656 622.024 432.807 620.081 434.75L575.671 479.16C565.437 489.393 548.845 489.393 538.611 479.16C528.377 468.926 528.377 452.333 538.611 442.099L583.021 397.689C584.964 395.746 588.114 395.746 590.058 397.689Z" fill="#FDFDFD"/>
55
+ </g>
56
+ <defs>
57
+ <linearGradient id="knifeRainbow" x1="335" y1="735" x2="635" y2="455" gradientUnits="userSpaceOnUse">
58
+ <stop offset="0" stop-color="#CA8473"/>
59
+ <stop offset="0.1666" stop-color="#CAC573"/>
60
+ <stop offset="0.3333" stop-color="#8DCA73"/>
61
+ <stop offset="0.5" stop-color="#73CA9A"/>
62
+ <stop offset="0.6666" stop-color="#73B8CA"/>
63
+ <stop offset="0.8333" stop-color="#7773CA"/>
64
+ <stop offset="1" stop-color="#AF73CA"/>
65
+ </linearGradient>
66
+ <linearGradient id="knifeRainbowDark" x1="335" y1="735" x2="635" y2="455" gradientUnits="userSpaceOnUse">
67
+ <stop offset="0" stop-color="#814131"/>
68
+ <stop offset="0.1666" stop-color="#817D31"/>
69
+ <stop offset="0.3333" stop-color="#498131"/>
70
+ <stop offset="0.5" stop-color="#318155"/>
71
+ <stop offset="0.6666" stop-color="#317181"/>
72
+ <stop offset="0.8333" stop-color="#353181"/>
73
+ <stop offset="1" stop-color="#693181"/>
74
+ </linearGradient>
75
+ <clipPath id="clip0_2459_19421">
76
+ <rect width="1024" height="1024" fill="white"/>
77
+ </clipPath>
78
+ </defs>
79
+ </svg>
@@ -0,0 +1,16 @@
1
+ {
2
+ "client_name": "mcpc",
3
+ "client_uri": "https://github.com/apify/mcpc",
4
+ "logo_uri": "https://apify.github.io/mcpc/client-logo.svg",
5
+ "tos_uri": "https://apify.github.io/mcpc/LICENSE",
6
+ "redirect_uris": [
7
+ "http://127.0.0.1:13316/callback",
8
+ "http://127.0.0.1:31613/callback",
9
+ "http://127.0.0.1:16133/callback"
10
+ ],
11
+ "grant_types": ["authorization_code", "refresh_token"],
12
+ "response_types": ["code"],
13
+ "token_endpoint_auth_method": "none",
14
+ "application_type": "native",
15
+ "software_id": "mcpc"
16
+ }
@@ -6,7 +6,7 @@ import { createMcpClient } from '../core/index.js';
6
6
  import { KEEPALIVE_INTERVAL_MS } from '../lib/types.js';
7
7
  import { createLogger, setVerbose, initFileLogger, closeFileLogger } from '../lib/index.js';
8
8
  import { fileExists, getBridgesDir, getSocketPath, ensureDir, cleanupOrphanedLogFiles, isSessionExpiredError, } from '../lib/index.js';
9
- import { ClientError, NetworkError, AuthError, isAuthenticationError } from '../lib/index.js';
9
+ import { ClientError, ServerError, NetworkError, AuthError, isAuthenticationError, } from '../lib/index.js';
10
10
  import { getSession, loadSessions, updateSession } from '../lib/sessions.js';
11
11
  import { OAuthTokenManager } from '../lib/auth/oauth-token-manager.js';
12
12
  import { OAuthProvider } from '../lib/auth/oauth-provider.js';
@@ -43,13 +43,18 @@ class BridgeProcess {
43
43
  mcpClientReady;
44
44
  mcpClientReadyResolver;
45
45
  mcpClientReadyRejecter;
46
+ stderrTail = [];
47
+ stderrTailChars = 0;
48
+ static STDERR_TAIL_MAX_LINES = 50;
49
+ static STDERR_TAIL_MAX_CHARS = 8_000;
46
50
  constructor(options) {
47
51
  this.options = options;
48
- this.socketPath = getSocketPath(options.sessionName);
52
+ this.socketPath = getSocketPath(options.sessionName, process.pid);
49
53
  this.mcpClientReady = new Promise((resolve, reject) => {
50
54
  this.mcpClientReadyResolver = resolve;
51
55
  this.mcpClientReadyRejecter = reject;
52
56
  });
57
+ this.mcpClientReady.catch(() => { });
53
58
  if (options.verbose) {
54
59
  setVerbose(true);
55
60
  }
@@ -247,8 +252,14 @@ class BridgeProcess {
247
252
  if (isAuthenticationError(errorMsg) && !(error instanceof AuthError)) {
248
253
  classifiedError = new AuthError(errorMsg);
249
254
  }
255
+ if (this.stderrTail.length > 0) {
256
+ const tail = this.stderrTail.map((l) => ` ${l}`).join('\n');
257
+ classifiedError.message = `${classifiedError.message}\n\nRecent server stderr:\n${tail}`;
258
+ }
250
259
  this.mcpClientReadyRejecter(classifiedError);
251
- if (isSessionExpiredError(errorMsg)) {
260
+ if (isSessionExpiredError(errorMsg, {
261
+ hadActiveSession: !!this.options.mcpSessionId,
262
+ })) {
252
263
  logger.warn('Session rejected by server (expired session ID), marking as expired');
253
264
  try {
254
265
  await updateSession(this.options.sessionName, { status: 'expired' });
@@ -283,6 +294,21 @@ class BridgeProcess {
283
294
  throw error;
284
295
  }
285
296
  }
297
+ recordServerStderr(line) {
298
+ const trimmed = line.length > BridgeProcess.STDERR_TAIL_MAX_CHARS
299
+ ? line.slice(0, BridgeProcess.STDERR_TAIL_MAX_CHARS) + '…'
300
+ : line;
301
+ logger.info(`[server stderr] ${trimmed}`);
302
+ this.stderrTail.push(trimmed);
303
+ this.stderrTailChars += trimmed.length + 1;
304
+ while (this.stderrTail.length > BridgeProcess.STDERR_TAIL_MAX_LINES ||
305
+ (this.stderrTail.length > 1 && this.stderrTailChars > BridgeProcess.STDERR_TAIL_MAX_CHARS)) {
306
+ const removed = this.stderrTail.shift();
307
+ if (removed === undefined)
308
+ break;
309
+ this.stderrTailChars -= removed.length + 1;
310
+ }
311
+ }
286
312
  broadcastNotification(method, params) {
287
313
  const notification = {
288
314
  type: 'notification',
@@ -363,6 +389,7 @@ class BridgeProcess {
363
389
  ...(this.authProvider && { authProvider: this.authProvider }),
364
390
  ...(this.options.mcpSessionId && { mcpSessionId: this.options.mcpSessionId }),
365
391
  ...(customFetch && { customFetch }),
392
+ onStderrLine: (line) => this.recordServerStderr(line),
366
393
  listChanged: {
367
394
  tools: {
368
395
  autoRefresh: false,
@@ -423,6 +450,11 @@ class BridgeProcess {
423
450
  throw new Error(`Session expired: server did not resume MCP session ` +
424
451
  `(expected ${this.options.mcpSessionId}, got ${newMcpSessionId ?? 'none'})`);
425
452
  }
453
+ if (this.options.mcpSessionId) {
454
+ logger.info('Verifying resumed session with ping...');
455
+ await this.client.ping();
456
+ logger.info('Session verification ping succeeded');
457
+ }
426
458
  const sessionUpdate = {
427
459
  lastSeenAt: new Date().toISOString(),
428
460
  status: 'active',
@@ -440,6 +472,10 @@ class BridgeProcess {
440
472
  await updateSession(this.options.sessionName, sessionUpdate);
441
473
  if (serverDetails.capabilities?.tools) {
442
474
  await this.client.listAllTools({ refreshCache: true }).catch((err) => {
475
+ const errMsg = err.message || '';
476
+ if (isSessionExpiredError(errMsg) || isAuthenticationError(errMsg)) {
477
+ throw err;
478
+ }
443
479
  logger.warn('Failed to pre-populate tools cache:', err);
444
480
  });
445
481
  }
@@ -509,8 +545,14 @@ class BridgeProcess {
509
545
  }
510
546
  }
511
547
  async handlePossibleExpiration(error) {
548
+ if (error instanceof ServerError) {
549
+ const originalError = error.details?.originalError;
550
+ if (originalError && originalError.name === 'McpError') {
551
+ return;
552
+ }
553
+ }
512
554
  let status = null;
513
- if (isSessionExpiredError(error.message)) {
555
+ if (isSessionExpiredError(error.message, { hadActiveSession: true })) {
514
556
  logger.warn('Session appears to be expired, marking as expired and shutting down');
515
557
  status = 'expired';
516
558
  }
@@ -838,6 +880,11 @@ class BridgeProcess {
838
880
  result = await this.client.getTask(params.taskId);
839
881
  break;
840
882
  }
883
+ case 'getTaskResult': {
884
+ const params = message.params;
885
+ result = await this.client.getTaskResult(params.taskId);
886
+ break;
887
+ }
841
888
  case 'cancelTask': {
842
889
  const params = message.params;
843
890
  result = await this.client.cancelTask(params.taskId);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridge/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bridge/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ export declare function login(serverUrl: string, options: CommandOptions & {
4
4
  scope?: string;
5
5
  clientId?: string;
6
6
  clientSecret?: string;
7
+ clientMetadataUrl?: string | false;
8
+ callbackPort?: number;
7
9
  }): Promise<void>;
8
10
  export declare function logout(serverUrl: string, options: CommandOptions & {
9
11
  profile?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUzD,wBAAsB,KAAK,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC,IAAI,CAAC,CA2Df;AAKD,wBAAsB,MAAM,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CA2Df"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AASzD,wBAAsB,KAAK,CACzB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC,IAAI,CAAC,CA0Ff;AAKD,wBAAsB,MAAM,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,IAAI,CAAC,CAiEf"}
@@ -1,9 +1,8 @@
1
- import { formatSuccess, formatError, formatOutput, formatInfo, formatWarning } from '../output.js';
1
+ import { formatSuccess, formatError, formatOutput, formatInfo, formatWarning, theme, } from '../output.js';
2
2
  import { deleteAuthProfiles } from '../../lib/auth/profiles.js';
3
3
  import { performOAuthFlow } from '../../lib/auth/oauth-flow.js';
4
- import { normalizeServerUrl, validateProfileName } from '../../lib/utils.js';
5
- import chalk from 'chalk';
6
- import { DEFAULT_AUTH_PROFILE } from '../../lib/auth/oauth-utils.js';
4
+ import { getServerHost, normalizeServerUrl, validateProfileName } from '../../lib/utils.js';
5
+ import { DEFAULT_AUTH_PROFILE, DEFAULT_CLIENT_METADATA_URL } from '../../lib/auth/oauth-utils.js';
7
6
  export async function login(serverUrl, options) {
8
7
  try {
9
8
  const normalizedUrl = normalizeServerUrl(serverUrl);
@@ -12,9 +11,26 @@ export async function login(serverUrl, options) {
12
11
  if (options.clientSecret && !options.clientId) {
13
12
  throw new Error('--client-secret requires --client-id');
14
13
  }
14
+ if (options.clientMetadataUrl && options.clientId) {
15
+ throw new Error('--client-metadata-url cannot be combined with --client-id (they are mutually exclusive ' +
16
+ 'client registration approaches)');
17
+ }
18
+ let resolvedClientMetadataUrl;
19
+ if (options.clientId) {
20
+ resolvedClientMetadataUrl = undefined;
21
+ }
22
+ else if (options.clientMetadataUrl === false) {
23
+ resolvedClientMetadataUrl = undefined;
24
+ }
25
+ else if (typeof options.clientMetadataUrl === 'string') {
26
+ resolvedClientMetadataUrl = options.clientMetadataUrl;
27
+ }
28
+ else {
29
+ resolvedClientMetadataUrl = DEFAULT_CLIENT_METADATA_URL;
30
+ }
15
31
  if (options.outputMode === 'human') {
16
32
  console.log(formatInfo(`Starting OAuth authentication for ${normalizedUrl}`));
17
- console.log(formatInfo(`Profile: ${chalk.magenta(profileName)}`));
33
+ console.log(formatInfo(`Profile: ${theme.magenta(profileName)}`));
18
34
  }
19
35
  const clientCredentials = {};
20
36
  if (options.clientId) {
@@ -23,10 +39,13 @@ export async function login(serverUrl, options) {
23
39
  if (options.clientSecret) {
24
40
  clientCredentials.clientSecret = options.clientSecret;
25
41
  }
26
- const result = await performOAuthFlow(normalizedUrl, profileName, options.scope, clientCredentials);
42
+ if (resolvedClientMetadataUrl) {
43
+ clientCredentials.clientMetadataUrl = resolvedClientMetadataUrl;
44
+ }
45
+ const result = await performOAuthFlow(normalizedUrl, profileName, options.scope, clientCredentials, options.callbackPort);
27
46
  if (options.outputMode === 'human') {
28
47
  console.log(formatSuccess('Authentication successful!'));
29
- console.log(formatInfo(`Profile ${chalk.magenta(profileName)} saved`));
48
+ console.log(formatInfo(`Profile ${theme.magenta(profileName)} saved`));
30
49
  if (result.profile.scopes && result.profile.scopes.length > 0) {
31
50
  console.log(formatInfo(`Scopes: ${result.profile.scopes.join(', ')}`));
32
51
  }
@@ -58,7 +77,7 @@ export async function logout(serverUrl, options) {
58
77
  const result = await deleteAuthProfiles(normalizedUrl, profileName);
59
78
  if (result.count === 0) {
60
79
  if (options.outputMode === 'human') {
61
- console.error(formatError(`Profile ${chalk.magenta(profileName)} for ${normalizedUrl} not found`));
80
+ console.error(formatError(`Profile ${theme.magenta(profileName)} for ${normalizedUrl} not found`));
62
81
  }
63
82
  else {
64
83
  console.error(formatOutput({ error: 'Profile not found' }, 'json'));
@@ -67,10 +86,13 @@ export async function logout(serverUrl, options) {
67
86
  return;
68
87
  }
69
88
  if (options.outputMode === 'human') {
70
- console.log(formatSuccess(`Profile ${chalk.magenta(profileName)} for ${normalizedUrl} deleted`));
89
+ console.log(formatSuccess(`Profile ${theme.magenta(profileName)} for ${normalizedUrl} deleted`));
71
90
  if (result.affectedSessions.length > 0) {
91
+ const loginCmd = profileName === DEFAULT_AUTH_PROFILE
92
+ ? `mcpc login ${getServerHost(normalizedUrl)}`
93
+ : `mcpc login ${getServerHost(normalizedUrl)} --profile ${profileName}`;
72
94
  console.log(formatWarning(`Warning: ${result.affectedSessions.length} session(s) were using this profile: ${result.affectedSessions.join(', ')}`));
73
- console.log(formatWarning('These sessions may fail to authenticate. Recreate them or login again.'));
95
+ console.log(formatWarning(`These sessions may fail to authenticate. Recreate them or login again by running: ${loginCmd}`));
74
96
  }
75
97
  }
76
98
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/cli/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"clean.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/clean.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAgBrD,UAAU,YAAY;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AA4JD,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA+GhE"}
1
+ {"version":3,"file":"clean.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/clean.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAiBrD,UAAU,YAAY;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAoKD,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqHhE"}