Skip to main content

Egile MCP Client

A comprehensive Model Context Protocol (MCP) client that provides two operational modes and a web interface for interacting with MCP servers.

Features

  • Two Operation Modes:
    • Direct Mode: Connect directly to MCP server tools and resources
    • Agent Mode: Use a generic AI agent that works with any MCP server
  • Multiple Interfaces:
    • Terminal CLI: Command-line interface for both modes
    • Web Chat Interface: Browser-based chatbot with conversation history
  • AI Provider Support: OpenAI, Anthropic Claude, xAI Grok, and extensible for other providers
  • Conversation History: Persistent chat history across sessions
  • Real-time Communication: WebSocket support for live interactions

Quick Start

Installation

# Install dependencies
pip install -e .

# Or using poetry
poetry install

Configuration

Create a config.yaml file:

# AI Providers (for agent mode)
ai_providers:
  openai:
    api_key: "your-openai-api-key"
    model: "gpt-4"
  anthropic:
    api_key: "your-anthropic-api-key"
    model: "claude-3-sonnet-20240229"
  xai:
    api_key: "your-xai-api-key"
    model: "grok-3"

# MCP Servers
mcp_servers:
  - name: "example_server"
    url: "http://localhost:8000"
    type: "http"
  - name: "local_server"
    command: ["python", "/path/to/server/main.py"]
    type: "stdio"

# Default settings
default_ai_provider: "openai"
web_interface:
  host: "localhost"
  port: 8080

Usage

Terminal Interface

# Direct mode - connect directly to MCP server
egile-mcp-client direct --server example_server

# Agent mode - use AI agent with MCP tools
egile-mcp-client agent --provider openai

# List available tools from a server
egile-mcp-client tools --server example_server

# Interactive chat in terminal
egile-mcp-client chat --mode agent --provider openai

Web Interface

# Start the web server
egile-mcp-client web

# Then open http://localhost:8080 in your browser

Architecture

egile-mcp-client/
├── egile_mcp_client/
│   ├── __init__.py
│   ├── cli.py              # Command-line interface
│   ├── config.py           # Configuration management
│   ├── mcp/
│   │   ├── __init__.py
│   │   ├── client.py       # MCP client implementation
│   │   ├── connection.py   # Connection management
│   │   └── protocol.py     # MCP protocol handling
│   ├── agents/
│   │   ├── __init__.py
│   │   ├── base.py         # Base agent interface
│   │   ├── openai_agent.py # OpenAI implementation
│   │   └── anthropic_agent.py # Anthropic implementation
│   ├── web/
│   │   ├── __init__.py
│   │   ├── app.py          # FastAPI web application
│   │   ├── routes.py       # API routes
│   │   ├── static/         # Static files (CSS, JS)
│   │   └── templates/      # HTML templates
│   └── utils/
│       ├── __init__.py
│       ├── history.py      # Conversation history
│       └── logging.py      # Logging utilities
├── tests/
├── config.example.yaml
└── README.md

License

MIT License

Metadata

Release files for egile-mcp-client 0.1.3

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

Source distribution (sdist)

Source distribution for egile-mcp-client 0.1.3
File Size Uploaded Provenance
egile_mcp_client-0.1.3.tar.gz 30.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for egile-mcp-client 0.1.3
File Interpreter ABI Platform
egile_mcp_client-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 68.1 kB

Release files / egile_mcp_client-0.1.3.tar.gz

Download URL egile_mcp_client-0.1.3.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
aed89265ff252eafe805846cbaa5c9c37b0356edae9ad54035f660c180272432
BLAKE2b-256 checksum
How to use checksums
f18718b49e292ac0886328b94e79f3c2f903a0772f59aa6f1551a9daf4c5a34c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / egile_mcp_client-0.1.3-py3-none-any.whl

Download URL egile_mcp_client-0.1.3-py3-none-any.whl
Size 37.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
42e4cca7c7ed1d5c7f0395a089d1252cb9855a7c19fb1ebbb7a39721a2cca578
BLAKE2b-256 checksum
How to use checksums
481ae44fb54041dac7d9202e8733a5a900fc4250875051b5784c1931a4645d04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Security for egile-mcp-client 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files No provenance

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