Cover image
Try Now
2025-04-07

Servidor MCP para integração com a API TESS, permitindo utilizar agentes TESS via protocolo MCP

3 years

Works with Finder

1

Github Watches

0

Github Forks

0

Github Stars

CLI Integradora para Arcee, TESS e MCP

Este projeto implementa uma interface de linha de comando (CLI) que integra APIs de terceiros, incluindo Arcee AI, TESS e o SDK oficial do Model Context Protocol (@sdk-mcp). O projeto segue a estrutura Clean Architecture e os princípios do Domain-Driven Design (DDD).

Visão Geral da Integração

Esta CLI não reimplementa os serviços que integra, mas serve como uma camada de abstração que permite:

  1. Acesso unificado a múltiplos serviços (Arcee, TESS, MCP)
  2. Padronização de interfaces para facilitar o uso
  3. Adição de funcionalidades específicas à CLI sem modificar as APIs subjacentes

Arquitetura de Componentes

MCP (Model Context Protocol)

O MCP é um protocolo padronizado que facilita a comunicação entre modelos de linguagem e ferramentas externas. Este projeto utiliza o SDK oficial do MCP (@sdk-mcp) para implementar essa comunicação, sem modificar ou reimplementar o protocolo.

Servidor TESS-MCP

O servidor TESS-MCP é o componente responsável por implementar a integração entre o TESS (Tool Execution Subsystem) e o MCP. Este servidor:

  • Orquestra e gerencia ferramentas que podem ser utilizadas por modelos de IA
  • Expõe APIs para listar e executar agentes de IA
  • Gerencia upload e organização de arquivos
  • Permite interação com modelos de linguagem como o "tess-ai-light"

O TESS trabalha em conjunto com o MCP, permitindo que modelos solicitem e utilizem ferramentas de forma padronizada.

CLI (Interface de Linha de Comando)

A CLI consome as APIs do servidor TESS-MCP, Arcee AI e MCP, fornecendo uma interface unificada para o usuário final. Ela não reimplementa essas funcionalidades, apenas oferece uma forma padronizada de acessá-las.

Arcee AI

O Arcee AI é uma plataforma completa de IA que inclui:

  • Arcee Orchestra: plataforma agentic para construir fluxos de trabalho de IA
  • Arcee Conductor: roteador inteligente que seleciona o modelo mais adequado e eficiente em custo para cada prompt
  • Small Language Models (SLMs): modelos de linguagem otimizados para tarefas específicas

Para mais informações sobre TESS, consulte a documentação oficial da API TESS.

Arquitetura do Projeto

O projeto segue a Clean Architecture com as seguintes camadas:

1. Domínio

  • domain/interfaces: Interfaces que definem contratos para integração com APIs externas
  • domain/services: Serviços de domínio que orquestram as chamadas para APIs externas
  • domain/exceptions: Exceções de domínio para tratamento de erros

2. Aplicação

  • application/use_cases: Casos de uso que coordenam a lógica de negócio

3. Infraestrutura

  • infrastructure/mcp_client: Cliente que integra o SDK oficial do MCP (@sdk-mcp)
  • infrastructure/providers: Adaptadores para as APIs externas (TESS, Arcee)

4. Interface de Usuário

  • src/commands: Comandos CLI para interação com os casos de uso
  • src/adapters: Adaptadores para compatibilidade entre implementações

Arquitetura de Adaptadores

Papel dos Adaptadores

Os adaptadores no projeto são componentes arquiteturais intencionais que servem a propósitos específicos:

  1. Desacoplamento entre sistemas:

    • MCP e TESS são sistemas com responsabilidades distintas que evoluem independentemente
    • Os adaptadores permitem que essas evoluções ocorram sem quebrar a integração
  2. Tradução entre interfaces:

    • Convertem chamadas e dados entre o formato esperado por cada sistema
    • Protegem o domínio de mudanças nas APIs externas
  3. Implementação do padrão Ports & Adapters:

    • Facilitam testes unitários e simulações
    • Permitem substituir implementações sem afetar o domínio

Tipos de Adaptadores

O projeto utiliza dois tipos principais de adaptadores:

  1. Adaptadores de Infraestrutura:

    • Localização: infrastructure/providers
    • Propósito: Conectar as interfaces do domínio com APIs externas
    • Exemplo: TessApiProvider adapta a API do TESS para a interface ITessProvider do domínio
  2. Adaptadores de Compatibilidade:

    • Localização: src/adapters
    • Propósito: Manter compatibilidade com código existente enquanto usa as novas implementações
    • Exemplo: MCPRunClient adapta a nova implementação para código que ainda usa a interface antiga

