项目简介
Enterprise Kotlin Android MCP服务器是一个基于Model Context Protocol (MCP) 构建的后端服务,旨在为AI代理(如大型语言模型LLM)提供访问Kotlin/Android开发项目上下文的能力。它通过标准化的JSON-RPC协议,让AI可以调用各种预定义工具,获取项目资源信息,从而实现智能化的代码分析、生成、重构以及项目管理等功能。
该服务器特别强调企业级特性,包括强大的安全与隐私合规性(如GDPR、HIPAA)、深度AI/ML集成、高级文件管理和外部API集成,为复杂的Android开发工作流程提供全面支持。
主要功能点
- 企业级安全与合规: 内置GDPR与HIPAA合规功能,支持AES-256数据加密、审计日志、访问控制和隐私设计。
- AI/ML智能集成: 支持本地LLM(如Ollama、LocalAI)及外部API(如OpenAI GPT-4、Anthropic Claude),能够进行AI驱动的代码分析、智能代码生成和ML模型集成。
- 高级文件管理: 提供项目文件的备份、恢复、实时同步、加密、解密、版本控制和智能分类,并支持多种云存储集成。
- 外部API集成: 简化第三方API集成,支持多种认证方式(API Key、OAuth 2.0、JWT)、速率限制、请求日志和实时监控。
- 全面的Android开发工具: 包含31个工具,涵盖Gradle构建、测试执行、Kotlin文件和XML布局创建、项目结构分析、代码格式化、Lint检查、文档生成等。
- 现代化UI与架构: 支持Jetpack Compose组件生成、自定义View创建、MVVM架构设置、Hilt依赖注入、Room数据库配置和Retrofit网络层构建。
- 会话管理与能力声明: 通过MCP协议标准化的方式向客户端声明服务器支持的功能和可用的工具。
- 多种协议支持: 虽然核心是Stdio JSON-RPC,但提供了VS Code Bridge Server,允许通过HTTP API访问工具,方便更广泛的集成。
安装步骤
-
系统要求:
- Python 3.8+ (推荐 3.9+)
- pip (Python 包管理器)
- Git (用于克隆仓库)
- 支持MCP的IDE (如 VS Code, JetBrains IDEs, Claude Desktop)
-
克隆仓库:
git clone https://github.com/normaltusker/kotlin-mcp-server cd kotlin-mcp-server -
自动化安装与配置 (推荐): 此项目包含一个增强的安装脚本,可以自动处理所有配置。运行以下命令,脚本将引导您完成安装过程:
python3 install.py您也可以选择非交互式安装,例如:
- 'python3 install.py 1 /Users/yourname/AndroidStudioProjects/MyApp' (便携式安装,固定Android项目路径)
- 'python3 install.py 2 none my-android-server true' (系统安装,动态使用环境变量) 运行 'python3 install.py --help' 查看所有选项。
安装器将自动完成以下操作:
- 安装 'requirements.txt' 中的所有Python依赖。
- 创建针对不同MCP客户端的配置文件 ('mcp_config_claude.json', 'mcp_config_vscode.json', 'mcp_config.json')。
- 设置正确的脚本文件权限。
- 根据您的选择配置环境变量。
- 消除手动更新配置文件的路径。
- 提供清晰的集成说明。
-
手动安装 (可选): 如果您更喜欢手动操作:
pip install -r requirements.txt # 可选:安装AI/ML功能依赖 pip install openai anthropic transformers torch aiofiles aiohttp watchdog -
验证安装 (可选):
python3 validate_config.py
服务器配置
MCP服务器与MCP客户端之间通过启动命令进行连接。该服务器的安装脚本会为您自动生成配置信息文件(如'mcp_config.json'、'mcp_config_claude.json'、'mcp_config_vscode.json'),您只需将这些文件中的内容复制到您的MCP客户端(如IDE插件)的配置中即可。
以下是生成配置文件的关键参数说明:
- 'server_name' (字符串): 您为MCP服务器实例定义的名称,如'kotlin-android'。客户端将通过此名称识别服务器。
- 'command' (字符串): 启动MCP服务器的可执行命令。通常是'python3'或'kotlin-android-mcp'(如果选择了系统安装)。
- 'args' (字符串数组): 传递给MCP服务器启动命令的参数。例如,可以指定默认的Android项目路径。
- 如果安装时配置了固定的项目路径,则这里会包含该路径,如 '["/path/to/your/android/project"]'。
- 如果配置为动态使用环境变量,则可能为空数组 '[]' 或包含 '${workspaceFolder}' / '${workspaceRoot}' 等占位符,由客户端环境自动解析。
- 'cwd' (字符串): 服务器的工作目录。通常是MCP服务器仓库的绝对路径,例如 '/absolute/path/to/kotlin-mcp-server'。
- 'env' (对象): 传递给服务器进程的环境变量。
- 'PROJECT_PATH' (字符串): 指定Android项目的路径。
- 如果安装时指定了固定路径,则为该路径的绝对值。
- 如果配置为动态使用环境变量,则此处可能为 '${workspaceFolder}' (VS Code) 或 '${workspaceRoot}' (Claude Desktop),这些是MCP客户端会自动解析的变量。
- 'MCP_ENCRYPTION_PASSWORD' (字符串): 可选,用于数据加密的密码。
- 'OPENAI_API_KEY' (字符串): 可选,用于集成OpenAI API的密钥。
- 'ANTHROPIC_API_KEY' (字符串): 可选,用于集成Anthropic API的密钥。
- 'PROJECT_PATH' (字符串): 指定Android项目的路径。
示例配置 (mcp_config.json 格式,用户无需手动编辑,仅作说明):
{ "mcpServers": { "kotlin-android": { "command": "python3", "args": ["/absolute/path/to/your/kotlin-mcp-server/kotlin_mcp_server.py"], "cwd": "/absolute/path/to/your/kotlin-mcp-server", "env": { "PROJECT_PATH": "${workspaceFolder}", // 或 "/path/to/your/android/project" "OPENAI_API_KEY": "YOUR_OPENAI_KEY" // 如果配置 } } } }
安装脚本会生成精确的配置,并提供集成到Claude Desktop和VS Code的指引。
基本使用方法
安装并配置好MCP服务器后,您可以通过您的MCP客户端(如VS Code的AI辅助插件、Claude Desktop)来调用该服务器提供的工具。这些工具以JSON-RPC请求的形式发送到服务器,服务器执行后返回JSON-RPC响应。
以下是一些基本的使用示例(您不需要直接输入这些JSON,您的IDE或AI客户端会帮助您构建这些请求):
-
分析项目结构: 您可以请求AI分析您的Android项目,例如获取其架构概览。
{ "name": "analyze_project", "arguments": { "analysis_type": "architecture", "include_dependencies": true } }AI客户端会向服务器发送此请求,服务器将返回项目的架构分析结果。
-
创建一个新的Kotlin文件: 您可以指示AI生成一个Kotlin文件。
{ "name": "create_kotlin_file", "arguments": { "file_path": "src/main/kotlin/com/example/MyNewClass.kt", "class_name": "MyNewClass", "class_type": "data_class", "package_name": "com.example.model" } }服务器将在指定路径创建该文件,并返回创建结果。
-
使用AI生成代码: 您可以向AI描述您需要的功能,让它生成相应的Android代码。
{ "name": "generate_code_with_ai", "arguments": { "description": "带有生物识别认证的登录界面", "code_type": "compose_screen", "framework": "compose", "compliance_requirements": ["gdpr"] } }服务器将利用集成的LLM生成代码并返回给客户端。
-
构建Android项目: 您可以让AI执行Gradle构建任务。
{ "name": "gradle_build", "arguments": { "task": "assembleDebug", "clean_build": true } }服务器将执行构建,并返回构建日志和结果。
通过这些工具,AI可以深入理解和操作您的Android项目,极大地提升开发效率和代码质量。
信息
分类
开发者工具