Skip to main content

Simplified MCP client wrapper for efficient server interactions

Project description

plug_mcp: The Missing Connector for AI

plug_mcp is a Python library that provides a simple and efficient way to connect your applications to AI models using the Multi-purpose Cooperative Protocol (MCP). It acts as a wrapper around the mcp library, offering a streamlined client interface for seamless integration with various AI providers and transport protocols.

PyPI version License: MIT

✨ Features

  • Simplified Client Interface: A high-level MCPClient for easy interaction with MCP servers.
  • Multi-provider Support: Out-of-the-box support for Anthropic and OpenAI models.
  • Flexible Transports: Connect to servers using STDIO, SSE, or Streamable HTTP.
  • Built-in Guardrails: Protect your application with content filtering, PII masking, and injection detection.
  • Conversation Management: Easily manage conversation history, context, and persistence.
  • Asynchronous by Design: Built with asyncio for high-performance, non-blocking I/O.
  • Extensible: Easily add new LLM providers, transports, or guardrails.

🚀 Getting Started

Installation

pip install plug_mcp

Quick Start

Here's a simple example of how to use plug_mcp to connect to an MCP server and interact with an AI model:

import asyncio
from plug_mcp.client import MCPClient

async def main():
    # Connect to a local server using STDIO
    client = MCPClient(llm_provider="anthropic")
    await client.connect("python examples/simple_server/main.py")

    # Start a conversation
    conversation_id = client.start_conversation()
    print(f"Started conversation: {conversation_id}")

    # Send a message and get a response
    response = await client.query("Hello, world!")
    print(f"AI: {response}")

    # Disconnect from the server
    await client.disconnect()

if __name__ == "__main__":
    asyncio.run(main())

📚 Documentation

For more detailed information and advanced usage, please refer to the examples directory.

  • Simple Client: A great starting point for understanding the basic usage of plug_mcp.
  • Simple Server: A simple MCP server implementation.

🗺️ Roadmap

  • Add support for more LLM providers.
  • Implement a more comprehensive test suite.
  • Add more examples and tutorials.
  • Improve documentation and type hinting.

🤝 Contributing

Contributions are welcome! If you'd like to contribute to plug_mcp, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and add tests.
  4. Ensure that the tests pass.
  5. Submit a pull request with a clear description of your changes.

📄 License

plug_mcp is licensed under the MIT License.

⚠️ Disclaimer

This project is under active development and may undergo significant changes.

Code of Conduct

We are committed to providing a welcoming and inclusive environment for everyone. Please read and follow our Code of Conduct.

🛡️ Security

If you discover a security vulnerability, please report it to us by emailing 2796gaurav@gmail.com. We will address all reports promptly.

🌟 Showcase

Have you built something cool with plug_mcp? Written an article or created a video? We'd love to see it! Please open a pull request to add your project to this list.

💬 Support

If you have questions or need help, please open an issue in the issue tracker.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plug_mcp-0.1.1.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plug_mcp-0.1.1-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file plug_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: plug_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for plug_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 49201f021fb4463b3889ac25375523b0d6afa4a1d9130ff7f8bfc855c6b74028
MD5 210e349e5826640ded0916fa8bf0aa5b
BLAKE2b-256 4883e473b64ca2f9e7e96400a0b8b96dfdb581f1eebb5809a6b30abd0fb8179c

See more details on using hashes here.

File details

Details for the file plug_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: plug_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for plug_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fa65d98bf8563ecb1b3ca8dd7b8f964abbda16406e5415e9da636eb4cc4ff1ec
MD5 70d594baa28ec4df20de1dc4c582d9af
BLAKE2b-256 2f480585f6bafd75ca08c1da1a59b509328690d60adff2e38c4f35cf9f9fec85

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page