my-server-mcp

juliooidella/my-server-mcp

3.2

If you are the rightful owner of my-server-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

This document provides a comprehensive overview of the Jira MCP Server, a Model Context Protocol server designed for seamless integration with Jira, following SOLID principles.

Tools
4
Resources
0
Prompts
0

🚀 MCP Server (Jira + Discord)

Python Docker

Um servidor MCP (Model Context Protocol) para integração com Jira Cloud e Discord através do GitHub Copilot no VS Code.

📘 > Aprenda como configurar este servidor MCP e integrá-lo com o GitHub Copilot no Visual Studio Code.

📑 Índice

✨ Funcionalidades

  • 🔍 Jira: Buscar informações de issues (título e descrição).
  • ✏️ Jira: Atualizar descrições, informações técnicas e planos de testes.
  • 📢 Discord: Enviar mensagens para canais via Webhook.
  • 🤖 Integração nativa com GitHub Copilot.
  • 🐳 Suporte completo ao Docker.

🛠️ Ferramentas Disponíveis

Ferramentas Jira

FerramentaDescriçãoParâmetros
helloTeste de conexãoname
get_title_description_issueBuscar detalhes da issuekey
update_infos_issueAtualizar campos técnicoskey, info_tecnicas, desc_implementacao, plan_testes
update_descriptionAtualizar descriçãokey, description

Ferramentas Discord

FerramentaDescriçãoParâmetros
enviar_mensagem_discordEnvia mensagem via webhookmensagem
outra_ferramentaFerramenta de exemploparam

📋 Pré-requisitos

  • Visual Studio Code (v1.102+)
  • GitHub Copilot habilitado
  • Docker e Docker Compose
  • Conta Atlassian Jira Cloud
  • Webhook do Discord (opcional)

🚀 Instalação e Configuração

1. Token de API do Jira

  1. Aceda a Atlassian API Tokens.
  2. Clique em "Create API token".
  3. Nomeie o token (ex: "MCP Server - VS Code").
  4. Copie e guarde o token com segurança.

2. Configuração Rápida com Docker

# Clone o repositório
git clone [https://github.com/juliooidella/my-server-mcp.git](https://github.com/juliooidella/my-server-mcp.git)
cd my-server-mcp

# Configure as variáveis de ambiente
cp .env.example .env

Edite o ficheiro .env (certifique-se de usar MCP_PROD_TOKEN):

# Credenciais do Jira
ATLASSIAN_USERNAME=seu_email@empresa.com
ATLASSIAN_API_TOKEN=seu_token_aqui
JIRA_URL=[https://sua-empresa.atlassian.net/](https://sua-empresa.atlassian.net/)

# Integração Discord (Opcional)
DISCORD_WEBHOOK_URL=[https://discord.com/api/webhooks/](https://discord.com/api/webhooks/)...

# Segurança MCP (OBRIGATÓRIO)
MCP_PROD_TOKEN=seu_token_secreto_aqui_123456

# Configurações do Servidor
SERVER_HOST=0.0.0.0
SERVER_PORT=8015
# Inicie o servidor
docker-compose up --build -d

# Verifique se está a funcionar
curl http://localhost:8015

3. Configuração Alternativa (Python Local)

# Usando UV (recomendado)
uv sync
uv run app.py

# Ou usando Python tradicional
python -m venv venv
source venv/bin/activate  # Linux/Mac
pip install -r requirements.txt
python app.py

4. Integração com VS Code

Opção A: Configuração Global
  1. Abra a Command Palette (Ctrl+Shift+P).
  2. Digite: MCP: Add Server.
  3. Configure:
    • Server Name: jira-mcp
    • URL: http://localhost:8015
    • Scope: Global
Opção B: Configuração por Workspace (.vscode/mcp.json)
{
    "inputs": [
        {
            "type": "promptString",
            "id": "mcp-prod-token", 
            "description": "Insira o Token MCP (definido no .env como MCP_PROD_TOKEN)",
            "password": true
        }
    ],
    "servers": {
        "jira-mcp": {
            "type": "http",
            "url": "http://localhost:8015/mcp",
            "headers": {
                "Authorization": "Bearer ${input:mcp-prod-token}"
            }
        }
    }
}

5. Iniciar e Verificar

  1. Command PaletteMCP: List Servers.
  2. Selecione jira-mcpStart Server.
  3. No chat do Copilot, clique no ícone Tools (🔧).
  4. Verifique se as ferramentas do Jira e Discord aparecem.

🔐 Autenticação de Servidor MCP

Este projeto utiliza autenticação via Token Bearer. O token deve ser definido na variável de ambiente MCP_PROD_TOKEN no servidor. O cliente (VS Code) deve enviar este mesmo token no cabeçalho Authorization.

💡 Exemplos de Uso

Jira

Busque os detalhes da issue PROJ-123
Atualize a issue PROJ-456 com:
- Informações técnicas: React 18 + TypeScript
- Implementação: Componentes funcionais com hooks

Discord

Envie uma mensagem no Discord avisando que terminei a tarefa PROJ-123

🐳 Docker

Executar em background

docker-compose up -d

Ver logs

docker-compose logs -f jira-server

📁 Estrutura do Projeto

my-server-mcp/
├── app.py                  # Ponto de entrada
├── src/
│   ├── main.py            # Configuração do FastMCP e registo de ferramentas
│   ├── config/
│   │   └── settings.py    # Validação de variáveis de ambiente
│   ├── services/
│   │   ├── jira_service.py    # Lógica do Jira
│   │   └── discord_service.py # Lógica do Discord
│   └── tools/
│       ├── jira_tools.py      # Definições das ferramentas Jira
│       └── discord_tools.py   # Definições das ferramentas Discord
└── ...

🏗️ Arquitetura SOLID

O projeto foi estruturado seguindo os princípios SOLID, separando responsabilidades entre Configuração, Serviços e Ferramentas (Tools). Veja mais detalhes em REFACTORING.md.

🔧 Solução de Problemas

Erro: "MCP_PROD_TOKEN não pode estar vazio"

Certifique-se de que definiu a variável MCP_PROD_TOKEN no seu ficheiro .env e não MCP_AUTH_TOKEN.

Servidor não conecta

Verifique se o container Docker está a correr:

docker-compose ps

Ferramentas não aparecem

  1. Command PaletteMCP: Reset Cached Tools
  2. Command PaletteMCP: List ServersRestart

Desenvolvido para integração Jira + Discord + GitHub Copilot