Most gRPC bridges assume server reflection is switched on, which in a lot of production environments it deliberately is not. Being able to hand it a `.proto` file plus the server address covers that case without asking anyone to change a deployment. The config file is the whole interface — one list of sources, mixing REST, gRPC and Connect-RPC entries, local and remote.
A schema-to-tools converter. You list your services in a config file; MCPizer discovers their schemas, converts each operation into a tool, and handles the calls with typed parameters and error handling. Nothing changes in the services themselves.
- Auto-discovery of OpenAPI and Swagger schemas from a bare service URL — a FastAPI app is found at `/openapi.json` or `/docs`, a Spring Boot service at `/v3/api-docs` — or a direct schema URL when you prefer to be explicit
- gRPC services reached through reflection, or through a `.proto` file paired with a `server` address when reflection is not enabled
- Connect-RPC services in either gRPC or HTTP/JSON mode, the latter being the easier one to debug
- Schemas fetched from GitHub with `github://` URLs, including private repositories, authenticated through the `gh` CLI
- Both transports: stdio for clients that launch it as a subprocess, and SSE over HTTP for clients that connect to a running server
Go, to install the binary: `go install github.com/i2y/mcpizer/cmd/mcpizer@latest`, with `$GOPATH/bin` on your PATH. A config file listing your services under `schema_sources`, passed with `-config` or set through `MCPIZER_CONFIG_FILE`; the default is `configs/mcpizer.yaml`. Run it as a subprocess with `-transport=stdio`. Credentials are whatever the target services require; private GitHub schemas use your existing `gh` CLI authentication rather than a separate token.
One command — go install github.com/i2y/mcpizer/cmd/mcpizer@latest
