@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).
Search Criteria
Package Details: python-mcp 1.27.1-2
Package Actions
| 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) |
Dependencies (38)
- python
- python-anyio
- python-cryptography
- python-httpx (python-httpx-gitAUR)
- python-httpx-sseAUR
- python-jsonschema
- python-pydantic
- python-pydantic-settings
- python-pyjwt
- python-python-multipart
- python-sse-starletteAUR
- python-starlette
- python-typing-inspection
- python-typing_extensions
- uvicorn
- git (git-gitAUR, git-glAUR, git-wd40AUR) (make)
- python-build (make)
- python-hatchling (python-hatchling-gitAUR) (make)
- python-installer (make)
- python-uv-dynamic-versioningAUR (make)
- Show 18 more dependencies...
Required by (40)
- arxiv-mcp-server
- browser-use-cli (optional)
- docmancer-git
- dsview-git
- ghidra-mcp
- ghidra-mcp-git
- graphify (optional)
- litellm (optional)
- marimo (optional)
- mcp-handley-lab-git
- mistral-vibe
- newelle
- nyarchassistant
- nyarchassistant-git
- open-webui-no-venv
- oterm
- oterm-git
- python-claude-agent-sdk
- python-dbgprobe-mcp-server
- python-ddgs (optional)
- Show 20 more...
Sources (2)
medaminezghal commented on 2026-05-15 22:58 (UTC)
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.
-
Version bump Update pkgver to 1.27.1, released upstream on 2026-05-08.
-
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.
-
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.
-
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.
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).