abap-mcp-server
Servidor MCP local leve escrito em Python. Ele expõe as ferramentas ABAP MCP das ferramentas ABAP AI para que possam ser usadas por meio de um cliente compatível com MCP.
Documentação
abap-mcp-server
Ferramentas de IA ABAP - Servidor MCP ABAP
Este repositório contém um servidor MCP leve escrito em Python. Ele expõe as ferramentas MCP ABAP das ferramentas de IA ABAP para que possam ser usadas por meio de um cliente compatível com MCP.
Arquitetura
sequenceDiagram
participant C as MCP Client (Codex, Copilot, ...)
participant S as ABAP MCP Server (Python)
participant F as MCP Function (Python)
participant I as SAP ICF Service
participant A as ABAP AI tools MCP
participant SAP as SAP System
C->>S: Tool Request
S->>F: Invoke Tool
F->>I: HTTP Request
I->>A: Route Request
A->>SAP: Execute ABAP Logic
SAP-->>A: Response
A-->>I: Response
I-->>F: HTTP Response
F-->>S: Tool Response
S-->>C: MCP Response
Ferramentas Disponíveis
Gerenciamento do Dicionário ABAP (DDIC)
-
Domínios
- Ler, pesquisar, criar, atualizar domínios
- Gerenciar traduções para valores fixos de domínio
-
Elementos de Dados
- Ler, pesquisar, criar, atualizar elementos de dados com tipos integrados ou referências de domínio
- Gerenciar traduções para rótulos de elementos de dados
-
Estruturas
- Ler, pesquisar, criar, atualizar estruturas
-
Tabelas
- Ler, pesquisar, criar, atualizar tabelas transparentes
-
Tipos de Tabela
- Ler, pesquisar, criar, atualizar tipos de tabela
-
Visões CDS
- Ler, pesquisar, criar, atualizar, excluir visões CDS
Ferramentas SQL
- SQL
- Executar instruções SELECT, INSERT, UPDATE e DELETE no sistema SAP
Codificação ABAP
-
Classe ABAP
- Ler, pesquisar, criar, atualizar, verificar, ativar classes ABAP
-
Interface ABAP
- Ler, pesquisar, criar, atualizar, verificar, ativar interfaces ABAP
-
Grupo de Funções ABAP
- Ler, pesquisar, criar, atualizar, verificar, ativar grupos de funções ABAP
-
Módulo de Função ABAP
- Ler, pesquisar, criar, atualizar, verificar, ativar módulos de função ABAP
-
Programa e Include ABAP
- Ler, pesquisar, criar, atualizar, verificar, ativar programas e includes ABAP
Gerenciamento de Transporte
- Solicitações de Transporte
- Criar solicitações de workbench e customizing
- Pesquisar e ler detalhes de solicitações de transporte
- Liberar solicitações de transporte
Mensagens e Classes de Mensagem
-
Classes de Mensagem
- Ler, criar, atualizar classes de mensagem
-
Mensagens
- Ler, criar, atualizar, traduzir, excluir mensagens
Ativação em Massa ABAP
- Ativação em Massa ABAP
- Ativação em massa de objetos passando uma lista de objetos ou uma solicitação de transporte
Instalação
Pré-requisitos
O sistema ABAP deve ter os seguintes pacotes instalados:
- Ferramentas de IA ABAP
- Ferramentas de IA ABAP - Function Calling
- Ferramentas de IA ABAP - Ferramentas MCP
graph RL
A[ABAP AI tools - Function Calling] --> B[ABAP AI tools]
C[ABAP AI tools - MCP tools] --> A[ABAP AI tools - Function Calling]
C[ABAP AI tools - MCP tools] --> B[ABAP AI tools]
D[abap-mcp-server] --> C[ABAP AI tools - MCP tools]
Você também precisa de um ambiente Python funcional que possa instalar os pacotes de requirements.txt.
Etapas de Instalação
- Clone o repositório:
git clone https://github.com/christianjianelli/yaai_mcp.git
cd abap-mcp-server
- Crie e ative um ambiente virtual:
python -m venv .venv
No Windows:
.venv\Scripts\activate
No macOS/Linux:
source .venv/bin/activate
- Instale as dependências Python:
pip install -r requirements.txt
- Crie um arquivo
.envna raiz do projeto e configure a conexão com seu backend ABAP:
BASE_URL=https://vhcalnplci.dummy.nodomain:44300/sap/yaai/
SAP_USERNAME=<your-username>
SAP_PASSWORD=<your-password>
BASE_URL é usado como prefixo para os endpoints individuais das ferramentas MCP. Atualize o host (https://vhcalnplci.dummy.nodomain) e a porta (44300) para corresponder ao seu servidor ABAP.
- Configure seu servidor MCP local no Github Copilot no Eclipse
Nota: O servidor executa via stdio, portanto, deve ser iniciado pelo cliente MCP.
Clique no botão Configurar Ferramentas na janela de chat do Copilot ou clique no menu Copilot -> Editar Preferências -> encontre a seção Servidores MCP.
Edite o arquivo JSON do servidor MCP conforme mostrado no exemplo abaixo. Altere o caminho do diretório no array args para a pasta no seu computador onde o arquivo main.py está localizado.
{
"servers": {
"abap-mcp-server": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"D:\\Python\\abap-mcp-server",
"run",
"main.py"
]
}
}
}
Após concluir a configuração, peça ao Copilot para listar as ferramentas às quais ele tem acesso
ou peça ao Copilot para usar uma das ferramentas