Otimização de Adaptadores

Nosso foco é manter adaptadores eficientes através de:

  • Interfaces padronizadas com contratos claros
  • Minimização de conversões desnecessárias
  • Cobertura adequada de testes
  • Documentação das responsabilidades de cada adaptador

Funcionalidades da CLI

A CLI fornece acesso unificado aos seguintes serviços:

MCP e TESS

A CLI consome as APIs do servidor TESS-MCP, permitindo:

  • Listar todas as ferramentas disponíveis
  • Buscar ferramentas específicas
  • Obter detalhes de ferramentas e agentes
  • Executar ferramentas e agentes com parâmetros
  • Fazer upload de arquivos para uso com agentes

Arcee AI

A CLI permite interagir com a API do Arcee AI:

  • Gerar conteúdo com modelos de linguagem
  • Interagir através de uma interface de chat
  • Selecionar entre diferentes modelos disponíveis
  • Utilizar o roteamento inteligente do Arcee Conductor

Uso

# Ferramentas MCP (via SDK @sdk-mcp)
arcee mcp-tools listar
arcee mcp-tools buscar "processamento"
arcee mcp-tools detalhes tool1
arcee mcp-tools executar tool1 '{"param1": "valor1"}'

# Servidor TESS-MCP
arcee tess listar
arcee tess executar agent123 "Como posso otimizar este código?"

# API Arcee AI
arcee chat "Explique o conceito de Clean Architecture"
arcee generate "Escreva um código Python para ordenar uma lista"

Garantindo Compatibilidade e Evolução

O projeto usa adaptadores para permitir evolução contínua enquanto mantém compatibilidade:

# Código existente (continua funcionando)
from src.tools.mcpx_simple import MCPRunClient

client = MCPRunClient(session_id="abc123")
tools = client.get_tools()

# Código novo (implementação atual)
from infrastructure.mcp_client import MCPClient

client = MCPClient()
tools = client.list_tools()

Este modelo de adaptadores permite:

  • Evolução gradual sem quebrar código existente
  • Melhoria contínua da implementação interna
  • Facilidade de migração para novos clientes

Desenvolvimento

Para desenvolver novos recursos de integração:

  1. Defina interfaces no domínio (domain/interfaces) que espelhem as APIs externas
  2. Implemente serviços no domínio (domain/services) que orquestrem chamadas às APIs
  3. Crie casos de uso na aplicação (application/use_cases) para funcionalidades específicas
  4. Implemente clientes/adaptadores na infraestrutura (infrastructure) para comunicação com APIs externas
  5. Exponha funcionalidades via CLI (src/commands)

Este fluxo de desenvolvimento garante uma separação clara entre o código do projeto e as APIs externas integradas.

Novidades

25/03/2024

  • Novo script para interação direta com API TESS: Implementado o script tess_api_cli.py que permite listar, consultar e executar agentes TESS diretamente, sem depender do comando test_api_tess.
  • Suporte a múltiplos modelos de linguagem: O script suporta diversos modelos de linguagem, incluindo GPT-4o e Claude 3.5 Sonnet.
  • Exemplos práticos para geração de anúncios: Adicionados exemplos para cafeteria, agência de marketing digital e corretora de seguros.
  • Documentação detalhada: Criados guias de integração e dicas avançadas para otimização de anúncios Google Ads usando a API TESS.

20/03/2024

  • Interface Streamlit simplificada: Removidas as abas superiores desnecessárias, mantendo apenas "Arcee CLI" e "Ajuda".
  • Correção de bugs no adaptador TESS: Resolvidos problemas na comunicação com a API TESS.

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Yasir Eryilmaz
  • AI scriptwriting assistant for short, engaging video content.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • Daren White
  • A supportive coach for mastering all Spanish tenses.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • ariofarmani
  • Test repository for GitHub MCP server functionality

  • 1Panel-dev
  • 💬 MaxKB is an open-source AI assistant for enterprise. It seamlessly integrates RAG pipelines, supports robust workflows, and provides MCP tool-use capabilities.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • Mintplex-Labs
  • The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.

  • GLips
  • MCP server to provide Figma layout information to AI coding agents like Cursor

    Reviews

    2 (1)
    Avatar
    user_Fb3qrOi1
    2025-04-18

    The tess-mcp-server by diegofornalha is a fantastic tool for MCP applications. It’s easy to set up and incredibly efficient for server management. The documentation on GitHub is clear and helpful, making the integration smooth. For anyone in need of a reliable MCP server solution, tess-mcp-server is the way to go!