File tree Expand file tree Collapse file tree 1 file changed +59
-0
lines changed
Expand file tree Collapse file tree 1 file changed +59
-0
lines changed Original file line number Diff line number Diff line change 1+ """
2+ Example FastMCP server that uses Unicode characters in various places to help test
3+ Unicode handling in tools and inspectors.
4+ """
5+
6+ from mcp .server .fastmcp import FastMCP
7+
8+ mcp = FastMCP ()
9+
10+
11+ @mcp .tool (description = "🌟 A tool that uses various Unicode characters in its description: á é í ó ú ñ 漢字 🎉" )
12+ def hello_unicode (name : str = "世界" , greeting : str = "¡Hola" ) -> str :
13+ """
14+ A simple tool that demonstrates Unicode handling in:
15+ - Tool description (emojis, accents, CJK characters)
16+ - Parameter defaults (CJK characters)
17+ - Return values (Spanish punctuation, emojis)
18+ """
19+ return f"{ greeting } , { name } ! 👋"
20+
21+
22+ @mcp .tool (description = "🎨 Tool that returns a list of emoji categories" )
23+ def list_emoji_categories () -> list [str ]:
24+ """Returns a list of emoji categories with emoji examples."""
25+ return [
26+ "😀 Smileys & Emotion" ,
27+ "👋 People & Body" ,
28+ "🐶 Animals & Nature" ,
29+ "🍎 Food & Drink" ,
30+ "⚽ Activities" ,
31+ "🌍 Travel & Places" ,
32+ "💡 Objects" ,
33+ "❤️ Symbols" ,
34+ "🚩 Flags"
35+ ]
36+
37+
38+ @mcp .tool (description = "🔤 Tool that returns text in different scripts" )
39+ def multilingual_hello () -> str :
40+ """Returns hello in different scripts and writing systems."""
41+ return "\n " .join ([
42+ "English: Hello!" ,
43+ "Spanish: ¡Hola!" ,
44+ "French: Bonjour!" ,
45+ "German: Grüß Gott!" ,
46+ "Russian: Привет!" ,
47+ "Greek: Γεια σας!" ,
48+ "Hebrew: !שָׁלוֹם" ,
49+ "Arabic: !مرحبا" ,
50+ "Hindi: नमस्ते!" ,
51+ "Chinese: 你好!" ,
52+ "Japanese: こんにちは!" ,
53+ "Korean: 안녕하세요!" ,
54+ "Thai: สวัสดี!" ,
55+ ])
56+
57+
58+ if __name__ == "__main__" :
59+ mcp .run ()
You can’t perform that action at this time.
0 commit comments