1. Conduid
  2. RAG
  3. AI Spring MCP Server
MCP server · RAG

AI Spring MCP Server

Projeto de estudo que implementa um MCP Server com Spring AI, permitindo criar ferramentas personalizadas que interagem com LLMs por meio do protocolo MCP.

Unclaimed rag
34Low

Scored 6 months ago · breakdown

About AI Spring MCP Server

AI Spring MCP Server is an MCP server in the RAG category: projeto de estudo que implementa um MCP Server com Spring AI, permitindo criar ferramentas personalizadas que interagem com LLMs por meio do protocolo MCP.

Install

From source
git clone https://github.com/moises-paschoalick/ai-spring-mcp-server

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about AI Spring MCP Server

Powered by Claude · Grounded in docs

I know everything about AI Spring MCP Server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Spring AI MCP Server - Projeto de Estudo

Este é um projeto de estudo excelente para aprender como criar um MCP (Model Context Protocol) Server usando Spring AI. O projeto foi desenvolvido seguindo o curso do Dan Vega e demonstra como integrar ferramentas customizadas com modelos de IA através do protocolo MCP.

🎯 Sobre o Projeto

Este projeto implementa um servidor MCP simples que expõe ferramentas para gerenciar cursos. É um exemplo prático de como:

  • Criar um servidor MCP usando Spring AI
  • Definir ferramentas (tools) customizadas
  • Integrar com modelos de IA através do protocolo MCP
  • Configurar um servidor sem interface web (STDIO transport)

🏗️ Arquitetura do Projeto

Estrutura de Arquivos

src/main/java/com/gotocode/courses/
├── CoursesApplication.java    # Classe principal da aplicação
├── CourseService.java         # Serviço com as ferramentas MCP
└── Course.java               # Modelo de dados (Record)

Componentes Principais

  1. CoursesApplication: Classe principal que configura o servidor MCP
  2. CourseService: Serviço que expõe as ferramentas MCP para gerenciar cursos
  3. Course: Record que representa um curso com título e URL

🛠️ Tecnologias Utilizadas

  • Java 24
  • Spring Boot 3.4.5
  • Spring AI 1.0.0-M8
  • Maven

📋 Pré-requisitos

Antes de executar o projeto, certifique-se de ter instalado:

  • Java 24 ou superior
  • Maven 3.6+ ou superior

Verificando as Instalações

# Verificar versão do Java
java -version

# Verificar versão do Maven
mvn -version

🚀 Como Executar o Projeto

1. Clone o Repositório

git clone https://github.com/moises-paschoalick/spring-ai-mcp-server.git
cd spring-ai-mcp-server

2. Compile o Projeto

mvn clean compile

3. Execute o Servidor MCP

mvn spring-boot:run

4. Alternativa: Executar via JAR

# Compilar o JAR
mvn clean package

# Executar o JAR
java -jar target/courses-0.0.1-SNAPSHOT.jar

🔧 Configuração

O projeto está configurado para rodar como um servidor MCP através do arquivo application.properties:

spring.application.name=courses
spring.main.web-application-type=none
spring.ai.mcp.server.name=dan-vega-mcp
spring.ai.mcp.server.version=0.0.1
spring.main.banner-mode=off
logging.pattern.console=

Configurações Importantes:

  • spring.main.web-application-type=none: Desabilita o servidor HTTP
  • spring.ai.mcp.server.name: Define o nome do servidor MCP
  • spring.main.banner-mode=off: Desabilita o banner do Spring Boot
  • logging.pattern.console=: Remove logs do console para permitir STDIO transport

🛠️ Ferramentas MCP Disponíveis

O servidor expõe duas ferramentas principais:

1. dv_get_courses

  • Descrição: Obtém a lista de todos os cursos disponíveis
  • Retorno: Lista de cursos

2. dv_get_course

  • Descrição: Obtém um curso específico pelo título
  • Parâmetros: title (String) - Título do curso
  • Retorno: Curso específico ou null se não encontrado

📝 Exemplo de Uso

Estrutura de Dados

public record Course(String title, String url) {
}

Dados de Exemplo

O serviço é inicializado com alguns cursos de exemplo:

courses.addAll(List.of(
    new Course("Título do vídeo 01", "https://www.urlvideo01"),
    new Course("Título do vídeo 02", "https://www.urlvideo02")
));

🔍 Como Funciona

  1. Inicialização: O servidor MCP é iniciado sem interface web
  2. Registro de Ferramentas: O CourseService é registrado como ferramentas MCP
  3. Comunicação STDIO: O servidor se comunica via entrada/saída padrão
  4. Integração com IA: Modelos de IA podem usar as ferramentas através do protocolo MCP

🎓 Aprendizados do Projeto

Este projeto demonstra:

  • Como criar ferramentas customizadas com Spring AI
  • Configuração de servidor MCP sem interface web
  • Uso de anotações @Tool para expor métodos como ferramentas
  • Integração com protocolo MCP para comunicação com modelos de IA
  • Estrutura básica de um servidor MCP funcional

🤝 Contribuindo

Este é um projeto de estudo, mas contribuições são bem-vindas! Para contribuir:

  1. Faça um fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/AmazingFeature)
  3. Commit suas mudanças (git commit -m 'Add some AmazingFeature')
  4. Push para a branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

📚 Recursos Adicionais

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


Desenvolvido como projeto de estudo baseado no curso do Dan Vega 🚀

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About AI Spring MCP Server

How do I install AI Spring MCP Server?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is AI Spring MCP Server safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is AI Spring MCP Server still maintained?

Conduid hasn't recorded a commit date for this repository yet. Check the repository directly for recent activity.