|
| 1 | +class Mcpm < Formula |
| 2 | + include Language::Python::Virtualenv |
| 3 | + |
| 4 | + desc "Open source, community-driven MCP server and client manager" |
| 5 | + homepage "https://mcpm.sh/" |
| 6 | + url "https://files.pythonhosted.org/packages/5c/6d/2de2ea4a7da2968aae0734a18331b9f0e48fdeddd8e53ecf4e8b7e9a8097/mcpm-1.0.2.tar.gz" |
| 7 | + sha256 "21cf6b88f9b0709bc85c962548642bf284ff06849ff784bcb64a407f6147e667" |
| 8 | + license "MIT" |
| 9 | + |
| 10 | + depends_on "rust" => :build |
| 11 | + |
| 12 | + |
| 13 | + resource "annotated-types" do |
| 14 | + url "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz" |
| 15 | + sha256 "aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89" |
| 16 | + end |
| 17 | + |
| 18 | + resource "attrs" do |
| 19 | + url "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz" |
| 20 | + sha256 "75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b" |
| 21 | + end |
| 22 | + |
| 23 | + resource "certifi" do |
| 24 | + url "https://files.pythonhosted.org/packages/1c/ab/c9f1e32b7b1bf505bf26f0ef697775960db7932abeb7b516de930ba2705f/certifi-2025.1.31.tar.gz" |
| 25 | + sha256 "3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651" |
| 26 | + end |
| 27 | + |
| 28 | + resource "charset-normalizer" do |
| 29 | + url "https://files.pythonhosted.org/packages/16/b0/572805e227f01586461c80e0fd25d65a2115599cc9dad142fee4b747c357/charset_normalizer-3.4.1.tar.gz" |
| 30 | + sha256 "44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3" |
| 31 | + end |
| 32 | + |
| 33 | + resource "click" do |
| 34 | + url "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz" |
| 35 | + sha256 "ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" |
| 36 | + end |
| 37 | + |
| 38 | + resource "idna" do |
| 39 | + url "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz" |
| 40 | + sha256 "12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9" |
| 41 | + end |
| 42 | + |
| 43 | + resource "jsonschema" do |
| 44 | + url "https://files.pythonhosted.org/packages/38/2e/03362ee4034a4c917f697890ccd4aec0800ccf9ded7f511971c75451deec/jsonschema-4.23.0.tar.gz" |
| 45 | + sha256 "d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4" |
| 46 | + end |
| 47 | + |
| 48 | + resource "jsonschema-specifications" do |
| 49 | + url "https://files.pythonhosted.org/packages/10/db/58f950c996c793472e336ff3655b13fbcf1e3b359dcf52dcf3ed3b52c352/jsonschema_specifications-2024.10.1.tar.gz" |
| 50 | + sha256 "0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272" |
| 51 | + end |
| 52 | + |
| 53 | + resource "markdown-it-py" do |
| 54 | + url "https://files.pythonhosted.org/packages/38/71/3b932df36c1a044d397a1f92d1cf91ee0a503d91e470cbd670aa66b07ed0/markdown-it-py-3.0.0.tar.gz" |
| 55 | + sha256 "e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb" |
| 56 | + end |
| 57 | + |
| 58 | + resource "mdurl" do |
| 59 | + url "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz" |
| 60 | + sha256 "bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba" |
| 61 | + end |
| 62 | + |
| 63 | + resource "pydantic" do |
| 64 | + url "https://files.pythonhosted.org/packages/93/a3/698b87a4d4d303d7c5f62ea5fbf7a79cab236ccfbd0a17847b7f77f8163e/pydantic-2.11.1.tar.gz" |
| 65 | + sha256 "442557d2910e75c991c39f4b4ab18963d57b9b55122c8b2a9cd176d8c29ce968" |
| 66 | + end |
| 67 | + |
| 68 | + resource "pydantic-core" do |
| 69 | + url "https://files.pythonhosted.org/packages/b9/05/91ce14dfd5a3a99555fce436318cc0fd1f08c4daa32b3248ad63669ea8b4/pydantic_core-2.33.0.tar.gz" |
| 70 | + sha256 "40eb8af662ba409c3cbf4a8150ad32ae73514cd7cb1f1a2113af39763dd616b3" |
| 71 | + end |
| 72 | + |
| 73 | + resource "pygments" do |
| 74 | + url "https://files.pythonhosted.org/packages/7c/2d/c3338d48ea6cc0feb8446d8e6937e1408088a72a39937982cc6111d17f84/pygments-2.19.1.tar.gz" |
| 75 | + sha256 "61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f" |
| 76 | + end |
| 77 | + |
| 78 | + resource "referencing" do |
| 79 | + url "https://files.pythonhosted.org/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz" |
| 80 | + sha256 "df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa" |
| 81 | + end |
| 82 | + |
| 83 | + resource "requests" do |
| 84 | + url "https://files.pythonhosted.org/packages/63/70/2bf7780ad2d390a8d301ad0b550f1581eadbd9a20f896afe06353c2a2913/requests-2.32.3.tar.gz" |
| 85 | + sha256 "55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760" |
| 86 | + end |
| 87 | + |
| 88 | + resource "rich" do |
| 89 | + url "https://files.pythonhosted.org/packages/a1/53/830aa4c3066a8ab0ae9a9955976fb770fe9c6102117c8ec4ab3ea62d89e8/rich-14.0.0.tar.gz" |
| 90 | + sha256 "82f1bc23a6a21ebca4ae0c45af9bdbc492ed20231dcb63f297d6d1021a9d5725" |
| 91 | + end |
| 92 | + |
| 93 | + resource "rpds-py" do |
| 94 | + url "https://files.pythonhosted.org/packages/0b/b3/52b213298a0ba7097c7ea96bee95e1947aa84cc816d48cebb539770cdf41/rpds_py-0.24.0.tar.gz" |
| 95 | + sha256 "772cc1b2cd963e7e17e6cc55fe0371fb9c704d63e44cacec7b9b7f523b78919e" |
| 96 | + end |
| 97 | + |
| 98 | + resource "typing-extensions" do |
| 99 | + url "https://files.pythonhosted.org/packages/0e/3e/b00a62db91a83fff600de219b6ea9908e6918664899a2d85db222f4fbf19/typing_extensions-4.13.0.tar.gz" |
| 100 | + sha256 "0a4ac55a5820789d87e297727d229866c9650f6521b64206413c4fbada24d95b" |
| 101 | + end |
| 102 | + |
| 103 | + resource "typing-inspection" do |
| 104 | + url "https://files.pythonhosted.org/packages/82/5c/e6082df02e215b846b4b8c0b887a64d7d08ffaba30605502639d44c06b82/typing_inspection-0.4.0.tar.gz" |
| 105 | + sha256 "9765c87de36671694a67904bf2c96e395be9c6439bb6c87b5142569dcdd65122" |
| 106 | + end |
| 107 | + |
| 108 | + resource "urllib3" do |
| 109 | + url "https://files.pythonhosted.org/packages/aa/63/e53da845320b757bf29ef6a9062f5c669fe997973f966045cb019c3f4b66/urllib3-2.3.0.tar.gz" |
| 110 | + sha256 "f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d" |
| 111 | + end |
| 112 | + |
| 113 | + def install |
| 114 | + virtualenv_install_with_resources |
| 115 | + end |
| 116 | + |
| 117 | + test do |
| 118 | + assert_match version.to_s, shell_output("#{bin}/mcpm --version") |
| 119 | + assert_match "Supported MCP Clients", shell_output("#{bin}/mcpm client --list") |
| 120 | + end |
| 121 | +end |
0 commit comments