Package Details: python-mcp 1.27.1-2

Git Clone URL: https://aur.archlinux.org/python-mcp.git (read-only, click to copy)
Package Base: python-mcp
Description: Model Context Protocol SDK.
Upstream URL: https://github.com/modelcontextprotocol/python-sdk
Licenses: MIT
Submitter: medaminezghal
Maintainer: medaminezghal
Last Packager: medaminezghal
Votes: 5
Popularity: 1.11
First Submitted: 2025-02-04 16:43 (UTC)
Last Updated: 2026-05-15 22:01 (UTC)

Pinned Comments

medaminezghal commented on 2026-05-15 22:58 (UTC)

@everyone I’m working towards making this package automatically updated by GitHub CI, this is my repository used to maintain my packages. Every package before it’s updated should be successfully builded in clean environment (ensured by CI). So if you encounter any errors, just clean the cache and try again. Everyone is welcomed to help improve packaging by making issue or improve the CI by pull request (I’m new to CI, in fact I wrote it using AI, I think it still need improvement, I would be happy if anyone put his experience to help improve the CI).

Latest Comments

1 2 3 4 5 6 .. 9 Next › Last »

medaminezghal commented on 2026-05-15 22:58 (UTC)

@everyone I’m working towards making this package automatically updated by GitHub CI, this is my repository used to maintain my packages. Every package before it’s updated should be successfully builded in clean environment (ensured by CI). So if you encounter any errors, just clean the cache and try again. Everyone is welcomed to help improve packaging by making issue or improve the CI by pull request (I’m new to CI, in fact I wrote it using AI, I think it still need improvement, I would be happy if anyone put his experience to help improve the CI).

steho commented on 2026-05-15 15:45 (UTC)

@lightdot i was too lazy to write something up myself. if it works it works.

drago128 commented on 2026-05-15 05:37 (UTC) (edited on 2026-05-15 05:38 (UTC) by drago128)

Latest Version fails to install. See comment from @laurent_waro

[ 07:33:19 ] [130] $ yay -S python-mcp  
AUR Dependency (1): python-mcp-1.27.1-1  
AUR Make Dependency (1): python-uv-dynamic-versioning-0.14.0-1 
Sync Check Dependency (4): python-pytest-xdist-3.8.0-3, python-pytest-examples-0.0.18-2, python-inline-snapshot-0.32.6-1, python-dirty-equals-0.11.0-2
Sync Dependency (1): python-dunamai-1.26.1-1 
Sync Make Dependency (1): python-hatchling-1.29.0-1  
:: PKGBUILD up to date, skipping download: python-uv-dynamic-versioning  
:: (0/1) Failed to download PKGBUILD: python-mcp  
 -> error fetching python-mcp: error: The following untracked working tree files would be   overwritten by merge:  
        1834.patch  
Please move or remove them before you merge.  
Aborting  
         context: exit status 1  

lightdot commented on 2026-05-11 13:15 (UTC)

@steho, LLM slop in the comments, seriously?

steho commented on 2026-05-11 08:02 (UTC) (edited on 2026-05-11 08:04 (UTC) by steho)


Update pkgver to 1.27.1 + PKGBUILD fixes needed for Python 3.14 Tested and working with Python 3.14.4. Four changes are needed to build 1.27.1 correctly.

  1. Version bump Update pkgver to 1.27.1, released upstream on 2026-05-08.

  2. Remove the 1834.patch PR #1834 (https://github.com/modelcontextprotocol/python-sdk/pull/1834) (Python 3.14 compatibility) was merged upstream on 2026-01-07, well before v1.27.1 was tagged. It no longer needs to be applied and should be removed from both source= and sha256sums=. Keeping it will likely cause a patch failure against the updated tree.

  3. Simplify prepare() With the patch removed, prepare() reduces to just a git clean: prepare() { cd "$srcdir"/$_name git clean -fdx } The sed line that bumped the test timeout was only needed alongside the patch and can be dropped.

  4. Fix the SHA256 for the git source The first entry in sha256sums is a hardcoded hash for a git+ VCS source. This should/could be SKIP: source=("$_name::git+$url.git#tag=v$pkgver") sha256sums=('SKIP')


