JAEGIS AI Web OS MCP Server - Advanced Model Context Protocol server with filesystem, git, project management, and AI integration tools
Project description
🤖 JAEGIS MCP Server (Python)
Python wrapper for the JAEGIS AI Web OS MCP Server - Advanced Model Context Protocol server providing comprehensive filesystem, git, project management, and AI integration tools for AI assistants and development workflows.
🚀 Quick Start
Installation
# Install from PyPI
pip install jaegis-mcp-server
# Or install with development dependencies
pip install jaegis-mcp-server[dev]
Prerequisites
The Python package requires Node.js 18+ to run the underlying MCP server:
# Check if Node.js is installed
node --version
# If not installed, download from: https://nodejs.org/
# Or install via package manager:
# macOS (Homebrew)
brew install node
# Ubuntu/Debian
sudo apt update && sudo apt install nodejs npm
# Windows (Chocolatey)
choco install nodejs
Basic Usage
# Start the MCP server
jaegis-mcp-server
# Start with debug logging
jaegis-mcp-server --debug
# Check system status
jaegis-mcp-server status
# Install Node.js dependencies (if needed)
jaegis-mcp-server install
🛠️ Available Tools
The JAEGIS MCP Server provides 40+ powerful tools across four main categories:
📁 Filesystem Tools (10 tools)
read_file- Read file contents with encoding detectionwrite_file- Write files with automatic directory creationlist_directory- List directory contents with filteringcreate_directory- Create directories recursivelydelete_file- Delete files and directories safelymove_file- Move/rename files and directoriescopy_file- Copy files and directoriesget_file_info- Get detailed file metadatasearch_files- Search files by name, content, or patternwatch_directory- Monitor directory changes in real-time
🔧 Git Tools (10 tools)
git_status- Get repository status and changesgit_log- View commit history with filteringgit_diff- Show differences between commits/filesgit_add- Stage files for commitgit_commit- Create commits with validationgit_push- Push changes to remote repositoriesgit_pull- Pull changes from remote repositoriesgit_branch- Manage branches (create, delete, switch)git_merge- Merge branches with conflict detectiongit_clone- Clone repositories with progress tracking
📋 Project Management Tools (10 tools)
create_project- Initialize new projects with templatesanalyze_project- Analyze project structure and dependenciesgenerate_docs- Generate project documentationrun_tests- Execute test suites with reportingbuild_project- Build projects with multiple targetsdeploy_project- Deploy to various platformsmanage_dependencies- Install, update, remove dependenciesscaffold_component- Generate code componentsvalidate_config- Validate configuration filesoptimize_project- Optimize project performance
🤖 AI Integration Tools (10 tools)
ai_code_review- Automated code review and suggestionsai_generate_code- Generate code from natural languageai_explain_code- Explain complex code sectionsai_optimize_code- Suggest code optimizationsai_generate_tests- Generate unit tests automaticallyai_documentation- Generate documentation from codeai_refactor- Suggest refactoring improvementsai_debug_help- Debug assistance and error analysisai_translate_code- Translate between programming languagesai_security_scan- Security vulnerability analysis
⚙️ Configuration
MCP Client Configuration
Claude Desktop
Add to your Claude Desktop configuration file (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"jaegis": {
"command": "python",
"args": ["-m", "jaegis_mcp_server"],
"env": {
"JAEGIS_MCP_DEBUG": "false"
}
}
}
}
Augment
Configure in your Augment settings:
{
"mcp": {
"servers": [
{
"name": "jaegis",
"command": "jaegis-mcp-server",
"args": ["--debug"],
"cwd": "/path/to/your/project"
}
]
}
}
Server Configuration
Create a configuration file (mcp-config.json):
{
"server": {
"name": "jaegis-mcp-server",
"version": "1.0.0",
"debug": false
},
"tools": {
"filesystem": {
"enabled": true,
"maxFileSize": "10MB",
"allowedExtensions": ["*"],
"restrictedPaths": ["/etc", "/sys"]
},
"git": {
"enabled": true,
"autoCommit": false,
"defaultBranch": "main"
},
"project": {
"enabled": true,
"templatesPath": "./templates",
"defaultFramework": "python"
},
"ai": {
"enabled": true,
"provider": "openai",
"model": "gpt-4",
"maxTokens": 4000
}
},
"security": {
"allowFileOperations": true,
"allowGitOperations": true,
"allowNetworkAccess": false,
"sandboxMode": false
}
}
🔧 Command Line Interface
Main Commands
# Start the MCP server (default command)
jaegis-mcp-server
# Check system status and dependencies
jaegis-mcp-server status
# Install Node.js dependencies
jaegis-mcp-server install
# Show system information
jaegis-mcp-server info
# Show version
jaegis-mcp-server --version
Server Options
jaegis-mcp-server [OPTIONS]
Options:
--debug Enable debug logging
--config PATH Configuration file path
--port NUMBER Port number (default: auto)
--host ADDRESS Host address (default: localhost)
--stdio Use stdio transport (default)
--sse Use Server-Sent Events transport
--websocket Use WebSocket transport
Environment Variables:
JAEGIS_MCP_PORT Default port number
JAEGIS_MCP_HOST Default host address
JAEGIS_MCP_DEBUG Enable debug mode (true/false)
JAEGIS_MCP_CONFIG Default configuration file path
📚 Python API Usage
Programmatic Usage
from jaegis_mcp_server import MCPServer, MCPClient
import asyncio
async def main():
# Start the MCP server
server = MCPServer(debug=True)
await server.start()
# Connect a client
client = MCPClient()
await client.connect()
# Use filesystem tools
content = await client.call_tool("read_file", {
"path": "./example.txt"
})
# Use git tools
status = await client.call_tool("git_status", {
"path": "./my-project"
})
# Use AI tools
review = await client.call_tool("ai_code_review", {
"files": ["src/main.py"],
"focus": ["performance", "security"]
})
# Cleanup
await client.disconnect()
await server.stop()
# Run the example
asyncio.run(main())
Context Manager Usage
from jaegis_mcp_server import MCPServer
import asyncio
async def main():
async with MCPServer(debug=True) as server:
# Server is automatically started and stopped
async with server.client() as client:
# Perform operations
result = await client.call_tool("list_directory", {
"path": "./",
"recursive": True
})
print(f"Found {len(result['files'])} files")
asyncio.run(main())
🔍 Troubleshooting
Common Issues
Node.js Not Found
# Check if Node.js is installed
node --version
# If not found, install Node.js
# Visit: https://nodejs.org/
# Verify installation
jaegis-mcp-server status
Permission Errors
# On Unix systems, ensure proper permissions
chmod +x $(which jaegis-mcp-server)
# Or install in user directory
pip install --user jaegis-mcp-server
Server Won't Start
# Check dependencies
jaegis-mcp-server status
# Install Node.js dependencies
jaegis-mcp-server install
# Run with debug logging
jaegis-mcp-server --debug
Connection Issues
# Test server connectivity
jaegis-mcp-server --debug --stdio
# Check firewall settings
# Ensure configured port is accessible
Debug Mode
Enable comprehensive debugging:
# Command line
jaegis-mcp-server --debug
# Environment variable
export JAEGIS_MCP_DEBUG=true
jaegis-mcp-server
# Python code
from jaegis_mcp_server import MCPServer
server = MCPServer(debug=True)
System Information
Get detailed system information for troubleshooting:
# Text format
jaegis-mcp-server info
# JSON format
jaegis-mcp-server info --format json
🔄 Cross-Platform Compatibility
The Python package works seamlessly across platforms:
- Windows: Full support with automatic Node.js detection
- macOS: Native support with Homebrew integration
- Linux: Complete compatibility with all major distributions
- Docker: Container-ready with multi-stage builds
Docker Usage
FROM python:3.11-slim
# Install Node.js
RUN apt-get update && apt-get install -y nodejs npm
# Install JAEGIS MCP Server
RUN pip install jaegis-mcp-server
# Start the server
CMD ["jaegis-mcp-server"]
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Setup
# Clone the repository
git clone https://github.com/jaegis/jaegis-mcp-server.git
cd jaegis-mcp-server
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install in development mode
pip install -e ".[dev]"
# Install Node.js dependencies
npm install
# Run tests
pytest
# Run linting
black . && flake8 . && mypy .
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🔗 Links
- GitHub: jaegis/jaegis-mcp-server
- PyPI Package: jaegis-mcp-server
- NPM Package: jaegis-mcp-server
- Documentation: docs.jaegis.ai
- Issues: GitHub Issues
- Support: support@jaegis.ai
🙏 Acknowledgments
- Anthropic for the Model Context Protocol specification
- OpenAI for AI integration capabilities
- The Python and Node.js communities for excellent tooling
- The open-source community for inspiration and contributions
Made with ❤️ by the JAEGIS Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file manus_jaegis_mcp_server-1.0.0-py3-none-any.whl.
File metadata
- Download URL: manus_jaegis_mcp_server-1.0.0-py3-none-any.whl
- Upload date:
- Size: 26.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca599abdf2b6f2ccb47c3cf71349564236d85dac4a89c144492dd179fee491b8
|
|
| MD5 |
ff7dcc2b7f9de3c9313af7c0fe21ffd0
|
|
| BLAKE2b-256 |
fcccd42ff69326f068d17a57749a627dc4606c4af8735673d120ceba3ff442cf
|