M

MCP地震AI工具服务器

@dougwithseismic/withseismic-mcp
1 Stars 513 次浏览 dougwithseismic 更新于 2026-08-23

一个基于 TypeScript 实现的 Model Context Protocol 服务器,为开发者提供了一个无缝的框架来构建和部署 AI 工具及提示词,专注于开发者体验,实现零样板代码和自动工具注册。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

D0UGWITHSEISMIC/WITHSEISMIC-MCP

WithSeismic MCP

SYSTEMS ONLINE • NEURAL INTERFACE ACTIVE • COMBAT DATA ANALYSIS • TACTICAL OVERLAY ENABLED • PERFORMANCE METRICS NOMINAL

TypeScript
Node.js
pnpm
License
Discord
Deploy on Railway

一个可用于生产的MCP服务器模板,用于托管您自己的AI工具和提示。无论是远程部署还是本地运行,该模板都为那些希望将工具暴露给AI模型而无需担心基础设施问题的开发者设计。

://WHO_IS_THIS_FOR?

该模板非常适合以下人群:

  • AI工具开发者:构建并托管可供AI模型交互的工具
  • 团队与组织:为您的AI应用程序设置共享的MCP服务器
  • 个人开发者:通过生产就绪的配置快速开始您的MCP开发
  • API提供者:通过标准化接口向AI模型开放您的服务

无论您想要:

  • 🌐 托管一个多个客户端可以连接的远程MCP服务器
  • 🔧 通过stdio本地运行以进行开发和测试
  • 🚀 部署一个生产就绪的MCP实现
  • 🛠️ 在不考虑基础设施的情况下构建工具

此模板提供了您开始所需的一切。

://OVERVIEW

MCP服务器提供了两种方式来使您的工具对AI模型可用:

  1. 远程服务器模式(SSE):作为多个客户端可连接的远程服务器部署

    • 适合生产环境部署
      (pnpm start:sse)
    • 支持多个同时连接
    • 易于部署到如Railway这样的平台
    • 安全且可扩展
  2. 本地模式(stdio):本地运行用于开发和测试
    (pnpm start)

    • 适用于本地开发
    • 直接通过stdio通信
    • 快速迭代和调试

主要特性:

  • 工具:模型可以调用的可执行函数
  • 提示:基于模板的消息生成器
  • 自动发现:组件的自动注册
  • 类型安全:全程支持TypeScript

://WHY_USE_THIS_MCP_SERVER_TEMPLATE?

虽然Model Context Protocol (MCP)还处于早期阶段,但有一点是明确的:快速采用需要无摩擦的开发过程。这个实现专注于一个目标:让开发者能够专注于构建优秀的工具,而不是基础设施

INSTANT_DEPLOYMENT

# Option 1: One-Click Deploy
Click the "Deploy on Railway" button above ☝️

# Option 2: Local Setup
pnpm install && pnpm dev

ZERO_FRICTION_DEVELOPMENT

  • 无样板代码:定义您的工具,导入它,完成。其余部分由我们处理。
  • 自动注册:工具和提示会自动被发现并注册。
  • 类型安全:完全支持TypeScript,零配置。

BATTLE_TESTED_ARCHITECTURE

  • 生产就绪:为可靠性和性能而构建。
  • 可扩展设计:从简单的工具到复杂的AI交互。
  • 错误恢复能力强:内置强大的错误处理和调试功能。

DEVELOPER_EXPERIENCE_FIRST

// 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

运行服务器

有两种模式可用:

  1. 标准模式(stdio):
pnpm dev      # Development with hot reload
pnpm start    # Production
  1. SSE(Server-Sent Events)模式:
pnpm dev:sse  # Development with hot reload
pnpm start:sse # Production

在SSE模式下运行时,连接到:http://localhost:3001/sse

://CORE_CONCEPTS

工具

工具是模型可以调用的可执行函数。每个工具:

  • 使用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}`,
        },
      },
    ];
  },
);

://ADDING_NEW_COMPONENTS

创建新工具

  1. src/modules/tools/ 中创建一个新文件
  2. 使用Zod定义您的输入/输出模式
  3. 创建并导出您的工具实例
  4. 将导出添加到 src/modules/tools/index.ts

注册表将自动:

  • 注册您的工具
  • 使其对模型可用
  • 处理验证和错误处理

创建新提示

  1. src/modules/prompts/ 中创建一个新文件
  2. 定义您的参数模式
  3. 创建并导出您的提示实例
  4. 将导出添加到 src/modules/prompts/index.ts

注册表将自动:

  • 注册您的提示
  • 使其对模型可用
  • 处理消息生成和错误

架构

核心组件

  • 注册表:所有工具和提示的中央管理器
  • 工具:可执行函数的基类
  • 提示:消息生成器的基类
  • 服务器:MCP协议实现

自动注册

系统使用单例注册表模式,该模式:

  1. 在导入时自动注册工具和提示
  2. 提供类型安全的组件访问
  3. 处理所有MCP协议交互

错误处理

系统包括强大的错误处理功能:

  • 通过Zod模式进行类型验证
  • 执行错误包装
  • 详细的调试错误信息

开发

类型安全

所有组件都使用TypeScript以确保完全类型安全:

  • 使用Zod定义输入/输出模式
  • 工具参数和结果的类型推断
  • 全面的错误类型

测试

运行测试:

pnpm test

最佳实践

  1. 始终定义清晰的输入/输出模式
  2. 使用描述性的名称和文档
  3. 优雅地处理错误
  4. 遵循代码库中的 TypeScript 指南

://CONTRIBUTING

NEURAL INTERFACE DETECTED • INITIATING COLLABORATION PROTOCOLS • READY FOR UPLINK

我们欢迎贡献!请参阅我们的贡献指南以获取有关以下方面的详细信息:

  • 开发工作流程
  • 代码样式指南
  • 拉取请求过程
  • 问题报告

加入我们的Discord 社区,与其他贡献者联系!

://SUPPORT

SUPPORT PROTOCOLS ACTIVE • COMMUNICATION CHANNELS OPEN • READY TO ASSIST

://LICENSE

此项目根据 MIT 许可证发布 - 查看LICENSE文件以获取详细信息。

版权所有 © 2025 Doug, at WithSeismic dot com.

相关 MCP 服务