WithSeismic MCP
一个用 TypeScript 实现的模型上下文协议(Model Context Protocol)服务器,它为开发者构建和部署 AI 工具和提示提供了一个流畅的框架,专注于开发者体验,具有零样板代码和自动工具注册的特性。
README
D0UGWITHSEISMIC/WITHSEISMIC-MCP

系统在线 • 神经接口激活 • 战斗数据分析 • 战术覆盖已启用 • 性能指标正常
一个生产就绪的 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 服务器模板?
虽然模型上下文协议 (MCP) 仍处于早期阶段,但有一点很明确:快速采用需要无摩擦的开发。 此实现构建时只有一个重点:让开发人员专注于构建出色的工具,而不是基础设施。
立即部署
# 选项 1:一键部署
点击上面的“Deploy on Railway”按钮 ☝️
# 选项 2:本地设置
pnpm install && pnpm dev
零摩擦开发
- 没有样板代码:定义您的工具,导入它,您就完成了。 我们处理剩下的事情。
- 自动注册:工具和提示会自动发现和注册。
- 类型安全:完整的 TypeScript 支持,无需配置。
经过实战考验的架构
- 生产就绪:专为可靠性和性能而构建。
- 可扩展的设计:从简单的工具到复杂的 AI 交互。
- 错误弹性:内置强大的错误处理和调试。
开发者体验至上
// 就是这样。 这就是创建工具所需的全部内容。
export const myTool = new Tool(
{
name: "myTool",
description: "我的工具做什么",
inputSchema: z.object({ query: z.string() }),
outputSchema: z.object({ result: z.string() }),
},
async (args) => {
// 你的逻辑在这里
return { result: "完成!" };
},
);
我们处理:
- ⚡ 连接管理
- 🔄 工具注册
- 🛡️ 输入验证
- 📦 状态管理
- 🚨 错误处理
- 📊 日志记录和指标
您专注于:
- 🎯 构建出色的工具
- 🧠 创建强大的提示
- 🚀 发布功能
://开始使用
安装
pnpm install
运行服务器
有两种模式可用:
- 标准模式 (stdio):
pnpm dev # 带有热重载的开发
pnpm start # 生产
- SSE(服务器发送事件)模式:
pnpm dev:sse # 带有热重载的开发
pnpm start:sse # 生产
在 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("参数描述"),
});
const MyToolOutputSchema = z.object({
result: z.string().describe("结果描述"),
});
export const myTool = new Tool(
{
name: "myTool",
description: "我的工具做什么",
inputSchema: MyToolInputSchema,
outputSchema: MyToolOutputSchema,
},
async (args) => {
const input = MyToolInputSchema.parse(args);
// 工具逻辑在这里
return { result: "已处理的结果" };
},
);
提示
提示是帮助构建模型交互的消息生成器。 每个提示:
- 定义其参数模式
- 以一致的格式生成消息
- 自动注册到注册表
示例提示:
import { Prompt } from "../core";
export const myPrompt = new Prompt(
{
name: "myPrompt",
description: "我的提示做什么",
arguments: [
{
name: "arg1",
description: "参数描述",
required: true,
},
],
},
async (args) => {
return [
{
role: "system",
content: {
type: "text",
text: `使用 ${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 指南
://贡献
检测到神经接口 • 正在启动协作协议 • 准备好进行上行链路
我们欢迎贡献! 请参阅我们的贡献指南,了解有关以下内容的详细信息:
- 开发工作流程
- 代码风格指南
- 拉取请求流程
- 问题报告
加入我们的 Discord 社区 与其他贡献者联系!
://支持
支持协议已激活 • 通信渠道已打开 • 准备好提供帮助
- 📫 电子邮件:hello@withseismic.com
- 💬 Discord:加入我们的服务器
://许可证
本项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
© 2025 Doug, at WithSeismic dot com.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。