An MCP (Model Context Protocol) server for the Redakto App API, providing tools for named entity recognition and pseudonymization of German text.
For integration with Claude Desktop or other MCP-compatible clients, add this to mcp servers related configuration file (e.g. claude_desktop_config.json):
{
"mcpServers": {
"Redakto": {
"command": "npx",
"args": ["-y", "@sksdotsauravs/redakto-app-mcp-server"],
"env": {
"REDAKTO_API_URL": "https://redakto.demo.calgo-lab.de"
}
}
}
}-
Configure Claude Desktop to use this MCP server:
- Open Claude Desktop
- Click the menu icon (three horizontal lines) in the top left
- Click File → Settings...
- Go to Developer → Edit Config
- Add the following to your
claude_desktop_config.json:
{ "mcpServers": { "Redakto": { "command": "npx", "args": ["-y", "@sksdotsauravs/redakto-app-mcp-server"], "env": { "REDAKTO_API_URL": "https://redakto.demo.calgo-lab.de" } } } } -
Restart Claude Desktop
-
In a new conversation, enable the MCP server by clicking the "Search and tools" icon and selecting "Redakto" and also view the list of available tools.
-
Now you can ask Claude to process German text, such as:
- "Detect private entities in this following text: [German text]"
- "Extract all locations mentioned in this German article: [German text]"
- "Extract all person names from this German document: [German text]"
- "Generate 3 pseudonymized variants of this sensitive text: [German text]"
This MCP server allows large language models (like Claude) to access the Redakto API for German text processing. When integrated with an LLM, it enables the model to:
- Detect named entities (persons, dates, locations, etc.) in German text
- Generate pseudonymized versions of sensitive text
- Support multiple NER models and entity sets
- Process text with fine-grained or coarse entity classification
- Returns available entity sets for processing
- No parameters required
- Returns supported NER and NER-PG models for a specific entity set
- [GET] Query Parameters:
entity_set_id(required): The entity set identifier
- Returns detailed information about an entity set
- [GET] Query Parameters:
entity_set_id(required): The entity set identifier
- Returns detailed information about a specific model
- [GET] Query Parameters:
entity_set_id(required): The entity set identifiermodel_id(required): The model identifier
- Detects named entities in German text
- [POST] Request Body Parameters:
entity_set_id(required): The entity set to usemodel_id(required): The NER model to usefine_grained(required): Enable fine-grained entity classificationinput_texts(required): Array of German text strings to process
- Detects named entities and generates pseudonymized versions
- [POST] Request Body Parameters:
entity_set_id(required): The entity set to usemodel_id(required): The NER model to usefine_grained(required): Enable fine-grained entity classificationinput_texts(required): Array of German text strings to processrepeat_count(optional): Number of pseudonymized variants to generate (default: 1)
- Node.js ≥ 20
- Access to a Redakto API instance
REDAKTO_API_URLenvironment variable set
-
Clone this repository:
git clone https://github.com/calgo-lab/redakto-app-mcp-server.git cd redakto-app-mcp-server -
Install dependencies:
npm install
-
Lint the project:
npm run lint
-
Build the project:
npm run build
-
Run integration tests:
npm testThis will test all available tools against the Redakto API.
- Initial release with full entity detection and pseudonymization support
- Support for multiple NER models and entity sets
- Integration with Claude and MCP-compatible clients
This project is licensed under the MIT License - see the LICENSE file for details.