Skip to main content
Glama
conanfile.py4.41 kB
#!/usr/bin/env python3 """ Conan recipe for MCP Project Orchestrator. This recipe packages the core MCP Project Orchestrator with Agent Skills integration and comprehensive project management capabilities. """ from conan import ConanFile from conan.tools.files import copy, get from conan.tools.python import PythonToolchain, PythonRequire import os class MCPProjectOrchestratorConan(ConanFile): name = "mcp-project-orchestrator" version = "0.2.0" description = "MCP Project Orchestrator with Agent Skills Integration" license = "MIT" url = "https://github.com/sparesparrow/mcp-project-orchestrator" homepage = "https://github.com/sparesparrow/mcp-project-orchestrator" topics = ("mcp", "orchestration", "agent-skills", "project-management", "automation") settings = "os", "arch", "compiler", "build_type" options = { "fips_enabled": [True, False], "aws_integration": [True, False], "cursor_integration": [True, False], } default_options = { "fips_enabled": True, "aws_integration": True, "cursor_integration": True, } exports_sources = "src/*", "templates/*", "configs/*", "scripts/*", "docs/*", "*.py", "*.json", "*.md" def requirements(self): self.requires("python/3.11") self.requires("fastapi/0.104.1") self.requires("uvicorn/0.24.0") self.requires("pydantic/2.5.0") self.requires("jinja2/3.1.2") self.requires("pyyaml/6.0.1") self.requires("rich/13.7.0") self.requires("typer/0.9.0") self.requires("httpx/0.25.2") self.requires("aiofiles/23.2.1") if self.options.fips_enabled: self.requires("cryptography/41.0.7") self.requires("pycryptodome/3.19.0") if self.options.aws_integration: self.requires("boto3/1.34.0") self.requires("botocore/1.34.0") if self.options.cursor_integration: self.requires("pydantic-settings/2.1.0") self.requires("click/8.1.7") def build_requirements(self): self.tool_requires("pytest/7.4.3") self.tool_requires("pytest-asyncio/0.21.1") self.tool_requires("pytest-cov/4.1.0") self.tool_requires("mypy/1.7.1") self.tool_requires("ruff/0.1.6") def generate(self): tc = PythonToolchain(self) tc.generate() def package(self): # Copy Python source files copy(self, "src/*", dst=os.path.join(self.package_folder, "src"), src=self.source_folder) # Copy templates copy(self, "templates/*", dst=os.path.join(self.package_folder, "templates"), src=self.source_folder) # Copy configurations copy(self, "configs/*", dst=os.path.join(self.package_folder, "configs"), src=self.source_folder) # Copy scripts copy(self, "scripts/*", dst=os.path.join(self.package_folder, "scripts"), src=self.source_folder) # Copy documentation copy(self, "docs/*", dst=os.path.join(self.package_folder, "docs"), src=self.source_folder) # Copy Python files copy(self, "*.py", dst=os.path.join(self.package_folder, "src"), src=self.source_folder) # Copy JSON files copy(self, "*.json", dst=os.path.join(self.package_folder, "configs"), src=self.source_folder) # Copy markdown files copy(self, "*.md", dst=os.path.join(self.package_folder, "docs"), src=self.source_folder) def package_info(self): self.cpp_info.bindirs = ["src", "templates", "configs", "scripts", "docs"] # Python package info self.env_info.PYTHONPATH.append(os.path.join(self.package_folder, "src")) self.env_info.MCP_TEMPLATES_PATH = os.path.join(self.package_folder, "templates") self.env_info.MCP_CONFIGS_PATH = os.path.join(self.package_folder, "configs") self.env_info.MCP_SCRIPTS_PATH = os.path.join(self.package_folder, "scripts") # Feature-specific environment variables if self.options.fips_enabled: self.env_info.FIPS_ENABLED = "1" if self.options.aws_integration: self.env_info.AWS_INTEGRATION = "1" if self.options.cursor_integration: self.env_info.CURSOR_INTEGRATION = "1"

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sparesparrow/mcp-project-orchestrator'

If you have feedback or need assistance with the MCP directory API, please join our Discord server