本地使用 MCP SSE + Cursor 调用例子

需要 本地使用 MCP Stdio + Cursor 调用例子 请看我另外一篇文章

### 使用 SSE 模式

MCP使用SSE加API访问的方式

### 环境

windows11 环境:

cursor 版本: 0.48.7

python == 3.10.16

fastmcp==0.4.1

uvicorn==0.34.0

fastapi==0.115.12

starlette==0.46.1

### 文件

D:\Mcp\test\weather-sse.py

import uvicorn
from mcp.server.fastmcp import FastMCP
from fastapi import FastAPI, Response
from starlette.routing import Mount
from starlette.applications import Starlette

mcp = FastMCP("weather-sse")
api = FastAPI(
    version="1.0.0",
    title="测试服务",
    description="FastAPI 测试服务器"
)

@api.get("/")
async def index():
    return Response(content="welcome to index", media_type="text/plain")

@mcp.tool()
@api.get("/weather")
def get_weather(location: str="Beijing") -> str:
    """获取指定地点的天气预报。
    参数:
        location (str): 城市名,如 'Beijing'。
    返回:
        str: 天气信息。
    """
    # 模拟天气数据
    weather_info = {
        "temperature": 27,
        "condition": "晴",
        "humidity": 65,
        "wind": "东北风3-4级"
    }
    return f"{location}的天气:温度 {weather_info['temperature']}°C,{weather_info['condition']},湿度{weather_info['humidity']}%,{weather_info['wind']}"


app = Starlette(
    routes=[
        Mount('/api', app=api),
        Mount('/', app=mcp.sse_app()),
    ]
)

if __name__ == '__main__':
    # mcp.run(transport="sse")
    # uvicorn server:app --host 0.0.0.0 --port 5000
    uvicorn.run("__main__:app",host="127.0.0.1",port=5000,reload=False);

#### 终端运行

cd D:\Mcp\test

uvicorn weather-sse:app --host 0.0.0.0 --port 5000

### 添加MCP 配置

输入

{
  "mcpServers": {
    "weather-stdio": {
      "command": "python",
      "args": [
          "D:\\Mcp\\test\\weather-stdio.py"
      ]
    },
    "weather-sse": {
      "url": "http://127.0.0.1:5000/sse"
    }
  }
}

添加后点击刷新,出现绿色代表服务正常

接下来是测试环节

切换到Agent 模式,只有这个模式才能生效

第一次调试的时候可以输入详细一点

调用 MCP 服务 weather-sse 的 get_weather 获取 广东 的天气

同意MCP服务执行

即可获取数据

                

也可以写简单一点

可以打开 自动运行 的权限 , 就不用每次都给权限了

也可以使用接口来访问

http://127.0.0.1:5000/sse

http://127.0.0.1:5000/api/weather

(如果对你有帮助,请给个赞再走)

### CursorMCP在IT环境中的应用 Cursor作为一个集成开发工具,通过支持MCP(Model Context Protocol),能够显著提升开发者的工作效率和协作能力。当提及Cursor MCP时,实际上是指利用Cursor作为客户端来连接并操作基于MCP协议的服务端[^3]。 #### 配置示例 对于希望配置Figma MCP服务的情况,在`~/.codeium/windsurf/`目录下的`mcp_config.json`文件可以按照如下方式进行设置: ```json { "mcpServers": { "figma-developer-mcp": { "command": "npx", "args": [ "-y", "figma-developer-mcp", "--stdio" ], "env": { "FIGMA_API_KEY": "your_figma_api_key_here" }, "disabled": false, "alwaysAllow": [], "timeout": 300 } } } ``` 此配置允许用户通过指定命令(`npx`)及其参数启动Figma Developer MCP服务,并可通过环境变量传递必要的API密钥等敏感信息[^2]。 #### 数据交互机制 为了确保高效的数据交换和服务调用,采用了一种混合式的通信模式。服务器向客户端推送更新或通知时采用了Server-Sent Events(SSE)技术;而对于来自客户端的请求,则依赖于传统的HTTP POST方法完成。所有这些通讯均遵循JSON-RPC 2.0的标准格式来进行序列化处理[^4]。 #### 实际应用场景 在一个典型的开发流程里,开发者可以在本地安装好Cursor之后,依据项目需求调整相应的MCP服务器配置。比如针对自动化测试场景可以选择配置Playwright MCP Server,其对应的配置项可能看起来像这样: ```json { "mcpServers": { "@executeautomation-playwright-mcp-server": { "command": "npx", "args": [ "-y", "@executeautomation/playwright-mcp-server" ] } } } ``` 这使得团队成员能够在统一框架内轻松接入不同类型的后端资源,从而加速整个项目的迭代速度[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值