import json import gradio as gr from textblob import TextBlob def sentiment_analysis(text: str): """ Analyze the sentiment of the given text using the TextBlob library. Args: text (str): The text to analyze. Returns: str: A JSON string containing the polarity, subjectivity, and assessment of the text. """ blob = TextBlob(text) sentiment = blob.sentiment result = { 'polarity': sentiment.polarity, 'subjectivity': sentiment.subjectivity, 'assessment': 'positive' if sentiment.polarity > 0 else 'negative' if sentiment.polarity < 0 else 'neutral' } return json.dumps(result) # create the gradio interface demo = gr.Interface( fn=sentiment_analysis, inputs=gr.Textbox(placeholder="Enter text to analyze"), outputs=gr.Textbox(label="Sentiment Analysis"), title="Text Sentiment Analysis", description="Analyze the sentiment of text using the TextBlob library." ) # launch the gradio interface and MCP server demo.launch(mcp_server=True)