Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

elizaOS MCP Plugin (Python)

A Python implementation of the Model Context Protocol (MCP) client for elizaOS agents.

Installation

pip install elizaos-plugin-mcp

Features

  • Stdio Transport: Connect to MCP servers via stdio (subprocess)
  • HTTP/SSE Transport: Connect to MCP servers via HTTP/SSE
  • Tool Calling: Execute tools from connected MCP servers
  • Resource Reading: Read resources from MCP servers
  • Strong Typing: Full type hints with Pydantic models
  • Fail-Fast Validation: Strict validation with no error swallowing

Usage

import asyncio
from elizaos_plugin_mcp import McpClient, StdioTransport, StdioServerConfig

async def main():
    # Create a stdio transport config
    config = StdioServerConfig(
        command="npx",
        args=["-y", "@modelcontextprotocol/server-memory"]
    )

    async with StdioTransport(config) as transport:
        client = McpClient(transport)
        await client.connect()

        # List available tools
        tools = await client.list_tools()
        for tool in tools:
            print(f"Tool: {tool.name} - {tool.description}")

        # Call a tool
        result = await client.call_tool(
            name="store_memory",
            arguments={"key": "greeting", "value": "Hello, World!"}
        )
        print(f"Result: {result}")

asyncio.run(main())

Configuration

Stdio Transport

from elizaos_plugin_mcp import StdioServerConfig

config = StdioServerConfig(
    command="npx",
    args=["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"],
    env={"NODE_ENV": "production"},
    cwd="/working/dir",
    timeout_ms=60000
)

HTTP/SSE Transport

from elizaos_plugin_mcp import HttpServerConfig

config = HttpServerConfig(
    url="https://mcp-server.example.com/sse",
    timeout_ms=30000
)

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Type checking
mypy elizaos_plugin_mcp

# Linting
ruff check .
ruff format .

License

MIT License - see LICENSE file for details.

Metadata

Release files for elizaos-plugin-mcp 2.0.0a5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for elizaos-plugin-mcp 2.0.0a5
File Size Uploaded
elizaos_plugin_mcp-2.0.0a5.tar.gz 13.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for elizaos-plugin-mcp 2.0.0a5
File Interpreter ABI Platform
elizaos_plugin_mcp-2.0.0a5-py3-none-any.whl Python 3 none any Details

Total release size: 28.4 kB

Release files / elizaos_plugin_mcp-2.0.0a5.tar.gz

Download URL elizaos_plugin_mcp-2.0.0a5.tar.gz
Size 13.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a1a7a3592eec9322e8c28ffdffdc4d3072c1390404726a4335d1b3ef3815a686
BLAKE2b-256 checksum
How to use checksums
33e19090bf2bcfaddd9fe679cc669f0aefc5caa906d6ed42467237335bbbe55e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / elizaos_plugin_mcp-2.0.0a5-py3-none-any.whl

Download URL elizaos_plugin_mcp-2.0.0a5-py3-none-any.whl
Size 14.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d8f9c2dd7398c7c0229d7c42a0c8b3d67b20f6f1a00b5e82b840a79b72cc783b
BLAKE2b-256 checksum
How to use checksums
9eba7e35a4cc254d30f7cd1d498ad882aa19fa0a41ab45b4ac096d5a9de3562b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

2.0.0a5 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page