ED

epicweb-dev/epic-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

36 stars 2 forks Качество 33 Тренд 12

Пример Epic Stack с конечной точкой /mcp

Обзор

Пример Epic Stack с поддержкой протокола Model Context Protocol (MCP). Model Context Protocol (MCP) - это открытый протокол, который стандартизирует, как приложения обеспечивают контекст для моделей большого языка (LLM). Представьте себе MCP как порт USB-C для приложений искусственного интеллекта — он обеспечивает стандартизированный способ подключения моделей искусственного интеллекта к различным источникам данных и инструментам. Этот репозиторий демонстрирует, как интегрировать MCP в приложение Epic Stack. Реализация включает: 1. Настройка MCP на стороне сервера для обработки клиентских соединений 2. Транспортный уровень SSE (Server-Sent Events) для связи в реальном времени 3. Пример реализации инструментов, показывающих, как подвергать функциональность LLM Сервер MCP является основным компонентом, который обрабатывает регистрацию и выполнение инструментов. Он настроен с уникальным именем и версией и определяет возможности, которые он предоставляет. Инструменты являются основным способом предоставления функциональности LLM.

Обзор (машинный перевод)

Пример Epic Stack добавлен Модельный контекстный протокол (MCP).

Что такое MCP?

Модельный контекстный протокол (MCP) — открытый протокол, который стандартизирует способ Приложения обеспечивают контекст для моделей большого языка (LLM). Подумайте о MCP. USB-C порт для приложений ИИ - это стандартизированный способ подключения ИИ Модели для различных источников данных и инструментов.

Узнать больше от MCP Документация

Пример реализации

Это хранилище демонстрирует, как интегрировать MCP в Epic Stack. приложение. Реализация включает:

1.Настройка MCP на стороне сервера для обработки клиентских соединений 2. Транспортный уровень SSE (Server-Sent Events) для связи в режиме реального времени 3. Пример реализации инструментов, показывающих, как подвергать функциональность LLM

Ключевые компоненты

####1.Настройка сервера MCP ([T0])

Сервер MCP является основным компонентом, который обрабатывает регистрацию инструментов. казнь. Он настроен с уникальным именем и версией и определяет возможностей, которые он предоставляет.

####2.Внедрение инструментов

Инструменты являются основным способом предоставления функциональности LLM. Каждый инструмент:

Имеет описательное название и цель

  • Использует Zod для проверки параметров безопасности типа

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Epic MCP

An Epic Stack example adding support for the Model Context Protocol (MCP).

What is MCP?

The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). Think of MCP like a USB-C port for AI applications - it provides a standardized way to connect AI models to different data sources and tools.

Learn more from the MCP Documentation

Example Implementation

This repository demonstrates how to integrate MCP into an Epic Stack application. The implementation includes:

  1. Server-side MCP setup for handling client connections
  2. SSE (Server-Sent Events) transport layer for real-time communication
  3. Example tool implementations showing how to expose functionality to LLMs

Key Components

1. MCP Server Setup (app/routes/mcp+/mcp.server.ts)

export const server = new McpServer(
	{
		name: 'epic-mcp-a25d',
		version: '1.0.0',
	},
	{
		capabilities: {
			tools: {},
		},
	},
)

The MCP server is the core component that handles tool registration and execution. It’s configured with a unique name and version, and defines the capabilities it provides.

2. Tool Implementation

server.tool(
	'Find User',
	'Search for users in the Epic Notes database by their name or username',
	{ query: z.string().describe('The query to search for') },
	async ({ query }) => {
		// Implementation...
	},
)

Tools are the primary way to expose functionality to LLMs. Each tool:

  • Has a descriptive name and purpose
  • Uses Zod for type-safe parameter validation
  • Can return multiple content types (text, images, etc.)
  • Integrates with your existing application logic

3. Transport Layer (app/routes/mcp+/fetch-transport.server.ts)

The transport layer handles the bi-directional communication between the MCP client and server:

  • Uses Server-Sent Events (SSE) for real-time server-to-client communication
  • Handles POST requests for client-to-server messages
  • Maintains session state for multiple concurrent connections

4. Route Integration (app/routes/mcp+/index.ts)

export async function loader({ request }: Route.LoaderArgs) {
	const url = new URL(request.url)
	const sessionId = url.searchParams.get('sessionId')
	const transport = await connect(sessionId)
	return transport.handleSSERequest(request)
}

The Remix route:

  • Establishes SSE connections for real-time communication
  • Handles incoming tool requests via POST endpoints
  • Manages session state for multiple clients

Learning Points

  1. Tool Design: When designing tools for LLMs:

    • Provide clear, descriptive names and purposes
    • Use strong type validation for parameters
    • Return structured responses that LLMs can understand
    • Consider supporting multiple content types (text, images, etc.)
  2. State Management: The implementation demonstrates:

Открыть полный README на GitHub

Установка

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

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →