day02 mcp开发以及skill开发规范

1. mcp开发以及交互

1.1 mcp开发

MCP 服务端与客户端通过三种传输层通信,适配本地、远程、生产场景:

  1. STDIO(标准输入输出)
  • 场景:本地开发、命令行、AI 桌面客户端(如 Claude Desktop)
  • 原理:进程内 / 父子进程管道通信
  • 优点:简单、无网络、低延迟、易调试
html 复制代码
{
  "mcpServers": {
    "my-mcp-server": {
      "command": "python",
      "args": ["path/to/your/server.py"]
    }
  }
}
  1. SSE(Server-Sent Events,已逐步废弃)
  • 场景:早期远程、服务端主动推送
  • 原理:HTTP 长连接,服务端单向推流
  • 局限:网络不稳定易断连、无双向流
html 复制代码
{
  "mcpServers": {
    "my-mcp-server": {
      "url": "http://localhost:8001/sse"
    }
  }
}
  1. Streamable HTTP(生产标准)
  • 场景:云端部署、多用户、无状态、可扩展
  • 原理:双向流式 HTTP(RFC 9114),兼容网关 / 负载均衡
  • 优点:稳定、可观测、易运维、跨网络
html 复制代码
{
  "mcpServers": {
    "my-mcp-server": {
      "url": "http://localhost:8002"
    }
  }
}

选型

  • 本地开发:STDIO
  • 远程 / 推送:SSE(旧)→ Streamable HTTP(新)
  • 生产上线:Streamable HTTP

以大数据开发为场景:

一般的mcp主要集中在,比如我想实现接数的自动化 那我需要提交代码对吧 那么就需要走大数据开发平台的mcp去提交;

本地网络 ------- mcp ---------- 数据平台云端git仓库


1.2 mcp交互

以用户输入prompt:帮我查询纽约的天气为例子

2. skill开发以及规范

文件清单

script(存放脚本)

--- 查询时间.py

--- 查询天气.py

references(知识库)

--- 模板

--- 规则

--- 定义输入和输出

skill.md

其中skill里面可以选择包含触发条件 也可以主动触发两个方式 但是要包含以下几个部分

html 复制代码
---
name: 
description: 
---

# 技能名称

## 1. 能力目标
**Goal**


## 2. 能力边界
**Boundaries**
- 允许做:
- 禁止做:


## 3. 执行工作流
**Workflow**


## 4. 推理规则
**Reasoning Rules**


## 5. 输出契约
**Output Contract**


## 6. 参考文档
**References**
相关推荐
qq5918406855 小时前
uiautomator2自动化安卓手机操作
python
80s7776 小时前
动态代理和静态代理的区别,动态代理怎么提高网络安全性
python
niucloud-admin8 小时前
JAVA V6 多商户商城 开发文档——job 计划任务开发
java·python·github
小叶肥辉8 小时前
LangChain链和LangGraph图的学习笔记【三】——分别用langchain_openai库和langchain_community库调用大模型
笔记·python·langchain
2401_873479408 小时前
IP属地为什么有时显示外省?用IP查询工具核查动态分配、运营商出口与GeoIP库
python·tcp/ip·ip
OKkankan10 小时前
LangChain 能力详解!:输出解析、RAG、向量数据库与 Retriever 检索器
数据结构·python·langchain·ai应用
山哥ol11 小时前
【Geany 环境配置与中文乱码解决参考】
python
会飞锦鲤12 小时前
基于 Mask R-CNN 的药片缺陷检测系统
人工智能·pytorch·python·神经网络·resnet-50
默 语12 小时前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
清水白石00812 小时前
Python 异步编程深度解析:Cancellation 到底是异常还是控制信号?从 asyncio 取消机制到企业级事务设计最佳实践
开发语言·python