
pychatter
🤖 Chat your way to code - build software using nothing but English enabled by mcp
Repository Info
About This Server
🤖 Chat your way to code - build software using nothing but English enabled by mcp
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Pychatter - Gemini CLI Chat Application with MCP Tools
A Python CLI application that interacts with Google's Gemini API with support for Model Context Protocol (MCP) tools. It supports both interactive chat mode and one-off commands, with the ability to call external tools for enhanced functionality.
Features
- Interactive chat mode with colored prompts and tool calling
- One-off prompt mode via command line
- MCP (Model Context Protocol) integration for external tool support
- File system operations via MCP filesystem server
- Web fetching capabilities via MCP fetch server
- Automatic tool discovery and integration with Gemini function calling
- Proper error handling with loguru
- Type-safe code with pydantic models
- Modern Python 3.12+ with type annotations
- JSON-based configuration system
Requirements
- Python 3.12+
- Node.js (for MCP servers)
- Package manager of your choice (pip, poetry, rye, etc.)
Getting started
- Clone this repository
- Setup config (see below).
- Install Python dependencies:
rye sync - Start interactive session
rye run pychatter
Configuration
Create a config.json file in the project root with your settings:
{
"gemini_api_key": "your_api_key_here",
"gemini_api_url": "https://generativelanguage.googleapis.com/v1",
"gemini_model": "gemini-1.5-flash",
"log_level": "INFO",
"mcp_servers": [
{
"name": "filesystem",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/your/allowed/directory",
"/another/allowed/directory"
]
},
{
"name": "fetch",
"command": "/path/to/uvx",
"args": ["mcp-server-fetch"]
}
]
}
Configuration Options
- gemini_api_key: Your Google Gemini API key (required)
- gemini_api_url: Gemini API base URL (optional, defaults to Google's API)
- gemini_model: Model to use (optional, defaults to "gemini-1.5-flash")
- log_level: Logging level (optional, defaults to "INFO")
- mcp_servers: List of MCP servers to start (optional)
MCP Server Configuration
Each MCP server in the mcp_servers array should specify:
- name: Unique identifier for the server
- command: Command to start the server
- args: Command line arguments for the server
Usage
Interactive Mode
Run in interactive mode with MCP tools:
rye run pychatter
One-off Commands
Send a single prompt:
rye run pychatter -m "Read my config.json file"
Read prompt from a file:
rye run pychatter -f path_to_file
Running Tests
rye test
License
MIT License
Quick Start
Clone the repository
git clone https://github.com/lukrecjajestbe/pychatterInstall dependencies
cd pychatter
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.