Skip to main content

Fênix Cloud MCP server implemented in Python

Project description

Allye MCP

Allye MCP Server
Python MCP server for Allye Cloud API integration

PyPI Python License codecov

Quick StartInstallationConfigurationStructureTesting


Overview

Allye MCP connects MCP-compatible clients (Claude Code, Cursor, Windsurf, VS Code, etc.) directly to the Allye Cloud APIs. Every tool invocation hits the live backend—no outdated snapshots or hallucinated IDs.

Available Tools:

  • knowledge — Documentation CRUD, work items, modes, rules
  • productivity — TODO management
  • intelligence — Memories and smart operations
  • user_config — User configuration documents
  • initialize — Personalized setup
  • health — Backend health check

Quick Start

pipx install allye-mcp                    # Install
allye-mcp --pat <your-token>              # Run (STDIO mode)

Requirements

Requirement Version
Python 3.10+
Allye PAT Token Required
MCP Client Claude Code, Cursor, Windsurf, VS Code, etc.

Installation

With pipx (recommended)

pipx install allye-mcp

With pip

pip install --user allye-mcp

Upgrade

pipx upgrade allye-mcp
# or
pip install --upgrade allye-mcp

Configuration

MCP Client Setup

Claude Code — ~/.claude/config.toml
[mcp_servers.allye]
command = "allye-mcp"
args = ["--pat", "your-token"]
Cursor — ~/.cursor/mcp.json
{
  "mcpServers": {
    "allye": {
      "command": "allye-mcp",
      "args": ["--pat", "your-token"],
      "disabled": false
    }
  }
}
VS Code / Windsurf — settings.json
{
  "modelContextProtocol.mcpServers": {
    "allye": {
      "command": "allye-mcp",
      "args": ["--pat", "your-token"]
    }
  }
}

Environment Variables
Variable Description Default
ALLYE_API_URL Allye Cloud API base URL https://allye-api.devshire.app
ALLYE_PAT_TOKEN Token (alternative to --pat) empty
ALLYE_TRANSPORT_MODE stdio, http, or both stdio
ALLYE_HTTP_HOST HTTP transport host 127.0.0.1
ALLYE_HTTP_PORT HTTP transport port 5003
ALLYE_LOG_LEVEL Log level (DEBUG, INFO, etc.) INFO

See .env.example for reference.

HTTP Transport
export ALLYE_TRANSPORT_MODE=http
export ALLYE_HTTP_PORT=5003
allye-mcp --pat <your-token>

JSON-RPC endpoint: http://127.0.0.1:5003/jsonrpc

Run both STDIO and HTTP:

export ALLYE_TRANSPORT_MODE=both
allye-mcp --pat <your-token>

Project Structure

allye-mcp-py/
├── allye_mcp/                  # Main package
│   ├── main.py                 # Entry point (CLI)
│   ├── application/            # Use cases and services
│   ├── domain/                 # Business entities
│   ├── infrastructure/         # External integrations (API, transport)
│   └── interface/              # MCP protocol handlers
├── tests/                      # Test suite
├── docs/                       # Documentation
├── pyproject.toml              # Project configuration
└── .env.example                # Environment template
allye_mcp/ — Package Structure
Directory Responsibility
main.py CLI entry point, argument parsing, server bootstrap
application/ Use cases, handlers for each MCP tool
domain/ Business entities, DTOs, validation
infrastructure/ API client, HTTP transport, logging
interface/ MCP protocol implementation, tool registration

Architecture

MCP Client → interface/ → application/ → infrastructure/ → Allye API
                              ↓
                          domain/
                        (entities)

Tech Stack

Layer Technology
Runtime Python 3.10+
Validation Pydantic 2
HTTP aiohttp, requests
Config pydantic-settings
Testing pytest, pytest-asyncio
Linting flake8, black, mypy

Development

Setup

# Clone and install
git clone <repo>
cd allye-mcp-py
pip install -e .[dev]

Scripts

Command Description
pytest Run tests
pytest --cov=allye_mcp Run with coverage
black allye_mcp/ tests/ Format code
flake8 allye_mcp/ tests/ Lint
mypy allye_mcp/ Type check

Commit Convention

Follow Conventional Commits:

Prefix Description Version Bump
fix: Bug fixes Patch
feat: New features Minor
BREAKING CHANGE: Breaking changes Major
chore: Maintenance None
docs: Documentation None

CI/CD

Platform Usage
GitHub Actions Tests, lint, build on push/PR to main
Semantic Release Auto-version based on commits
PyPI Package distribution

Troubleshooting

command not found: allye-mcp

Add scripts directory to PATH:

# macOS/Linux
export PATH="$PATH:~/.local/bin"

# Windows
# Add %APPDATA%\Python\Python311\Scripts to PATH
401 Unauthorized
  1. Check --pat or ALLYE_PAT_TOKEN is set correctly
  2. Regenerate token in Allye Cloud if expired
Run HTTP and STDIO simultaneously
export ALLYE_TRANSPORT_MODE=both
allye-mcp --pat <your-token>

Security

  • Store tokens securely (keychain, pass, .env)
  • Never commit secrets to git
  • Revoke tokens when no longer needed
  • Use pipx to isolate from global Python

Useful Links

Resource URL
PyPI https://pypi.org/project/allye-mcp/
Allye Cloud https://allye.devshire.app
MCP Protocol https://modelcontextprotocol.io

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

allye_mcp-1.1.2.tar.gz (73.0 kB view details)

Uploaded Source

Built Distribution

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

allye_mcp-1.1.2-py3-none-any.whl (103.2 kB view details)

Uploaded Python 3

File details

Details for the file allye_mcp-1.1.2.tar.gz.

File metadata

  • Download URL: allye_mcp-1.1.2.tar.gz
  • Upload date:
  • Size: 73.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for allye_mcp-1.1.2.tar.gz
Algorithm Hash digest
SHA256 685884d1de43ae3287366d733a368a8de8c9c1a8037e621aade2c618e8b096ae
MD5 78dc52672c28ddd4798e756b0b8c38f0
BLAKE2b-256 250f681ce7fa9ca037f469cec6f8dba22bbba4238f7e85590547139eab6d8d33

See more details on using hashes here.

File details

Details for the file allye_mcp-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: allye_mcp-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 103.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for allye_mcp-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2457e923a555b9aca3fb20b9474c43cf190db9cf2f81084a36a3798716b174d0
MD5 b8ad4adaa945598d946ccff2643f8aca
BLAKE2b-256 fcb9305382fdea07f96bc22da47d627e9a9e815f21f1893e22a1fe1b60cbfcbb

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