关于 MCP (Modelo de Contexto de Protocolo)
这是一个使用 Node.js 和 TypeScript 构建的本地 MCP 服务,提供天气查询工具。项目也包含类型检查、错误处理和代码格式规范配置。
主要功能
- 01提供天气查询工具
- 02使用 TypeScript 接口
- 03包含异常捕获处理
- 04配置 ESLint 与 Prettier
适用场景
- 01在 MCP 客户端中查询天气
- 02基于 TypeScript 开发本地 MCP 服务
MCP 相关
该服务向 MCP 客户端提供天气查询工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP(协议上下文模型)
本项目是遵循良好开发实践的协议上下文模型(MCP)实现。
技术与工具
- Node.js - 运行时环境
- TypeScript - 静态类型编程语言
- pnpm - 包管理器
- ESLint - 用于识别代码问题的代码检查工具
- Prettier - 代码格式化工具
- Zod - 模式验证库
代码质量配置
项目配置了以下工具,以确保代码质量:
TypeScript
tsconfig.json 文件包含以下配置:
- 启用严格模式
- 高级类型检查
- 支持 ES 模块
ESLint
eslint.config.mjs 中的 ESLint 配置使用新的扁平配置格式(Flat Config),并包含:
- JavaScript 和 TypeScript 推荐规则
- 与 Prettier 集成的插件
- 针对良好实践的特定规则:
- 不使用未使用的变量
- 尽可能使用 const 而非 let
- 始终在控制结构中使用代码块
- 使用严格相等比较(===)
Prettier
.prettierrc 中的配置定义了:
- 使用单引号
- 在语句末尾添加分号
- 最大行长度
- 其他用于保持格式一致的配置
可用命令
# Iniciar en modo desarrollo
pnpm dev
# Construir el proyecto
pnpm build
# Iniciar en modo producción
pnpm start
# Verificar el código con ESLint
pnpm lint
# Corregir problemas automáticamente con ESLint
pnpm lint:fix
# Formatear el código con Prettier
pnpm format
# Inspeccionar el MCP utilizando el inspector
npx @modelcontextprotocol/inspector npx -y tsx src/main.ts
项目结构
src/main.ts- 主要入口点,实现了一个用于查询天气的 MCP 服务src/interfaces.ts- 接口定义,用于提升可读性并完善文档dist/- 编译后的代码(运行 build 时生成)eslint.config.mjs- 现代格式(Flat Config)的 ESLint 配置.prettierrc- Prettier 配置tsconfig.json- TypeScript 配置
已实施的良好实践
- 类型处理:使用接口提升可读性并完善文档
- 错误处理:使用 try/catch 捕获异常
- 安全性:使用
encodeURIComponent转义 URL 参数 - 整洁代码:添加说明性注释,并使用描述性变量名
- 代码检查与格式化:使用现代 ESLint 和 Prettier 配置来保持一致性
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。