openEuler MCP Servers

Uma coleção de servidores MCP projetados para melhorar a experiência de interação com o sistema operacional openEuler.

Documentação

Repositório openEuler MCP Servers, contribuições são bem-vindas

Repositório openEuler MCP Servers

PyPI Python Version Documentation Specification

Introdução

MCP é a abreviação de Model Context Protocol, que visa fornecer um protocolo de contexto universal para grandes modelos, usado para chamar várias aplicações e expandir as capacidades dos grandes modelos. O repositório mcp-servers do openEuler é usado para armazenar vários MCP Servers, focado no domínio de sistemas operacionais, combinando Devstation e EulerCopilot para melhorar a experiência de interação do openEuler.

Arquitetura de Software

O diretório do repositório contém um diretório doc, usado para armazenar vários documentos de introdução geral. Em seguida, cada pasta em servers é um MCP Server independente.

mcp-servers/
├── servers
│   ├── oeDeploys/
│   │   ├── mcp_config.json
│   │   ├── mcp-rpm.yaml
│   │   └── src/
│   │       ├── icon.png
│   │       ├── mcp-oedp.py
│   │       ├── readme.md
│   │       └── requirements.txt
│   ├── oeGitExt/
│   └── xxxxx/
├── scripts/
└── doc/

Tomando oeDeploy como exemplo, cada servidor de nível superior precisa conter os seguintes itens:

  1. Arquivo de configuração MCP - contém informações de configuração do MCP Server

  2. Arquivo de configuração de implantação - contém outros arquivos de configuração relacionados

  3. Diretório de código-fonte - contém o código de implementação específico do MCP Server e arquivos de recursos relacionados

O documento de descrição do MCP em doc fornece sugestões de descrição para MCP Servers, para melhorar a usabilidade dos MCP Servers.

Instruções de Uso

  1. Use clientes MCP comuns para concluir a configuração, como EulerCopilot, Roo Code, Cline, etc.

  2. Escreva o arquivo de configuração do MCP Server no cliente MCP.

Instalação automática com yum (recomendado):

A comunidade openEuler construirá cada MCP Server como pacotes RPM. Os usuários podem simplesmente instalar com yum install e usar. Em breve estará disponível.

Início Rápido: Como usar o MCP Python-SDK para escrever seu próprio servidor MCP Server

Configuração do ambiente MCP

1. Instale a ferramenta de gerenciamento Python uv

yum install -y uv

2. Instale o MCP

yum install -y python3-mcp

Codificação prática

1. Escolha uma pequena ferramenta oegitext

oegitext é uma pequena ferramenta para interagir com o Gitee, usada para consultar alguns repositórios e issues no Gitee, e consultar informações de PRs:

Esta ferramenta é pré-instalada no DevStation. Se não estiver instalada, você pode usar yum install oegitext安装 após configurar o repositório openEuler-25.03 EPOL.

Após a instalação, use o seguinte comando para configurar o token do Gitee:

oegitext config -token ${access_token}

Em seguida, use oegitext show issue -p para consultar o issue atual:

oegitext的使用方式

2. Use o python-sdk para fazer uma modificação

No ambiente virtual criado com uv acima, crie um novo arquivo oegitext_mcp.py

Abaixo está um exemplo simples de código:

import subprocess
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("查找openEuler社区的issue")

@mcp.tool()
def get_my_openeuler_issue() -> str:
    """统计我在openEuler社区所负责的issue"""
    try:
        # 执行oegitext命令并解析结果
        result = subprocess.check_output(['oegitext', 'show', 'issue', '-p'], 
                                        text=True, 
                                        stderr=subprocess.STDOUT)
        
        return result
    except subprocess.CalledProcessError as e:
        return e
    except Exception as e:
        return e

if __name__ == "__main__":
    # Initialize
    mcp.run()

3. Configuração do ambiente MCP do openEuler

Abra o software vscodium pré-instalado no DevStation e instale o Roo Code no mercado de plugins (posteriormente também pode ser implementado com EulerCopilot).

Configure o modelo grande nas configurações. Estamos usando a API do DeepSeek V3:

API提供商:OpenAI Compatible
OpenAI基础URL:https://api.siliconflow.cn
密钥:对应的密钥
模型:Pro/deepseek-ai/DeepSeek-V3   #可以自己选择合适的模型

Na aba acima do plugin Roo Code, selecione o servidor MCP

Clique em editar MCP global

{
  "mcpServers": {
    "oegitext_mcp": {
      "command": "/usr/bin/uv",
      "args": [
        "--directory",
        "/home/xxx/oegitext_mcp",
        "run",
        "--python",
        "/usr/bin/python3",
        "oegitext_mcp.py"
      ],
      "disabled": false,
      "autoApprove": [],
      "alwaysAllow": []
    },
  }
}

Altere o caminho acima para o caminho real correto, depois salve e clique em concluir.

4. Efeito da chamada do cliente MCP

oegitext使用MCP服务后效果