WithSeismic MCP

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides a community platform for users to connect with other contributors, with links to join the server for support and collaboration.

  • Built on Node.js runtime, enabling server-side JavaScript execution for AI model interactions.

  • Uses pnpm for package management with specific commands for installation and running the server in different modes.

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 模型:

  1. 远程服务器模式(SSE) :部署为多个客户端可以连接的远程服务器
    • 非常适合生产部署( pnpm start:sse
    • 支持多个同时连接
    • 轻松部署至 Railway 等平台
    • 安全且可扩展
  2. 本地模式(stdio) :本地运行以进行开发和测试( pnpm start
    • 有利于当地发展
    • 直接 stdio 通信
    • 快速迭代和调试

主要特点:

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

://为什么使用此 MCP_SERVER_TEMPLATE?

虽然模型上下文协议 (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!" }; }, );

我们处理:

  • ⚡ 连接管理
  • 🔄 工具注册
  • 🛡️ 输入验证
  • 📦状态管理
  • 🚨错误处理
  • 📊 日志和指标

您关注的是:

  • 🎯 构建出色的工具
  • 🧠 创建强大的提示
  • 🚀 配送功能

://入门

安装

pnpm install

运行服务器

有两种模式可用:

  1. 标准模式(stdio):
pnpm dev # Development with hot reload pnpm start # Production
  1. 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}`, }, }, ]; }, );

://添加新组件

创建新工具

  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

注册表将自动:

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

建筑学

核心组件

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

自动注册

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

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

错误处理

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

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

发展

类型安全

所有组件均使用 TypeScript 来实现完全类型安全:

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

测试

使用以下方法运行测试:

pnpm test

最佳实践

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

://贡献

NEURAL INTERFACE DETECTED • INITIATING COLLABORATION PROTOCOLS • READY FOR UPLINK

欢迎大家投稿!详情请参阅我们的投稿指南

  • 开发工作流程
  • 代码风格指南
  • 拉取请求流程
  • 问题报告

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

://支持

SUPPORT PROTOCOLS ACTIVE • COMMUNICATION CHANNELS OPEN • READY TO ASSIST

://执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

© 2025 Doug,WithSeismic dot com。

ID: h1gm1twwaf