MCP (Model Context Protocol)

Utsuho provides a Model Context Protocol (MCP) server that exposes its text conversion utilities as tools.

This allows Utsuho to be integrated with MCP-compatible clients such as AI agents, editors, and developer tools.

Overview

The MCP server wraps Utsuho's deterministic text conversion functions and makes them available as independent tools.

All conversions are:

  • deterministic

  • character-level

  • context-independent

This makes Utsuho suitable for preprocessing and normalization tasks in AI workflows.

Installation

Install Utsuho with the mcp extra:

pip install "Utsuho[mcp]"

Running the Server

Start the MCP server using:

utsuho-mcp

The server runs over stdio.

Available Tools

The following tools are provided.

half_to_full

Convert half-width text to full-width text.

Input

text: str
punctuation: bool = True
corner_brucket: bool = True
conjunction_mark: bool = True
length_mark: bool = True
space: bool = True
ascii_symbol: bool = True
ascii_digit: bool = True
ascii_alphabet: bool = True

Output

str

full_to_half

Convert full-width text to half-width text.

Input

text: str
punctuation: bool = True
corner_brucket: bool = True
conjunction_mark: bool = True
length_mark: bool = True
space: bool = True
ascii_symbol: bool = True
ascii_digit: bool = True
ascii_alphabet: bool = True
wave_dash: bool = False

Output

str

hiragana_to_katakana

Convert hiragana to katakana.

Input

text: str

Output

str

katakana_to_hiragana

Convert katakana to hiragana.

Input

text: str

Output

str

Design Notes

  • Each tool corresponds directly to a converter class in Utsuho.

  • The kana-conversion tools accept only text.

  • The width-conversion tools expose the same boolean options as WidthConverterConfig.

  • No context or state is maintained between calls.

Use Cases

Typical use cases include:

  • Normalizing Japanese text before indexing or search

  • Preprocessing user input in AI applications

  • Converting text within automated tool-based workflows

  • Ensuring consistent representation of kana and width variants

Future Enhancements

Planned improvements may include:

  • Additional normalization features (e.g., romanization)

  • Extended MCP capabilities such as resources or prompts