Skip to main content

USOS Model Context Protocol (MCP) Server

A standardized Model Context Protocol (MCP) server that bridges the official USOS API (Uniwersytecki System Obsługi Studiów) with generative AI clients (such as Claude Code, Claude Desktop, Cursor, and web-based assistants via tunnels).

This server allows students of Polish universities to query their schedules, track academic grades, monitor ECTS accumulation, search for lecturer contact data, and review study programs through natural language conversations.


Usage with MCP Clients (e.g., Cursor, Claude desktop)

You can connect this server to any MCP-compatible client like Cursor.

Authenticating with USOS

Use the authenticate_me prompt to guide the user through the interactive OAuth setup. It should be run one step at a time, waiting for the user's response before continuing. Alternatively, the user can call the login tool directly. Once authentication is complete, credentials are saved securely to local file storage (typically ~/.config/usos-mcp/store/auth/credentials.json) so they do not need to be supplied as environment variables in later runs.

If you have uv installed, you can use uvx to fetch and run the package dynamically without manual installation:

{
  "mcpServers": {
    "usos": {
      "command": "uvx",
      "args": [
        "--from",
        "usos-mcp",
        "server"
      ]
    }
  }
}

Option B: Running via Docker

If you prefer not to install Python/uv locally, you can use the Docker image. The -i flag is required for MCP to communicate over standard input/output.

{
  "mcpServers": {
    "usos": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/skalskidaniel/usos-mcp:latest"
      ]
    }
  }
}

Contributing

Contributions are welcome! This server is built with a modular registry pattern that makes adding new USOS API integrations simple.

See CONTRIBUTING.md for a guide on how to add your own tools, prompts, and resources.

Metadata

Release files for usos-mcp 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for usos-mcp 0.4.0
File Size Uploaded Provenance Actions
usos_mcp-0.4.0.tar.gz 41.4 kB Without provenance Details for usos_mcp-0.4.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for usos-mcp 0.4.0
File Interpreter ABI Platform Actions
usos_mcp-0.4.0-py3-none-any.whl Python 3 none any Details for usos_mcp-0.4.0-py3-none-any.whl

Total release size: 85.5 kB

Release files / usos_mcp-0.4.0.tar.gz

Download URL usos_mcp-0.4.0.tar.gz
Size 41.4 kB
Tags Source
SHA-256 checksum
How to use checksums
93cd67e9c3e42e6daa817f7827300dac319d6ba0d714c7c4eac1a6cc0988c712
BLAKE2b-256 checksum
How to use checksums
2d13cd1961dff33a04d5c28e19ea2768a37caca37383884f99bd7ff08503fd71
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / usos_mcp-0.4.0-py3-none-any.whl

Download URL usos_mcp-0.4.0-py3-none-any.whl
Size 44.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c39aac7ea9531b6b0c1a42003387bce3f23cde0820596597e3dc5f74fc5ac1c8
BLAKE2b-256 checksum
How to use checksums
8f7b8c552f1abd7af6ba98bf37110540d9d13aedd0a2d8fe9e74bd6f502cb946
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for usos-mcp 0.4.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page