skillfed

python-lsp-server

Python Language Server for the Language Server Protocol

python-lsp-server v1.15.0 1.5M downloads/30d#3,804 on PyPI2,592
Permissive license MIT Active released

What it is and what it does

Python LSP Server is a Language Server Protocol implementation that bridges Python development tools and editors. It exposes a `pylsp` command-line server that listens for LSP requests from editors and IDEs, providing code intelligence features like completion, definition lookup, hover information, linting, and formatting. The server requires Jedi as its core dependency for semantic analysis and can optionally integrate with tools like flake8, pylint, black, yapf, and others when installed.

The package is designed for editor integration rather than direct use by end developers. It runs as a background process that your editor connects to, translating between the editor's requests and Python analysis tools. Configuration flows from the editor client, workspace settings, and user home directory in a layered override pattern. It supports both stdio and WebSocket communication modes, making it flexible for different editor architectures and remote development scenarios.

Use it for:

  • Enable code completion and symbol navigation in editors that support LSP but lack native Python support
  • Provide unified linting and formatting across multiple Python tools (flake8, pylint, black) through a single server interface
  • Support remote Python development by running the server on a remote machine and connecting via WebSocket
  • Integrate Python code analysis into custom development tools or build systems that speak the LSP protocol
  • Detect and report code style issues and complexity metrics in real-time as developers write code

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Implements the Language Server Protocol for Python, providing code completion, linting, formatting, and navigation features to editors and IDEs through a standardized server interface.

Yes. This is a mature, actively maintained implementation of a standard protocol with low install friction and no security vulnerabilities. Install it if you need LSP-based Python tooling integration in an editor or IDE, or if you are building a tool that needs to speak LSP for Python analysis. The permissive MIT license and broad optional provider support make it suitable for both open-source and commercial use.

Install

python-lsp-server on PyPI

pip

pip install python-lsp-server

uv

uv add python-lsp-server

poetry

poetry add python-lsp-server

Installing python-lsp-server

Before you install

Low friction install via wheel distribution. Actively maintained with recent releases; 2592 repository stars and active development signal. Requires Python 3.9+. Seven runtime dependencies are all well-established packages; optional providers (flake8, pylint, yapf, black, etc.) can be added via extras syntax.

License in practice

MIT license permits commercial and private use with minimal restrictions. No copyleft obligations or proprietary constraints.

Quickstart

pip install python-lsp-server
pylsp --help

# In your editor/IDE, configure LSP client to connect to pylsp server
# Basic usage: pylsp listens on stdio or network socket for LSP requests

Requires Python 3.9 or later. Jedi is a required runtime dependency for core completion and navigation features.

Verify before relying

  • Performance characteristics when handling large Python projects or workspaces
  • Compatibility matrix with specific editor/IDE LSP client implementations
  • Memory footprint and resource usage under typical development workloads

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 7 — docstring-to-markdown, importlib_metadata, jedi, pluggy, python-lsp-jsonrpc, ujson, black
Maintenance actively maintained — 18 days since the last release
Last repo commit
First released
Downloads 1,532,376/month — #3,804 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: python_lsp_server-1.15.0-py3-none-any.whl

Tags

language server protocol pythonlsp server python editorpython code completion serverpython linting serverpylsp language serverpython ide integrationcode navigation python server
language-server-protocoleditor-integrationcode-analysis

More Software Development packages