MCPInstall
simple-python-mcp logo

simple-python-mcp

by htondro 2 stars htondro/simple-python-mcp

Simple MCP Chatbot A Python-based chatbot that utilizes Anthropic's Claude API and integrates the Model Control Protocol (MCP).

READMEmain

Model Context Protocol (MCP) Implementation

Python Version License: MIT Code style: black

A robust implementation of the Model Context Protocol (MCP) that enables AI models to interact with external tools and services through a standardized protocol.

Installation • Usage • How It Works • Contributing

🌟 Features

  • 🚀 Implementation of the Model Context Protocol (MCP)
  • 🤖 Integration with Anthropic's Claude AI model
  • 🛠️ Tool execution system with JSON-RPC communication
  • 🔐 Environment variable configuration for API keys
  • ⏰ Example tool implementation (get_current_time)

📋 Prerequisites

  • Python 3.11 or higher
  • Anthropic API key
  • pip (Python package installer)

🚀 Installation

  1. Clone the repository:
git clone <your-repository-url>
cd <repository-name>
  1. Install the required dependencies:
pip install -r requirements.txt
  1. Create a .env file in the root directory and add your Anthropic API key:
ANTHROPIC_API_KEY=your_api_key_here

📁 Project Structure

.
├── chatbot.py          # Main client implementation
├── mcp_server.py      # Server implementation
├── requirements.txt   # Python dependencies
└── .env              # API key configuration (not in repo)

💻 Usage

  1. Start the chatbot:
python chatbot.py
  1. Interact with the chatbot in the terminal:
    • Ask questions that might require tool usage
    • Type "exit" to quit the program

📝 Example Interaction

User: What time is it?
Assistant: Let me check the current time for you.
Found 1 tool calls
Tool get_current_time result: 2024-03-26 15:30:45
Assistant: The current time is 2024-03-26 15:30:45.

🔧 How It Works

  1. The MCPClient class manages communication with the MCP server using JSON-RPC
  2. When a user sends a message, it's processed by Claude
  3. If Claude determines a tool is needed, it makes a tool call
  4. The tool call is executed by the MCP server
  5. The result is sent back to Claude for final response generation

🔒 Security

  • 🔑 API keys are stored in .env file and not committed to the repository
  • 🚫 The .env file is included in .gitignore to prevent accidental commits

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Anthropic for the Claude AI model
  • The Model Context Protocol specification

More AI Chatbot MCP servers

Similar servers from the same category.

Jentic

jentic

Enables AI assistants to discover and execute external APIs and workflows through a Python SDK that leverages the Open Agentic Knowledge repository for standardized API access and execution.

AI Chatbot

Provides a bridge to the Flyworks AI lipsync service, enabling creation of digital avatar videos synchronized with audio inputs through a simple API.

git

Official JavaScript implementation that integrates with MiniMax's multimodal capabilities for image generation, video creation, text-to-speech, and voice cloning across multiple transport modes.

APIVideo+7

Provides a bridge to Mureka.ai's music generation capabilities, enabling on-demand creation of lyrics, complete songs, and instrumental tracks without requiring specialized music production knowledge.

AI Chatbot