关于 D0UGWITHSEISMIC/WITHSEISMIC-MCP
面向开发者的 TypeScript MCP 服务模板,用于托管自定义工具和提示词。提供远程 SSE 与本地 stdio 两种运行模式,并自动注册组件。
主要功能
- 01远程 SSE 与本地 stdio 模式
- 02自动发现并注册工具和提示词
- 03Zod 输入输出校验
- 04TypeScript 类型支持
- 05内置错误处理、日志和指标
适用场景
- 01构建供 AI 模型调用的工具
- 02为团队托管共享 MCP 服务
- 03通过 SSE 部署远程服务
- 04使用 stdio 本地开发和测试
MCP 相关
该模板实现 MCP 服务,可向客户端暴露自定义工具和提示词。支持 SSE 远程连接和 stdio 本地通信。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
D0UGWITHSEISMIC/WITHSEISMIC-MCP

SYSTEMS ONLINE • NEURAL INTERFACE ACTIVE • COMBAT DATA ANALYSIS • TACTICAL OVERLAY ENABLED • PERFORMANCE METRICS NOMINAL
一个可用于生产环境的 MCP 服务模板,用于托管你自己的 AI 工具和提示词。可远程部署或在本地运行,专为希望将工具开放给 AI 模型使用、又不想为基础设施问题烦恼的开发者打造。
://这适合谁?
此模板非常适合:
- AI 工具开发者:构建并托管自己的工具,供 AI 模型调用
- 团队与组织:为 AI 应用搭建共享的 MCP 服务
- 个人开发者:通过可用于生产环境的配置快速启动 MCP 开发
- API 提供商:通过标准化接口向 AI 模型开放服务
无论你想要:
- 🌐 托管可供多个客户端连接的远程 MCP 服务
- 🔧 通过 stdio 在本地运行,以便开发和测试
- 🚀 部署可用于生产环境的 MCP 实现
- 🛠️ 构建工具,而无需担心基础设施
此模板都能提供你入门所需的一切。
://概览
此 MCP 服务提供两种向 AI 模型开放工具的方式:
-
远程服务模式(SSE):部署为远程服务,供多个客户端连接
- 非常适合生产环境部署
(
pnpm start:sse) - 支持多个客户端同时连接
- 可轻松部署到 Railway 等平台
- 安全且可扩展
- 非常适合生产环境部署
(
-
本地模式(stdio):在本地运行,以便开发和测试 (
pnpm start)- 非常适合本地开发
- 直接通过 stdio 通信
- 快速迭代和调试
主要功能:
- 工具:模型可调用的可执行函数
- 提示词:基于模板的消息生成器
- 自动发现:自动注册组件
- 类型安全:全面支持 TypeScript
://为什么使用此 MCP 服务模板?
虽然 Model Context Protocol(MCP)仍处于早期阶段,但有一点很明确:快速普及需要顺畅无阻的开发体验。此实现专注于一个目标:让开发者专注于构建出色的工具,而不是基础设施。
即时部署
# Option 1: One-Click Deploy
Click the "Deploy on Railway" button above ☝️
# Option 2: Local Setup
pnpm install && pnpm dev
开发零阻碍
- 无需样板代码:定义工具并导入即可,剩下的交给我们。
- 自动注册:自动发现并注册工具和提示词。
- 类型安全:无需配置即可全面支持 TypeScript。
经受实战检验的架构
- 可用于生产环境:为可靠性和性能而构建。
- 可扩展设计:支持从简单工具到复杂 AI 交互。
- 错误恢复能力强:内置完善的错误处理和调试功能。
开发者体验优先
// 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!" };
},
);
我们负责:
- ⚡ 连接管理
- 🔄 工具注册
- 🛡️ 输入验证
- 📦 状态管理
- 🚨 错误处理
- 📊 日志记录和指标
你专注于:
- 🎯 构建出色的工具
- 🧠 创建强大的提示词
- 🚀 发布功能
://开始使用
安装
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
欢迎贡献!详情请参阅我们的贡献指南,了解以下内容:
- 开发工作流
- 代码风格指南
- 拉取请求流程
- 问题报告
加入我们的 Discord 社区,与其他贡献者交流!
://支持
SUPPORT PROTOCOLS ACTIVE • COMMUNICATION CHANNELS OPEN • READY TO ASSIST
- 📫 电子邮件:[email protected]
- 💬 Discord:加入我们的服务器
://许可证
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
© 2025 Doug,来自 WithSeismic dot com。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。