JM

javierustk/mormot-mcp-server

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

22 stars 4 forks 品質 72 トレンド 24MIT

完全なMCP 2025-06-18 MORMot2とDelphiの仕様実装

概要

MORMot2フレームワークを使用した高性能モデルコンテキストプロトコル(MCP)サーバーの実装。 (ステートレス・パー・リクエスト・モデル、サーバー/ディスカバー、サブスクリプション/リストン)、初期化ベースのクライアント(2024-11-05〜2025-11-25)、SSEによる双方向通知。 - - mORMot2を超えて外部の依存関係なし - SSEでstdioとHTTP - TDocVariantを使用してフルプロトコルサポート - - カスタムツール、リソース、およびプロンプトで簡単に拡張 - Delphiと無料のパスカルとコンパイル - - JSON スキーマ検証と listChanged 通知でカスタムツールを登録 - リスト、読み込み、テンプレート、および URI ベースのアクセスでサブスクリプション - - リストと複数のコンテンツタイプ (テキスト、画像、オーディオ、リソース) - - RFC 5424 ログレベルで setLevel メソッド - プロンプトとリソースのための自動補完 - - JSON-RPC newline-delimited、stderr へのログ - - Server-Sent Events (SSE)、CORS、および TLS サポート - Cryptographic session ID...

概要(AI 翻訳)

レア en español

mORMot2フレームワークを使用した高性能モデルコンテキストプロトコル(MCP)サーバーの実装。

MCP仕様書2026-07-28(ステートレス・パー・リクエスト・モデル[[server/discover]])、初期化ベースのクライアント(2024-11-05〜2025-11-25)とSSEによる双方向通知による完全後方互換性を持つ。

##特徴

コア

  • 純粋なmORMot2の実装 - mORMot2を超えて外部の依存関係なし
  • デュアルトランスポートサポート - stdioとHTTP SSE -JSON-RPC 2.0 - [[TDocVariantを使用したフルプロトコルサポート
  • モジュラーアーキテクチャ - カスタムツール、リソース、およびプロンプトで拡張しやすい
  • クロスプラットフォーム - デルファイとフリーパスカルとコンパイル

MCP の機能

  • ツール - JSONスキーマ検証と[[listChanged通知でカスタムツールを登録する
  • リソース - URIベースのアクセスでリスト、読み込み、テンプレート、およびサブスクリプション
  • プロンプト - 複数のコンテンツタイプ(テキスト、画像、オーディオ、リソース)でリストおよび取得 -Logging - RFC 5424のログレベルを持つ[[setLevelメソッド
  • 補完 - プロンプトとリソースの引数自動補完

輸送層

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

mORMot2 MCP Server

🇪🇸 Leer en español

High-performance Model Context Protocol (MCP) server implementation using the mORMot2 framework.

Implements MCP Specification 2026-07-28 (stateless per-request model, server/discover, subscriptions/listen) with full backward compatibility with initialize-based clients (2024-11-05 through 2025-11-25) and bidirectional notifications via SSE.

Features

Core

  • Pure mORMot2 implementation - No external dependencies beyond mORMot2
  • Dual transport support - stdio and HTTP with SSE
  • JSON-RPC 2.0 - Full protocol support using TDocVariant
  • Modular architecture - Easy to extend with custom tools, resources, and prompts
  • Cross-platform - Compiles with Delphi and Free Pascal

MCP Capabilities

  • Tools - Register custom tools with JSON Schema validation and listChanged notifications
  • Resources - List, read, templates, and subscriptions with URI-based access
  • Prompts - List and get with multiple content types (text, image, audio, resource)
  • Logging - setLevel method with RFC 5424 log levels
  • Completion - Argument auto-completion for prompts and resources

Transport Layer

  • stdio transport - JSON-RPC newline-delimited, logs to stderr
  • HTTP transport - REST API with Server-Sent Events (SSE), CORS, and TLS support
  • Session management - Cryptographic session IDs (128-bit)
  • SSE notifications - Real-time bidirectional communication
  • Keepalive - Configurable SSE keepalive (default 30s)
  • Graceful shutdown - SIGTERM/SIGINT handling with 5s timeout
  • Event bus - Thread-safe pub/sub for internal notification routing

Notifications

  • notifications/tools/list_changed - Tool registration changes
  • notifications/resources/list_changed - Resource changes
  • notifications/resources/updated - Subscribed resource updates
  • notifications/prompts/list_changed - Prompt changes
  • notifications/message - Log messages
  • notifications/progress - Progress updates
  • notifications/cancelled - Request cancellation

Requirements

  • mORMot2 framework
  • Delphi 10.3+ (tested) or Free Pascal 3.2+ (not yet tested)

Project Structure

mORMot-MCP-Server/
├── MCPServer.dpr           # Delphi project
├── MCPServer.lpr           # Free Pascal project
├── MCPServer.lpi           # Lazarus project
├── src/
│   ├── Core/
│   │   ├── MCP.Manager.Registry.pas   # Manager registration
│   │   └── MCP.Events.pas             # Event bus (pub/sub)
│   ├── Protocol/
│   │   └── MCP.Types.pas              # Core types and settings
│   ├── Transport/
│   │   ├── MCP.Transport.Base.pas     # Transport abstraction
│   │   ├── MCP.Transport.Stdio.pas    # stdio transport
│   │   └── MCP.Transport.Http.pas     # HTTP + SSE transport
│   ├── Server/
│   │   └── MCP.Server.pas             # Legacy HTTP server
GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "mormot-server": { "command": "C:\\path\\to\\MCPServer.exe", "args": ["--transport=stdio"] } } }