JDWA 技术文档
首页
  • 数据库
  • 前端开发
  • 后端开发
  • 开发工具
  • 虚拟化技术
  • KVM显卡直通
  • FPGA仿真固件
  • 项目实战
  • 踩坑记录
  • 开发心得
  • 软件工具
  • 学习资料
  • 开发环境
更新日志
关于我
Gitee
GitHub
首页
  • 数据库
  • 前端开发
  • 后端开发
  • 开发工具
  • 虚拟化技术
  • KVM显卡直通
  • FPGA仿真固件
  • 项目实战
  • 踩坑记录
  • 开发心得
  • 软件工具
  • 学习资料
  • 开发环境
更新日志
关于我
Gitee
GitHub
  • 数据库

    • 数据库教程
    • MySQL免安装版使用指南
    • MySQL性能优化实践
    • Redis入门与实践
    • MinIO快速部署指南
    • MinIO基础使用教程
  • 前端开发

    • 前端开发教程
    • Vue.js开发最佳实践
    • CSS常用技巧与解决方案
    • JavaScript实用技巧与编程模式
    • CSS Grid布局教程
  • 后端开发

    • 后端开发教程
    • Spring Boot实战指南
    • Node.js Express 框架开发实战指南
    • Python Flask 框架开发指南
  • 开发工具

    • 开发工具教程
    • Git 基础教程
    • Git工作流实践指南
    • VS Code 全面使用指南
    • VS Code必装插件推荐
    • Docker基础入门
    • IntelliJ IDEA 使用技巧
    • Eclipse配置与优化
    • Sublime Text 高级技巧
    • Vim 从入门到精通
    • Maven 详解
    • Gradle 入门与进阶
    • Webpack 配置指南
    • npm 与 yarn 使用技巧
    • Makefile 编写指南
    • Navicat 使用指南
    • MCP本地部署教程
  • 虚拟化技术

    • JDWA虚拟化技术专题
    • KVM虚拟机去虚拟化技术详解
  • KVM显卡直通

    • KVM显卡GPU直通教程
  • FPGA仿真固件

    • FPGA仿真固件开发指南
    • 基础-完整设备仿真定制固件开发指南
    • 中级-完整设备仿真定制固件开发指南
    • 高级-完整设备仿真定制固件开发指南

MCP本地部署教程

Tips

本教程详细介绍了如何在本地部署各种MCP(Model Context Protocol)服务,帮助开发者提升AI开发体验。

什么是MCP

MCP(Model Context Protocol)是一种协议标准,允许AI模型通过各种服务器扩展来访问外部功能、数据和工具。通过部署MCP服务,我们可以增强AI模型的能力,使其能够:

  • 访问文件系统
  • 连接数据库
  • 使用更先进的思维工具
  • 管理记忆和上下文
  • 执行各种专业化任务

部署方式选择

部署MCP服务有两种主要方式:

  1. 本地部署:在自己的计算机上安装和运行MCP服务
  2. 线上部署:利用Smithery.ai等平台提供的云服务

每种方式各有优缺点,您可以根据自己的需求选择合适的部署方式。

线上部署 - Smithery.ai

Smithery.ai 是一个专门为MCP服务提供托管的平台,可以让您免去本地部署的复杂步骤。

Smithery.ai优势

  • 无需本地安装Node.js和npm包
  • 免去环境配置困扰
  • 随时可用的MCP服务
  • 丰富的预配置服务选择
  • 持续更新的服务库

使用步骤

  1. 访问Smithery.ai官方网站
  2. 创建账号并登录
  3. 浏览可用的MCP服务列表
  4. 选择需要的服务进行添加
  5. 根据提示完成配置
  6. 开始使用服务

常用Smithery服务

根据搜索结果,Smithery.ai平台提供了多种类型的MCP服务:

  • Sequential Thinking:结构化思维和问题解决工具
  • Clear Thought:使用系统思维和心智模型增强问题解决能力
  • Memory Bank:管理AI助手上下文的记忆系统
  • Desktop Commander:执行终端命令和管理文件
  • 数据库服务:如PostgreSQL、MySQL等数据库连接器
  • 搜索工具:如Brave Search、DuckDuckGo等

本地部署准备

如果您选择本地部署,请确保您的系统满足以下要求:

  1. 安装了Node.js环境(v16+)
  2. 安装了npm包管理器
  3. 具有管理员权限(用于全局安装npm包)
  4. 了解基本的终端/命令行操作

MCP服务器配置文件

MCP服务器通常通过JSON配置文件进行管理,该文件定义了需要启动的服务及其配置参数。下面是一个典型的配置示例:

