d0ug地震/地震-MCP
SYSTEMS ONLINE • NEURAL INTERFACE ACTIVE • COMBAT DATA ANALYSIS • TACTICAL OVERLAY ENABLED • PERFORMANCE METRICS NOMINAL ](https://nodejs.org/) ](https://pnpm.io/)   
一个生产就绪的MCP服务器模板,用于托管您自己的AI工具和提示。远程部署或本地运行——专为希望将工具暴露给人工智能模型而不必担心基础设施问题的开发人员而构建。
://WHO_IS_THIS_FOR?
此模板非常适合:
- AI工具开发人员:构建和托管自己的工具,人工智能模型可以与之交互
- 团队和组织:为您的AI应用程序设置共享MCP服务器
- 个人开发者:通过生产就绪的设置快速启动MCP开发
- API提供商:通过标准化界面将您的服务暴露给人工智能模型
您是否愿意:
- 🌐 托管多个客户端可以连接的远程MCP服务器
- 🔧 通过stdio在本地运行以进行开发和测试
- 🚀 部署生产就绪的MCP实施
- 🛠️ 构建工具而不必担心基础设施
此模板提供了开始所需的一切。
://概述
MCP服务器提供了两种将工具暴露给AI模型的方法:
- 远程服务器模式(SSE):部署为多个客户端可以连接的远程服务器
- 非常适合生产部署 (pnpm start:sse) - 支持多个同时连接 - 易于部署到铁路等平台 - 安全且可扩展
- 本地模式(stdio):在本地运行以进行开发和测试
(pnpm start)
- 非常适合当地发展 - 直接stdio通信 - 快速迭代和调试
主要特点:
- 工具:模型可以调用的可执行函数
- 鼓励:基于模板的消息生成器
- 自动发现:自动注册您的组件
- 类型安全:全面支持TypeScript
://为什么使用此模板?
虽然模型上下文协议(MCP)还处于早期阶段,但有一点是清楚的: 快速采用需要无摩擦的开发。此实现是以单一重点构建的: 让开发人员专注于构建优秀的工具,而不是基础设施.
即时部署
# Option 1: One-Click Deploy
Click the "Deploy on Railway" button above ☝️
# Option 2: Local Setup
pnpm install && pnpm dev零虚构开发
- 无沸腾板:定义你的工具,导入它,你就完成了。剩下的我们来处理。
- 自动注册:工具和提示会自动发现和注册。
- 类型安全:完全支持TypeScript,无需配置。
战斗导向架构
- 生产就绪:专为可靠性和性能而设计。
- 可扩展设计从简单的工具到复杂的人工智能交互。
- 错误恢复:内置强大的错误处理和调试功能。
开发者_体验_第一
// That's it. This is all you need to create a tool.
export const myTool = new Tool(
{
name: "myTool",
description: "What my tool does",
inputSchema: z.object({ query: z.string() }),
outputSchema: z.object({ result: z.string() }),
},
async (args) => {
// Your logic here
return { result: "Done!" };
},
);我们处理:
- ⚡ 连接管理
- 🔄 工具注册
- 🛡️ 输入验证
- 📦 国家管理
- 🚨 错误处理
- 📊 日志记录和指标
您专注于:
- 🎯 构建令人惊叹的工具
- 🧠 创建强大的提示
- 🚀 运输功能
://GETTING_STARTED
安装
pnpm install正在运行的服务器
有两种模式可供选择:
- 标准模式(stdio):
pnpm dev # Development with hot reload
pnpm start # Production- SSE(服务器发送事件)模式:
pnpm dev:sse # Development with hot reload
pnpm start:sse # Production在SSE模式下运行时,连接到: http://localhost:3001/sse
://核心概念
工具
工具是模型可以调用的可执行函数。每个工具:
- 已使用Zod定义了输入/输出模式
- 已自动在注册表中注册
- 可以执行任何操作(计算、文件I/O、API调用等)
示例工具:
import { z } from "zod";
import { Tool } from "../core";
const MyToolInputSchema = z.object({
param1: z.string().describe("Parameter description"),
});
const MyToolOutputSchema = z.object({
result: z.string().describe("Result description"),
});
export const myTool = new Tool(
{
name: "myTool",
description: "What my tool does",
inputSchema: MyToolInputSchema,
outputSchema: MyToolOutputSchema,
},
async (args) => {
const input = MyToolInputSchema.parse(args);
// Tool logic here
return { result: "processed result" };
},
);提示
提示是帮助构建模型交互的消息生成器。每个提示:
- 定义其参数架构
- 以一致的格式生成消息
- 已自动在注册表中注册
示例提示:
import { Prompt } from "../core";
export const myPrompt = new Prompt(
{
name: "myPrompt",
description: "What my prompt does",
arguments: [
{
name: "arg1",
description: "Argument description",
required: true,
},
],
},
async (args) => {
return [
{
role: "system",
content: {
type: "text",
text: `Generated message using ${args.arg1}`,
},
},
];
},
);://添加新组件
创建新工具
- 在中创建新文件
src/modules/tools/ - 使用Zod定义输入/输出模式
- 创建并导出您的工具实例
- 将导出添加到
src/modules/tools/index.ts
注册表将自动:
- 注册您的工具
- 使其可用于模型
- 处理验证和错误处理
创建新提示
- 在中创建新文件
src/modules/prompts/ - 定义您的参数模式
- 创建并导出提示实例
- 将导出添加到
src/modules/prompts/index.ts
注册表将自动:
- 注册您的提示
- 使其可用于模型
- 处理消息生成和错误
建筑
核心组件
- 注册表:所有工具和提示的中央管理器
- 工具:可执行函数的基类
- 提示:消息生成器的基类
- 服务器:MCP协议实施
自动注册
该系统使用单例注册表模式,该模式:
- 导入时自动注册工具和提示
- 提供对组件的类型安全访问
- 处理所有MCP协议交互
错误处理
该系统包括稳健的错误处理:
- 通过Zod模式进行类型验证
- 执行错误包装
- 调试的详细错误消息
发展
类型安全
所有组件都使用TypeScript来实现完全的类型安全:
- 使用Zod定义输入/输出模式
- 工具参数和结果的类型推断
- 全面的错误类型
测试
使用以下方式运行测试:
pnpm test最佳实践
- 始终定义清晰的输入/输出模式
- 使用描述性名称和文件
- 优雅地处理错误
- 遵循代码库中的TypeScript指南
//贡献
NEURAL INTERFACE DETECTED • INITIATING COLLABORATION PROTOCOLS • READY FOR UPLINK我们欢迎捐款!请查看我们的 贡献指南 有关以下内容的详细信息:
- 开发工作流程
- 代码风格指南
- 拉取请求流程
- 问题报告
加入我们 不和谐社区 与其他贡献者联系!
://支持
SUPPORT PROTOCOLS ACTIVE • COMMUNICATION CHANNELS OPEN • READY TO ASSIST- 📫 电子邮件:
- 💬 不一致: 加入我们的服务器
://许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
©2025 Doug,WithSeismic网站。
