# Crank Crank is a self-hosted platform for turning REST API endpoints into MCP tools. The product provides a web UI for describing an upstream REST endpoint, testing it, publishing it as a tool, and exposing it to MCP clients through an agent-scoped endpoint. ## What Crank Does - Creates REST tools from the web UI or YAML. - Maps MCP input into REST path, query, headers, or JSON body. - Maps REST responses into structured tool output. - Publishes selected tools through a specific agent. - Issues static API keys for MCP clients. - Stores operations, versions, samples, secrets, logs, and usage in PostgreSQL. - Runs with Docker Compose. ## Community Scope This repository contains the Community version: - one workspace; - one admin user; - unlimited agents; - REST protocol; - MCP Streamable HTTP; - static agent API keys; - PostgreSQL database; - optional Valkey or Redis for temporary coordination state. ## Documentation The main documentation is currently maintained in Russian: - [Documentation index](../README.md) - [Introduction](../intro.md) - [Installation](../installation.md) - [Quickstart](../quickstart.md) - [MCP interface](../mcp-interface.md) - [Admin API](../admin-api.md) - [Runtime configuration](../runtime-config.md) - [Troubleshooting](../troubleshooting.md) ## License GNU Affero General Public License v3.0 only