{
  "mcpServers": {
    "jdwa-filesystem": {
      "command": "node",
      "args": [
        "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-filesystem\\dist\\index.js",
        "D:\\项目路径1",
        "D:\\项目路径2"
      ],
      "disabled": false
    },
    "cursor10x-mcp": {
      "command": "npx",
      "args": [
        "cursor10x-mcp"
      ],
      "enabled": true,
      "env": {
        "TURSO_DATABASE_URL": "libsql://您的数据库名称.turso.io",
        "TURSO_AUTH_TOKEN": "您的认证令牌"
      }
    },
    "clear-thought": {
      "command": "node",
      "args": [
        "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@waldzellai\\clear-thought\\dist\\index.js"
      ]
    },
    "jdwa-memory-bank": {
      "command": "node",
      "args": [
        "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@movibe\\memory-bank-mcp\\build\\index.js"
      ],
      "disabled": false
    },
    "sequential-thinking": {
      "command": "node",
      "args": [
        "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-sequential-thinking\\dist\\index.js"
      ],
      "disabled": false
    },
    "mcp_server_mysql": {
      "command": "node",
      "args": [
        "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@benborla29\\mcp-server-mysql\\dist\\index.js"
      ],
      "env": {
        "MYSQL_HOST": "localhost",
        "MYSQL_PORT": "3306",
        "MYSQL_USER": "root",
        "MYSQL_PASS": "您的密码",
        "MYSQL_DB": "您的数据库名",
        "ALLOW_INSERT_OPERATION": "true",
        "ALLOW_UPDATE_OPERATION": "true",
        "ALLOW_DELETE_OPERATION": "true",
        "ALLOW_DDL_OPERATION": "true",
        "MYSQL_ENABLE_LOGGING": "true",
        "MYSQL_LOG_LEVEL": "info"
      },
      "disabled": false
    }
  }
}

常用MCP服务器安装指南

以下是一些常用MCP服务器的安装和使用指南:

1. 文件系统服务(jdwa-filesystem)

文件系统服务允许AI模型读取、写入和管理本地文件系统中的文件。

安装步骤:

npm install -g @modelcontextprotocol/server-filesystem

配置参数:

  • 第一个参数:允许访问的根目录路径
  • 第二个参数:(可选)额外的允许访问目录

使用示例:

"jdwa-filesystem": {
  "command": "node",
  "args": [
    "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-filesystem\\dist\\index.js",
    "D:\\项目路径1",
    "D:\\项目路径2"
  ],
  "disabled": false
}

2. 记忆管理服务(cursor10x-mcp)

Cursor10x记忆管理服务允许AI模型存储和检索长期记忆,提高上下文理解能力。

安装步骤:

npm install -g cursor10x-mcp

配置参数:

  • TURSO_DATABASE_URL:Turso数据库URL
  • TURSO_AUTH_TOKEN:Turso认证令牌

使用示例:

"cursor10x-mcp": {
  "command": "npx",
  "args": [
    "cursor10x-mcp"
  ],
  "enabled": true,
  "env": {
    "TURSO_DATABASE_URL": "libsql://您的数据库.turso.io",
    "TURSO_AUTH_TOKEN": "您的认证令牌"
  }
}

3. 结构化思维工具(clear-thought)

Clear-thought提供了一套结构化思维工具,包括心智模型、辩证思维、科学方法等。

安装步骤:

npm install -g @waldzellai/clear-thought

配置示例:

"clear-thought": {
  "command": "node",
  "args": [
    "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@waldzellai\\clear-thought\\dist\\index.js"
  ]
}

4. 记忆库服务(jdwa-memory-bank)

Memory Bank提供了一种结构化的方式来存储和检索项目相关的知识。

安装步骤:

npm install -g @movibe/memory-bank-mcp

配置示例:

"jdwa-memory-bank": {
  "command": "node",
  "args": [
    "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@movibe\\memory-bank-mcp\\build\\index.js"
  ],
  "disabled": false
}

5. 顺序思维服务(sequential-thinking)

Sequential Thinking服务提供了一种结构化的逐步推理能力,帮助AI模型更系统地解决问题。

安装步骤:

npm install -g @modelcontextprotocol/server-sequential-thinking

配置示例:

"sequential-thinking": {
  "command": "node",
  "args": [
    "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@modelcontextprotocol\\server-sequential-thinking\\dist\\index.js"
  ],
  "disabled": false
}

6. MySQL数据库服务(mcp_server_mysql)

MySQL服务器允许AI模型直接查询和操作MySQL数据库。

安装步骤:

