Skip to main content
Glama

Personal MCP Server

by pablicio
quick_test.py5.2 kB
#!/usr/bin/env python3 """ 🧪 Teste Rápido - MCP Server Pessoal Valida configuração básica e módulos principais. """ import sys from pathlib import Path # Adicionar diretório raiz ao path sys.path.insert(0, str(Path(__file__).parent.parent)) def test_imports(): """Testa se todas as importações funcionam.""" print("📦 Testando importações...") try: from config.settings import settings from core.server import MCPPersonalServer from modules.filesystem.tools import FilesystemTools from modules.tasks.tools import TasksTools print("✅ Todas as importações OK") return True except Exception as e: print(f"❌ Erro nas importações: {e}") return False def test_settings(): """Testa se as configurações estão corretas.""" print("\n⚙️ Testando configurações...") try: from config.settings import settings print(f" Host: {settings.HOST}") print(f" Port: {settings.PORT}") print(f" Debug: {settings.DEBUG}") print(f" Log Level: {settings.LOG_LEVEL}") allowed_dirs = settings.get_allowed_directories() print(f" Diretórios permitidos: {len(allowed_dirs)}") for d in allowed_dirs: print(f" - {d}") if not allowed_dirs: print("⚠️ Nenhum diretório permitido configurado!") print(" Configure ALLOWED_DIRECTORIES no arquivo .env") print("✅ Configurações OK") return True except Exception as e: print(f"❌ Erro nas configurações: {e}") return False def test_modules(): """Testa disponibilidade dos módulos.""" print("\n🔧 Testando módulos...") try: import asyncio from modules.filesystem.tools import FilesystemTools from modules.tasks.tools import TasksTools async def check_modules(): results = {} # Filesystem fs = FilesystemTools() results['filesystem'] = await fs.is_available() # Tasks tasks = TasksTools() results['tasks'] = await tasks.is_available() return results results = asyncio.run(check_modules()) for module, available in results.items(): status = "✅" if available else "❌" print(f" {status} {module}: {'disponível' if available else 'indisponível'}") all_ok = all(results.values()) if all_ok: print("✅ Todos os módulos OK") else: print("⚠️ Alguns módulos não estão disponíveis") return all_ok except Exception as e: print(f"❌ Erro ao testar módulos: {e}") return False def test_server_init(): """Testa inicialização do servidor.""" print("\n🚀 Testando servidor...") try: import asyncio from core.server import MCPPersonalServer async def init_server(): server = MCPPersonalServer() await server.initialize() status = server.get_status() return status status = asyncio.run(init_server()) print(f" Status: {status['status']}") print(f" Módulos carregados: {len(status['modules'])}") print(f" Ferramentas: {status['tools_count']}") for module_name, module_status in status['modules'].items(): init_status = "✅" if module_status['initialized'] else "❌" print(f" {init_status} {module_name}") print("✅ Servidor OK") return True except Exception as e: print(f"❌ Erro ao testar servidor: {e}") import traceback traceback.print_exc() return False def main(): """Executa todos os testes.""" print("="*60) print("🧪 TESTE RÁPIDO - MCP SERVER PESSOAL") print("="*60) results = { "Importações": test_imports(), "Configurações": test_settings(), "Módulos": test_modules(), "Servidor": test_server_init() } print("\n" + "="*60) print("📊 RESUMO DOS TESTES") print("="*60) for test_name, passed in results.items(): status = "✅ PASSOU" if passed else "❌ FALHOU" print(f"{status}: {test_name}") all_passed = all(results.values()) print("\n" + "="*60) if all_passed: print("✅ TODOS OS TESTES PASSARAM!") print("\n💡 Próximos passos:") print(" 1. Execute: python main.py") print(" 2. Reinicie o Claude Desktop") print(" 3. Teste no Claude: 'Liste arquivos em Documents'") else: print("❌ ALGUNS TESTES FALHARAM") print("\n💡 Verifique:") print(" 1. Arquivo .env está configurado?") print(" 2. Dependências instaladas? pip install -r requirements.txt") print(" 3. Python 3.9+? python --version") print("="*60) return 0 if all_passed else 1 if __name__ == "__main__": sys.exit(main())

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/pablicio/my-mcp'

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