$npx skillfedfor your agent

WSME

Simplify the writing of REST APIs, and extend them with additional protocols.

With conditionsPyPI Python ModulesReleased Jul 2026107.0K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — wsme-0.13.0-py3-none-any.whl
v0.13.0 · released 2026-07-13 · Python >=3.8 · 4 runtime deps: WebOb, simplegeneric, netaddr, importlib_metadata

Yes, if you're building a REST API in Python and want automatic type validation, multi-protocol support, and self-documenting endpoints without framework lock-in. The low dependency count and permissive license make it a lightweight choice. Verify that the project's maintenance level suits your needs—it's marked active but repository metadata is unavailable, so check the OpenDev repository directly if long-term support is critical.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.8 or later; designed for WSGI-compatible web frameworks.
  • Low install friction: pure Python wheel with only four runtime dependencies (WebOb, simplegeneric, netaddr, importlib_metadata).
  • Actively maintained as of 32 days ago and marked active.

License · maintenance · safety

MIT (permissive) — MIT license (permissive) — you can use, modify, and distribute WSME freely in commercial and private projects with minimal restrictions.

last release 2026-07-13 (32 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 106,954 downloads/mo, #12,633 on PyPI

Verify before relying

pip install WSME

from wsme import WSRoot, expose

class MyService(WSRoot):
    @expose(unicode, unicode)
    def hello(self, who=u'World'):
        return u"Hello {0} !".format(who)

ws = MyService(protocols=['restjson', 'restxml'])
application = ws.wsgiapp()
  • Whether the package is actively maintained beyond the 32-day release window (repository metadata unavailable).
  • Current community adoption and whether the framework is suitable for new projects versus legacy maintenance.
Same gist for agents: .md · .json

What it is and what it does

WSME is a REST API framework that removes boilerplate by letting you define web service methods with Python type annotations instead of manually parsing requests and serializing responses. You decorate functions with `@expose()` to declare parameter and return types, then WSME automatically handles protocol conversion, validation, and documentation. It works standalone as a WSGI application or integrates into existing frameworks like Flask or Pecan, supporting multiple protocols (REST+JSON, REST+XML) and generating Sphinx documentation from your type definitions.

The package is lightweight—just four runtime dependencies—and framework-agnostic, so you can use it with your preferred routing layer while delegating type handling and serialization to WSME. It's particularly useful when you want clean, self-documenting APIs without writing separate request/response parsing code.

Use it for

  • Build a REST API with automatic JSON and XML endpoint variants from a single typed method definition.
  • Generate Sphinx documentation for your REST API directly from your WSME type annotations and docstrings.
  • Add type validation and multi-protocol support to an existing WSGI or Flask application without rewriting routing.
  • Create a microservice that exposes the same business logic over REST+JSON and REST+XML simultaneously.
  • Prototype a REST API quickly by focusing on business logic while WSME handles serialization and validation.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you're building a REST API in Python and want automatic type validation, multi-protocol support, and self-documenting endpoints without framework lock-in.

The low dependency count and permissive license make it a lightweight choice. Verify that the project's maintenance level suits your needs—it's marked active but repository metadata is unavailable, so check the OpenDev repository directly if long-term support is critical.

Install

wsme on PyPI

Before you install

Low install friction: pure Python wheel with only four runtime dependencies (WebOb, simplegeneric, netaddr, importlib_metadata). Actively maintained as of 32 days ago and marked active.

Requires Python 3.8 or later; designed for WSGI-compatible web frameworks.

License in practice

MIT license (permissive) — you can use, modify, and distribute WSME freely in commercial and private projects with minimal restrictions.

Quickstart

pip install WSME

from wsme import WSRoot, expose

class MyService(WSRoot):
    @expose(unicode, unicode)
    def hello(self, who=u'World'):
        return u"Hello {0} !".format(who)

ws = MyService(protocols=['restjson', 'restxml'])
application = ws.wsgiapp()

Verify before relying

  • Whether the package is actively maintained beyond the 32-day release window (repository metadata unavailable).
  • Current community adoption and whether the framework is suitable for new projects versus legacy maintenance.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
WebObsimplegenericnetaddrimportlib_metadata
MaintenanceActively maintained 32 days since the last release
First released
Downloads106,954 / month, #12,633 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 3 - AlphaLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyTopic :: Internet :: WWW/HTTP :: WSGITopic :: Software Development :: Libraries :: Python Modules

Evidence: wsme-0.13.0-py3-none-any.whl

Tags

Capabilities
REST API framework with type hintsweb service type validationWSGI REST frameworkautomatic request response serializationmulti-protocol web serviceREST API documentation generationframework-agnostic web service library
Topics
rest-apiwsgitype-validation

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 › “web service type validation”

  • WSMEWSME simplifies REST API development by letting you define web…
  • corniceCornice provides decorators and utilities to build REST web services…
  • fastapiFastAPI is a Python web framework for building REST APIs using type…

Give your agent the search over MCP, or paste the wish link into any chat.

More Python Modules packages

idna Worth it
PyPI · Python Modules · released Jun 2026

Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.

Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.

BSD-3-Clausepure Python · 3.9+
1.8Bdownloads / mo
setuptools Worth it
PyPI · Python Modules · released Aug 2026

Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.

MITpure Python · 3.10+
1.6Bdownloads / mo
PyYAML Worth it
PyPI · Python Modules · released Sep 2025

PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.

MITcompiled wheel · 3.8+
1.2Bdownloads / mo
pydantic Worth it
PyPI · Python Modules · released May 2026

Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.

MITpure Python · 3.9+
1.1Bdownloads / mo
annotated-types Worth it
PyPI · Python Modules · released Jul 2026

Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.

Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…

MITpure Python · 3.10+
871.3Mdownloads / mo
typing-inspection Worth it
PyPI · Python Modules · released Aug 2026

Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.

MITpure Python · 3.10+
783.0Mdownloads / mo

See also Flask · microversion-parse · oslo.versionedobjects · asyauth · oslo.service · spyne · oslo.middleware · pyramid · msrest · WTForms-Components