Skip to content

Implementação de Model Context Protocol (MCP) para orquestração de LLM (Gemini) via FastMCP (Python)

reidn3r/model-context-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Model Context Protocol

Sistema de processamento de linguagem natural que integra LLM (Gemini 2.5 Flash) com recursos externos via Model Context Protocol (MCP) para execução de tarefas.

🚀 Funcionalidades Principais

Categoria Funcionalidades
📐 Cálculos Geométricos Área de quadrado (lado), Área de círculo (raio)
🏙️ Integração com IBGE Busca de código IBGE, Normalização de nomes de cidades
🤖 Assistência Inteligente Identificação de parâmetros faltantes, Guia de uso das funções

🏗️ Arquitetura do Sistema

sequenceDiagram
    participant HOST as HOST<br/>(API Client/UX)
    participant API as API Gateway<br/>(FastAPI)
    participant LLM as LLM Engine<br/>(Gemini 2.5 Flash)
    participant CLIENT as MCP Server
    participant SERVER as Resource Layer

    HOST->>API: POST /query {prompt}
    API->>LLM: Forward query
    LLM->>LLM: Analyze & identify resources
    LLM->>CLIENT: MCP Request
    CLIENT->>SERVER: Execute operation
    SERVER-->>CLIENT: Return data
    CLIENT-->>LLM: MCP Response
    LLM->>LLM: Process & generate response
    LLM-->>API: Formatted response
    API-->>HOST: Final answer
Loading

🛠️ Stack Técnica

Componente Tecnologia
Backend FastAPI (Python)
LLM Google Gemini 2.5 Flash
Protocol Model Context Protocol (FastMCP)
Comunicação REST API + FastMCP Calls

📡 Endpoint Principal

POST /query
Content-Type: application/json

{
  "prompt": "Sua consulta aqui"
}

⚙️ Configuração

GEMINI_MODEL=gemini-2.5-flash
GEMINI_API_KEY=sua-api-key
IBGE_API=https://servicodados.ibge.gov.br/api/v1

🚀 Execução

uvicorn src.main:app --reload

About

Implementação de Model Context Protocol (MCP) para orquestração de LLM (Gemini) via FastMCP (Python)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages