AI assistant本地部署Continue.dev + Ollama + MCP Server

AI assistant本地部署Continue.dev + Ollama + MCP Server

本文选择用Visual Studio Code + Continue.dev插件集成配套的AI IDE,配置Ollama本地运行qwen2.5-coder (7b)模型,并添加一个PG MCP server以提供相应的Tool功能。


为什么这么做?

  • 为了理解和实操MCP
  • 地区问题用不了Claude Desktop
  • 优先想到CodeLLM的使用场景
  • 免费,不想花钱买API key

技术介绍

  • Model Context Protocol 是一种开放协议,旨在为AI应用提供标准化的接口以安全访问和操作本地及远程数据,被形容为AI领域的"USB-C接口"。
  • Continue.dev 是一款功能强大且高度可扩展的AI编程助手,支持多任务并行处理与开发流水线工具集成,为开发者提供全方位的智能编码支持。
  • Ollama 是一个开源框架,专门设计用于在本地运行大型语言模型,通过将模型权重、配置和数据捆绑到一个包中,简化了模型的设置和使用。

(以上文字介绍来自qwq生成,可能代表、也可能不代表作者观点)

那么本文的这个案例中,各个工具或者应用承担的是什么角色呢?

  • MCP host and client: Visual Studio Code + Continue.dev
  • LLM: Ollama running qwen2.5-coder
  • MCP server: 一个用MCP Typescript SDK实现的Node.js应用(被Continue.dev初始化应用)

操作步骤

1. Visual Studio Code中安装Continue.dev插件

为了与主流AI IDE布局一致,装完之后我把插件入口拖至right side bar 🐶


2. 使用Ollama本地部署LLM

Ollama的本地安装比较傻瓜,就不赘述了,follow官方文档就好。我这里选择运行一个阿里的qwen2.5-coder 7b作为Continue.dev的模型Provider,用下来感觉跑着不费力。

==这里也想问一下,有没有哪位同学试过MacBook Pro (Apple M4 Pro)能跑得动多大参数体量的LLM?32b?==

bash 复制代码
ollama run qwen2.5-coder

# 下载好image安装运行成功后,可以直接Ctrl + c退出,Ollama会自己按需启动/停止模型服务

3. 本地配置PG MCP server

这里先使用官方实现的PG MCP server,github.com/modelcontex...,下次再尝试自己实现一个。

bash 复制代码
git clone git@github.com:modelcontextprotocol/servers.git
cd servers/src/postgres
npm ci

这里可以使用MCP inspector来测试一下本地MCP server部署成功与否:

bash 复制代码
# debug
npx -y @modelcontextprotocol/inspector npx @modelcontextprotocol/server-postgres postgresql://postgres:postgres@localhost:30432/developer_ems

Starting MCP inspector...
⚙️ Proxy server listening on port 6277
🔍 MCP Inspector is up and running at http://127.0.0.1:6274 🚀

PG的本地部署我就不赘述了,一个docker desktop直接搞定的事。下面是访问MCP inspector的一些截图:


4. 在Continue.dev中添加MCP server并使用

完成以上步骤之后,我们就已经拥有了:

  • 一个AI IDE作为MCP host
  • 一个能访问PG的MCP server应用

最后我们需要将二者配通,即可完成。

4.1 在Continue.dev的配置中添加如下

通过"Add MCP Servers"直接打开config.json进行编辑

json 复制代码
"experimental": {
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "npx",
          "args": [
            "-y",
            "@modelcontextprotocol/server-postgres",
            "postgresql://postgres:postgres@localhost:35432/postgres"
          ]
        }  
      }
    ]
  },

保存config.json,Continue.dev就会自动加载添加的MCP Server。

4.2 检查Tools是否正常被detect

完成上面的步骤后,Continue.dev就可以自动检测出MCP server所提供的Tools,此文章的例子中即是query这个Tool:

4.3 开始使用Prompt来检测Tool call

此处作者使用如下Prompt:

text 复制代码
请帮我执行sql语句查询db中所有的tables

这是由于我们使用的MCP server的实现导致的:

好,发送Prompt!

好,完美失败。。。

经过一杯咖啡的思考时间,作者想起来,我们还没有切换成Agent模式。。。于是==重启==IDE并切换至==Agent== mode:

回车发送后即会发现此次Tool call被调用了:(出现double confirm是因为Continue.dev默认MCP server提供的Tools为"Ask first"模式)

成功!!!🚀🚀🚀

总结

那么至此,本次没什么卵用的MCP初体验就算完工了~

虽然本案例对实际开发帮助不大,但万事开头难,相信(我自己都不信)此次0-1的工作完成后,将来1-N的丰富多彩的有效案例将如雨后春笋般涌现!!!

相关推荐
猿小羽28 分钟前
基于 Spring AI 与 Streamable HTTP 构建 MCP Server 实践
java·llm·spring ai·mcp·streamable http
猿小羽2 小时前
MCP Server 运行模式入门(Streamable HTTP / stdio)
http·ai·ai实战·mcp·mcp server
花酒锄作田9 小时前
MCP官方Go SDK尝鲜
golang·mcp
猿小羽20 小时前
深入理解 Microservice Control Proxy(MCP) 的 AI 实战指南
微服务·ai·推荐系统·service mesh·microservice·mcp·ai 实战
名字不好奇1 天前
一文拆解MCP协议
人工智能·mcp
ahxdyz2 天前
.NET平台MCP
ai·.net·mcp
绿荫阿广2 天前
将SignalR移植到Esp32—让小智设备无缝连接.NET功能拓展MCP服务
.net·asp.net core·mcp
青火coding3 天前
java本地实现mcp的服务器调用
java·服务器·spring boot·mcp
Bruk.Liu3 天前
AI中的Agent、Prompt、MCP与Function Calling:从简单对话到智能执行
人工智能·prompt·mcp
领航猿1号4 天前
Langchain 1.0.2 从入门到精通(含基础、RAG、Milvus、Ollama、MCP、Agents)
langchain·agent·milvus·rag·mcp·langchain 1.0