1. Conduid
  2. Developer Tools
  3. Jetty.io
MCP server · Developer Tools

Jetty.io

Work on dataset metadata with MLCommons Croissant validation and creation.

Unclaimed MIT last commit 7 months ago devtools
52Fair

Scored 5 days ago · breakdown

About Jetty.io

Jetty.io is an MCP server published by jettyio in the Developer Tools category: work on dataset metadata with MLCommons Croissant validation and creation.

The repository has 7 stars and 2 forks, with the last commit 7 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/jettyio/mlcbakery

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Jetty.io

Powered by Claude · Grounded in docs

I know everything about Jetty.io. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 6 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

Releases

0.1.30.1.3 · 29 May 2025Full Changelog: https://github.com/jettyio/mlcbakery/compare/0.1.2...0.1.3
0.1.20.1.2 · 29 May 2025Full Changelog: https://github.com/jettyio/mlcbakery/compare/0.1.1...0.1.2
0.1.10.1.1 · 29 May 2025What's Changed mutable authorization by @jlebensold in https://github.com/jettyio/mlcbakery/pull/2 Storage support with GCP buckets by @jlebensold in https://github.com/jettyio/mlcbakery/pull/3 linting by @jlebensold in…

README

MLC Bakery

A Python-based service for managing ML model provenance and lineage, built with FastAPI and SQLAlchemy. Support for Croissant metadata validation.

Features

  • Dataset management with collection support
  • Entity tracking
  • Activity logging
  • Provenance relationships tracking
  • RESTful API endpoints

Running with Docker

  1. Set up Environment Variables: Create a .env file in the project root by copying the example:

    cp env.example .env
    
  2. Start docker containers: The bakery relies on a postgres database and Typesense for search. The MCP server makes REST calls to the API server, which then calls the persistence layer.

    docker compose up -d
    
  3. Run Database Migrations: Apply the latest database schema using Alembic. uv run executes commands within the project's managed environment.

    docker compose exec db psql -U postgres -c "create DATABASE mlcbakery;"
    docker compose exec api alembic upgrade head
    

Access the bakery

By default, the API will be available on localhost.

  • Swagger UI: http://bakery.localhost/docs
  • ReDoc: http://bakery.localhost/redoc
  • Streamable MCP HTTP: http://mcp.localhost/mcp (you may need to add this to your /etc/hosts for local development)

Running the Server (Locally)

Prerequisites

  • Python 3.12+
  • uv (Python package manager)

Development steps

  1. Clone the repository:

    git clone git@github.com:jettyio/mlcbakery.git
    cd mlcbakery
    
  2. Install Dependencies: uv uses pyproject.toml to manage dependencies. It will automatically create a virtual environment if one doesn't exist.

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    pip install poetry uvicorn
    uv run poetry install --no-interaction --no-ansi --no-root --with mcp
    

Start the FastAPI application using uvicorn:

# Make sure your .env file is present for the DATABASE_URL
uv run uvicorn mlcbakery.main:app --reload --host 0.0.0.0 --port 8000

Authentication

The Bakery is setup to authenticate requests with two methods: JWT Tokens and a "Master Admin Token". Both are configured in the ENV variables (.env file). Both JWT tokens and the Master Admin Token should be provided as "Bearer" Authorization header values.

  • ADMIN_AUTH_TOKEN: A fixed value that is the token a user would need to provide to have admin permissions (unrestricted access to all resources).
  • JWT_VERIFICATION_STRATEGY: The URL of a trusted JWT token issuer, such as Clerk. We have a development instance of Clerk running that you can use. You can sign up for an account via flows.jetty.io (alpha), or contact dev@jetty.io for access to Jetty's Cloud.

Running Tests

The tests are configured to run against a PostgreSQL database defined by the DATABASE_URL environment variable. You can use the same database as your development environment or configure a separate test database in your .env file if preferred (adjust connection string as needed).

# Ensure DATABASE_URL is set in your environment or .env file
uv run pytest

README fetched from the repository 6 days ago. The original is authoritative.

Questions

About Jetty.io

How do I install Jetty.io?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Jetty.io safe to use with an AI agent?

Its trust score is 52 out of 100 (fair). It passes 5 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Jetty.io still maintained?

The last commit was 7 months ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.