Complete markdown documentation
This commit is contained in:
+29
-37
@@ -1,52 +1,44 @@
|
||||
# Crank
|
||||
|
||||
Crank Community is a self-hosted platform for publishing REST APIs as MCP tools.
|
||||
Crank is a self-hosted platform for turning REST API endpoints into MCP tools.
|
||||
|
||||
It lets operators describe an upstream REST endpoint, test it, publish it, and
|
||||
expose it to LLM clients through MCP without writing a custom MCP server for
|
||||
each integration.
|
||||
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.
|
||||
|
||||
## Features
|
||||
## What Crank Does
|
||||
|
||||
- REST operation creation from the web UI or YAML.
|
||||
- MCP input mapping into REST query, body, and header fields.
|
||||
- REST response mapping into structured MCP tool output.
|
||||
- Agent-scoped MCP endpoints with curated tool catalogs.
|
||||
- Operation drafts, versions, samples, mappings, logs, and usage in PostgreSQL.
|
||||
- Simple admin authentication with a bootstrap admin user.
|
||||
- PostgreSQL-backed secrets and auth profiles for upstream REST APIs.
|
||||
- Docker Compose deployment.
|
||||
- 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 only the Community feature set:
|
||||
This repository contains the Community version:
|
||||
|
||||
- REST protocol only.
|
||||
- Single self-hosted deployment.
|
||||
- Simple admin authentication.
|
||||
- Static agent API keys for MCP access.
|
||||
- PostgreSQL as the system database.
|
||||
- Optional Valkey/Redis cache for runtime coordination.
|
||||
- Gitea Actions CI/CD.
|
||||
- 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.
|
||||
|
||||
The repository is focused only on the scope listed above.
|
||||
## Documentation
|
||||
|
||||
## Architecture
|
||||
The main documentation is currently maintained in Russian:
|
||||
|
||||
Core concepts:
|
||||
|
||||
- `Workspace` is the data boundary for operations, agents, secrets, and logs.
|
||||
- `Operation` is a versioned REST integration contract.
|
||||
- `Agent` is an MCP surface that exposes a curated set of operations.
|
||||
|
||||
Runtime flow:
|
||||
|
||||
1. An operator creates or imports a REST operation.
|
||||
2. Crank validates the schema and mapping.
|
||||
3. The operator runs a test call against the upstream REST API.
|
||||
4. The operation is published.
|
||||
5. An agent exposes the published operation as an MCP tool.
|
||||
6. MCP clients call the tool through `mcp-server`.
|
||||
- [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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user