httpstan
HTTP-based interface to Stan, a package for Bayesian inference.
Decision gist · record as of 2026-08-14
Yes, if you need to expose Stan's Bayesian inference capabilities over HTTP or are building a tool that requires remote Stan access. The package is actively maintained, has no known vulnerabilities, and uses a permissive license. Install friction is moderate due to C++ compiler requirements and platform-specific wheels, but prebuilt binaries exist for common configurations. Not suitable if you need Windows support or non-x86-64 architectures without building from source.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Linux or macOS, x86-64 CPU, and C++ compiler (gcc ≥9.0 or clang ≥10.0).
- Python 3.12 or later.
- Medium install friction due to compiled wheels for specific Python versions (3.12, 3.13, 3.14) and platform combinations (macOS ARM64, Linux x86-64).
License · maintenance · safety
ISC (permissive) — ISC License is permissive, allowing commercial and private use with minimal restrictions. No notable licensing constraints for typical use.
last release 2026-07-29 (16 days) · last repo commit 2026-07-29 · 42 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,308,109 downloads/mo, #4,078 on PyPI
Alternatives
Verify before relying
$ python3 -m pip install httpstan
$ python3 -m httpstan
# In another terminal:
$ curl -H "Content-Type: application/json" \
--data '{"program_code":"parameters {real y;} model {y ~ normal(0,1);"}' \
http://localhost:8080/v1/models- Whether prebuilt wheels cover all common deployment targets or if source builds are frequently needed
- Performance characteristics and typical latency for model compilation and sampling operations
- Concurrent request handling limits and scalability under load
What it is and what it does
httpstan is a shim that exposes the Stan C++ library's Bayesian inference capabilities through an HTTP 1.1 REST API. It runs as a local server (by default on port 8080) and accepts HTTP requests to compile Stan probabilistic models and draw samples from them. The package is designed primarily for developers building frontends or tools that need to call Stan functionality over the network without direct C++ integration.
The package provides model caching, sample caching, and parallel sampling capabilities beyond what a basic command-line interface offers. It depends on aiohttp, marshmallow, webargs, numpy, appdirs, and setuptools. Installation requires a C++ compiler and is supported on Linux and macOS with x86-64 CPUs; Python 3.12 or later is required.
Use it for
- Building web-based Bayesian analysis tools that need to offload Stan computations to a backend server
- Creating language-agnostic frontends to Stan by wrapping HTTP calls instead of requiring C++ bindings
- Running Stan models in containerized or distributed environments where HTTP communication is preferred
- Caching compiled models and samples to avoid recompilation and resampling in iterative analysis workflows
- Enabling parallel sampling across multiple cores through the HTTP interface without manual threading code
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to expose Stan's Bayesian inference capabilities over HTTP or are building a tool that requires remote Stan access.
The package is actively maintained, has no known vulnerabilities, and uses a permissive license. Install friction is moderate due to C++ compiler requirements and platform-specific wheels, but prebuilt binaries exist for common configurations. Not suitable if you need Windows support or non-x86-64 architectures without building from source.
Install
httpstan on PyPI
Before you install
Medium install friction due to compiled wheels for specific Python versions (3.12, 3.13, 3.14) and platform combinations (macOS ARM64, Linux x86-64). Requires a C++ compiler (gcc ≥9.0 or clang ≥10.0) on the system. Package is actively maintained with recent releases.
Requires Linux or macOS, x86-64 CPU, and C++ compiler (gcc ≥9.0 or clang ≥10.0). Python 3.12 or later.
License in practice
ISC License is permissive, allowing commercial and private use with minimal restrictions. No notable licensing constraints for typical use.
Quickstart
$ python3 -m pip install httpstan
$ python3 -m httpstan
# In another terminal:
$ curl -H "Content-Type: application/json" \
--data '{"program_code":"parameters {real y;} model {y ~ normal(0,1);"}' \
http://localhost:8080/v1/models
Verify before relying
- Whether prebuilt wheels cover all common deployment targets or if source builds are frequently needed
- Performance characteristics and typical latency for model compilation and sampling operations
- Concurrent request handling limits and scalability under load
Package facts
| License | ISC permissive |
| Python support | Supports the current Python release <4.0,>=3.12 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 6 packagesaiohttpappdirsmarshmallownumpysetuptoolswebargs |
| Maintenance | Actively maintained 16 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,308,109 / month, #4,078 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: Science/ResearchLicense :: OSI ApprovedLicense :: OSI Approved :: ISC License (ISCL)Programming Language :: Python :: 3Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13 |
Evidence: httpstan-4.17.0-cp312-cp312-macosx_14_0_arm64.whl; httpstan-4.17.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; httpstan-4.17.0-cp313-cp313-macosx_14_0_arm64.whl; httpstan-4.17.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; httpstan-4.17.0-cp314-cp314-macosx_14_0_arm64.whl; httpstan-4.17.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “bayesian inference REST API”
- httpstanhttpstan provides an HTTP REST interface to the Stan C++ library for…
- numpyroNumPyro is a probabilistic programming library that uses JAX for…
- pyAgrum-nightlypyAgrum is a Python library for creating, learning, and performing…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also pystan · cmdstanpy · nutpie · pymc3 · emcee · tensorflow-probability · pymc · numpyro · pymc-extras · stanio