npm install -g @benborla29/mcp-server-mysql

配置参数:

  • MYSQL_HOST:MySQL服务器地址
  • MYSQL_PORT:MySQL服务器端口
  • MYSQL_USER:用户名
  • MYSQL_PASS:密码
  • MYSQL_DB:默认数据库名称
  • ALLOW_*_OPERATION:允许的操作类型

配置示例:

"mcp_server_mysql": {
  "command": "node",
  "args": [
    "C:\\Users\\用户名\\AppData\\Roaming\\npm\\node_modules\\@benborla29\\mcp-server-mysql\\dist\\index.js"
  ],
  "env": {
    "MYSQL_HOST": "localhost",
    "MYSQL_PORT": "3306",
    "MYSQL_USER": "root",
    "MYSQL_PASS": "您的密码",
    "MYSQL_DB": "您的数据库名",
    "ALLOW_INSERT_OPERATION": "true",
    "ALLOW_UPDATE_OPERATION": "true",
    "ALLOW_DELETE_OPERATION": "true",
    "ALLOW_DDL_OPERATION": "true",
    "MYSQL_ENABLE_LOGGING": "true",
    "MYSQL_LOG_LEVEL": "info"
  },
  "disabled": false
}

本地启动MCP服务

一旦您完成了MCP服务的安装和配置,您可以通过以下方式启动服务:

方法一:使用MCP运行时启动

  1. 创建一个名为mcp.json的配置文件,包含您需要的所有MCP服务配置
  2. 安装MCP运行时:
    npm install -g @modelcontextprotocol/runtime
    
  3. 启动MCP服务:
    mcp-runtime mcp.json
    

方法二:单独启动各个服务

您也可以在不同的终端窗口中单独启动各个MCP服务。例如:

# 启动文件系统服务
node C:\Users\用户名\AppData\Roaming\npm\node_modules\@modelcontextprotocol\server-filesystem\dist\index.js D:\项目路径

# 启动MySQL服务
set MYSQL_HOST=localhost
set MYSQL_PORT=3306
set MYSQL_USER=root
set MYSQL_PASS=密码
set MYSQL_DB=数据库名
node C:\Users\用户名\AppData\Roaming\npm\node_modules\@benborla29\mcp-server-mysql\dist\index.js

本地与线上部署对比

特性本地部署Smithery.ai线上部署
安装难度需要手动安装各组件无需安装,注册即用
配置复杂度需要手动创建配置文件界面配置,简单直观
隐私性数据本地处理数据可能经过第三方服务器
定制化完全可定制受限于平台提供的选项
维护成本需要自行更新平台自动更新维护
可用性仅在本地计算机可用全球可访问
成本免费基础功能免费,高级功能可能收费

常见问题与故障排除

1. 服务启动失败

问题: 尝试启动MCP服务时出现错误。

解决方案:

  • 检查Node.js版本是否为v16或更高版本
  • 确保已经全局安装了相应的MCP服务包
  • 检查配置文件中的路径是否正确
  • 查看详细的错误日志以获取更多信息

2. 权限问题

问题: 遇到"权限被拒绝"错误。

解决方案:

  • 以管理员身份运行命令提示符或终端
  • 确保用户对指定的目录和文件有读写权限
  • 对于Linux/Mac,可能需要使用sudo

3. 端口冲突

问题: MCP服务无法启动因为端口被占用。

解决方案:

  • 检查是否有其他MCP服务已经在运行
  • 确保相应的端口未被其他应用程序占用
  • 在配置中修改端口号(如果可能)

4. 数据库连接问题

问题: MySQL服务器连接失败。

解决方案:

  • 确保MySQL服务正在运行
  • 检查主机名、端口、用户名和密码是否正确
  • 确认用户具有足够的数据库权限
  • 检查防火墙是否阻止了连接

安全最佳实践

在部署MCP服务时,请注意以下安全建议:

  1. 不要在配置文件中硬编码敏感信息(如数据库密码和API密钥)
  2. 限制文件系统访问仅到必要的目录
  3. 使用专用的数据库用户并设置适当的权限
  4. 定期更新MCP服务到最新版本
  5. 监控MCP服务的日志以发现异常活动

结语

通过本教程,您应该能够理解MCP服务的部署选项,并根据自己的需求选择合适的部署方式。无论是使用Smithery.ai的线上服务,还是在本地自行部署,MCP服务都能显著增强AI模型的能力,为您的开发提供更丰富的扩展能力。

如果您在部署过程中遇到任何问题,或有更多关于MCP的问题,欢迎联系记得晚安(JDWA)获取技术支持。

Prev
Navicat 使用指南