1. Conduid
  2. Documentation
  3. MCP
MCP server · Documentation

MCP

orval is able to generate client with appropriate type-signatures (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats. 🍺

64Good

Scored 4 hours ago · breakdown

About MCP

MCP is an MCP server published by orval-labs in the Documentation category: orval is able to generate client with appropriate type-signatures (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats. 🍺.

The repository has 6.5K stars and 696 forks, with the last commit 12 hours ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/orval-labs/orval

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 MCP

Powered by Claude · Grounded in docs

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

Security checks

Static checks derived from the repository 3 hours 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.

1 check has not been run yet.

Releases

v8.43.0Release v8.43.0 · 14 Oct 2026What's Changed fix(orval): resolve mutator paths through tsconfig paths aliases by @melloware in https://github.com/orval-labs/orval/pull/4301 feat(angular): add observeOverloads option to emit body-only signatures by @melloware in…
v8.42.0Release v8.42.0 · 13 Oct 2026What's Changed fix(orval): default missing response descriptions instead of failing validation by @melloware in https://github.com/orval-labs/orval/pull/4272 fix(mcp): use the spec info.version for the McpServer version by @soartec-lab in…
v8.41.0Release v8.41.0 · 8 Oct 2026What's Changed refactor(core): drop unused seenMockIndexKeys in tags writers by @irontaek in https://github.com/orval-labs/orval/pull/4254 fix(effect): drop non-primitive enum members and serialize via toJsLiteral (GHSA-f96w-763g-hg7v) by…
v8.40.0Release v8.40.0 · 4 Oct 2026What's Changed fix(core): stringify empty objects as `{}` by @melloware in https://github.com/orval-labs/orval/pull/4245 feat(query): prefetch through queryClient.query() on TanStack Query 5.102+ by @iamAdarshh in…
v8.39.0Release v8.39.0 · 30 Sep 2026What's Changed fix(samples): give swr-with-zod reusable zod schemas their own directory by @melloware in https://github.com/orval-labs/orval/pull/4219 refactor(core): type isFunction without any, as remeda did by @wadakatu in…

README

npm version NPM Downloads Gurubase pkg.pr.new

Code Generation

orval generates type-safe JS clients (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats.

[!IMPORTANT] Version 8.0.0+ comes with a lot of improvements and changes please see the Migration Guide

Supported clients

generate models, requests, hooks, mocks and more, for these supported clients:

Samples

You can find some samples below:

Playground

Try Orval out for yourself using our Playground application!

Docker

Orval 8+ requires Node.js 22.18 or newer. Projects on an older Node LTS can run code generation with the official Docker image.

Basic usage

# macOS / Linux
docker run --rm -v "$(pwd):/app" -w /app ghcr.io/orval-labs/orval

# Windows Git Bash
MSYS_NO_PATHCONV=1 docker run --rm -v "$(pwd):/app" -w /app ghcr.io/orval-labs/orval

# Windows CMD
cd /d "C:\path\to\your-project"
docker run --rm -v "%cd%:/app" -w /app ghcr.io/orval-labs/orval

# Windows PowerShell
cd "C:\path\to\your-project"
docker run --rm -v "${PWD}:/app" -w /app ghcr.io/orval-labs/orval

Local API (localhost → host.docker.internal)

# macOS / Linux
docker run --rm -v "$(pwd):/app" -w /app -e ORVAL_SWAGGER_URL="https://host.docker.internal:7142/swagger/v1/swagger.json" -e NODE_TLS_REJECT_UNAUTHORIZED=0 ghcr.io/orval-labs/orval --config ./orval.config.ts

# Linux (native Docker)
docker run --rm --add-host=host.docker.internal:host-gateway -v "$(pwd):/app" -w /app -e ORVAL_SWAGGER_URL="https://host.docker.internal:7142/swagger/v1/swagger.json" -e NODE_TLS_REJECT_UNAUTHORIZED=0 ghcr.io/orval-labs/orval --config ./orval.config.ts

# Windows Git Bash
MSYS_NO_PATHCONV=1 docker run --rm -v "$(pwd):/app" -w /app -e ORVAL_SWAGGER_URL="https://host.docker.internal:7142/swagger/v1/swagger.json" -e NODE_TLS_REJECT_UNAUTHORIZED=0 ghcr.io/orval-labs/orval --config ./orval.config.ts

# Windows CMD
cd /d "C:\path\to\your-project"
docker run --rm -v "%cd%:/app" -w /app -e "ORVAL_SWAGGER_URL=https://host.docker.internal:7142/swagger/v1/swagger.json" -e "NODE_TLS_REJECT_UNAUTHORIZED=0" ghcr.io/orval-labs/orval --config ./orval.config.ts

# Windows PowerShell
cd "C:\path\to\your-project"
docker run --rm -v "${PWD}:/app" -w /app -e ORVAL_SWAGGER_URL="https://host.docker.internal:7142/swagger/v1/swagger.json" -e NODE_TLS_REJECT_UNAUTHORIZED=0 ghcr.io/orval-labs/orval --config ./orval.config.ts

Replace ghcr.io/orval-labs/orval with orval:local when testing locally before the official image is published. See the installation docs for details.

A note about AI

First of all, we do not reject the use of AI agents outright. That said, please do not submit AI-generated output in a PR without reviewing it yourself. Every change must have a clear intent and purpose — do not submit changes you cannot explain in your own words. Making the effort to understand orval's codebase, TypeScript, and API clients beforehand, and reviewing what AI produces, is the contributor's responsibility, not the reviewer's. Finally, we will continue to welcome new contributors and actively support you through review and iteration.

See CONTRIBUTING.md for details.

Developers

This project uses Bun for package management and building. Bun install guide.

Build Scripts

  • vp run nuke:all - Completely clean your workspace by removing all build artifacts, node_modules, and cached files. Use this when you want to start fresh.

  • vp run build - Build the project and make changes available to the workspace. Run this after making code changes to compile TypeScript and prepare the project for use.

  • vp run typecheck - Run TypeScript type checking across all packages.

Test Scripts

  • vp run test - Run unit tests in all packages.

  • vp run update-samples - Generate sample outputs using the newly built version of Orval. This regenerates the sample code based on the current build.

  • vp run test:samples - Run tests in the samples directory using the newly generated output from update-samples.

  • vp run test:snapshots - Run snapshot tests to verify generated sample outputs match the committed snapshots. Fails if any generated file differs from its snapshot.

  • vp run test:snapshots:update - Regenerate snapshot files to match the current generated output. Run this after vp run update-samples when the generated output has intentionally changed.

  • vp run test:cli - Test that the generated output (not samples) is valid TypeScript. This validates the TypeScript compilation of the generated code.

Development Workflow

A typical development workflow would be:

  1. Make your code changes
  2. Run vp run build to compile your changes
  3. Run vp run typecheck to verify package typings
  4. Run vp run lint to catch lint issues early
  5. Run vp run test to run unit tests in packages
  6. Run vp run test:snapshots to verify generated output matches snapshots

If step 6 fails because the generated output has intentionally changed, run vp run test:snapshots:update to update the snapshots.

If you encounter issues or want to start completely fresh:

  1. Run vp run nuke:all to clean everything
  2. Reinstall dependencies and rebuild from scratch

Sponsors

Thank you to all our sponsors! 🍻

Support orval development by Open Collective and your logo will be displayed here with a link to your website.

Backers

Thank you to all our backers! 🙏

Support us with a one-time donation and help us continue our activities on Open Collective.

Note: After becoming a sponsor or backer, please contact us on Discord to upload your logo.

All Thanks To Our Contributors:

README fetched from the repository 3 hours ago. The original is authoritative.

Questions

About MCP

How do I install MCP?

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

Is MCP safe to use with an AI agent?

Its trust score is 64 out of 100 (good). It passes 5 of the 5 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is MCP still maintained?

Yes — the latest release is v8.43.0 (14 Oct 2026), and the last commit was 12 hours ago. The repository has 6.5K stars and 17 open issues.