Note on test_command_execution Even with the above fixes, tests/client/test_config.py::test_command_execution will fail on Python 3.14. This test spawns uv run --frozen --with mcp[cli] mcp run, which creates an isolated venv and tries to compile pydantic-core==2.33.2 from source. That version of pydantic-core uses PyO3 v0.24.1, which only supports up to Python 3.13. The remaining 1070 tests pass cleanly. Building with --nocheck or adding --ignore=tests/client/test_config.py to the pytest invocation in check() is a reasonable workaround until pydantic-core ships a version with PyO3 support for Python 3.14.

laurent_waro commented on 2026-04-15 03:02 (UTC)

Hi, error in test when installing the package.

laurent_waro commented on 2026-04-15 03:00 (UTC)

==================================================================================== FAILURES ==================================================================================== ___________ test_command_execution ___________ [gw1] linux -- Python 3.14.4 /home/laurenth/.cache/yay/python-mcp/src/mcp/test-env/bin/python

mock_config_path = PosixPath('/tmp/pytest-of-laurenth/pytest-0/popen-gw1/test_command_execution0/Claude')

def test_command_execution(mock_config_path: Path):
    """Test that the generated command can actually be executed."""
    # Setup
    server_name = "test_server"
    file_spec = "test_server.py:app"

    # Update config
    success = update_claude_config(file_spec=file_spec, server_name=server_name)
    assert success

    # Read the generated config
    config_file = mock_config_path / "claude_desktop_config.json"
    config = json.loads(config_file.read_text())

    # Get the command and args
    server_config = config["mcpServers"][server_name]
    command = server_config["command"]
    args = server_config["args"]

    test_args = [command] + args + ["--help"]
  result = subprocess.run(test_args, capture_output=True, text=True, timeout=60, check=False)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/client/test_config.py:47:


/usr/lib/python3.14/subprocess.py:557: in run stdout, stderr = process.communicate(input, timeout=timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3.14/subprocess.py:1221: in communicate stdout, stderr = self._communicate(input, endtime, timeout) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/lib/python3.14/subprocess.py:2154: in _communicate self._check_timeout(endtime, orig_timeout, stdout, stderr)


self = <Popen: returncode: -9 args: ['/usr/bin/uv', 'run', '--frozen', '--with', 'm...>, endtime = 831.025588304, orig_timeout = 60, stdout_seq = [] stderr_seq = [b'Using CPython 3.14.4 interpreter at: /usr/bin/python3\n', b'Creating virtual environment at: .venv\n', b' Buildin...cp\n', b' Building selectolax==0.3.29\n', b' Built mcp @ file:///home/laurenth/.cache/yay/python-mcp/src/mcp\n'] skip_check_and_raise = False

def _check_timeout(self, endtime, orig_timeout, stdout_seq, stderr_seq,
                   skip_check_and_raise=False):
    """Convenience for checking if a timeout has expired."""
    if endtime is None:
        return
    if skip_check_and_raise or _time() > endtime:
      raise TimeoutExpired(
                self.args, orig_timeout,
                output=b''.join(stdout_seq) if stdout_seq else None,
                stderr=b''.join(stderr_seq) if stderr_seq else None)

E subprocess.TimeoutExpired: Command '['/usr/bin/uv', 'run', '--frozen', '--with', 'mcp[cli]', 'mcp', 'run', '/home/laurenth/.cache/yay/python-mcp/src/mcp/test_server.py:app', '--help']' timed out after 60 seconds

/usr/lib/python3.14/subprocess.py:1268: TimeoutExpired ============================================================================ short test summary info ============================================================================= FAILED tests/client/test_config.py::test_command_execution - subprocess.TimeoutExpired: Command '['/usr/bin/uv', 'run', '--frozen', '--with', 'mcp[cli]', 'mcp', 'run', '/home/laurenth/.cache/yay/python-mcp/src/mcp/test_server.py:app', '--help']' timed out after 60 seconds ======================================================= 1 failed, 1091 passed, 95 skipped, 1 xfailed in 528.10s (0:08:48) ========================================================

medaminezghal commented on 2026-03-28 10:16 (UTC)

@namaek2 @olko The package build fine for me I think you just need to remove the yay cache.

olko commented on 2026-03-26 06:13 (UTC) (edited on 2026-03-26 06:14 (UTC) by olko)

packaging error: in pyproject.toml:54 required-version = ">=0.9.5" fails on newer uv. uv doesn't support this field. the package needs a more up-to-date uv.lock (needs a version field).

namaek2 commented on 2026-03-25 05:09 (UTC)

verifying 1834.patch checksum is still failing yet.