
mark3labs/mcp-go
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Реализация протокола Model Context Protocol (MCP) в Go с бесшовной интеграцией между LLM-приложениями и внешними источниками данных и инструментами.
Обзор
Реализация протокола Model Context Protocol (MCP) в Go с бесшовной интеграцией между LLM-приложениями и внешними источниками данных и инструментами. MCP Go отвечает за все сложные детали протокола и управление серверами, так что вы можете сосредоточиться на создании отличных инструментов. Он стремится быть высокоуровневым и простым в использовании. * : Высокоуровневый интерфейс означает меньше кода и более быструю разработку * : Создайте MCP-серверы с минимальным шаблоном * ***: MCP Go стремится обеспечить полную реализацию основной спецификации MCP 🚨 🚧 🏗️ MCP Go находится в активной разработке, как и сама спецификация MCP. Основные функции работают, но некоторые продвинутые возможности всё ещё находятся в разработке. Давайте создадим простой MCP-сервер, который покажет калькулятор и некоторые данные: Протокол Model Context Protocol (MCP) позволяет создавать серверы, которые предоставляют данные и функциональность LLM-приложениям безопасным и стандартизированным образом. Представьте его как веб-API, но специально разработанный для взаимодействия с LLM.
Обзор (машинный перевод)
Реализация протокола Model Context Protocol (MCP) в Go с бесшовной интеграцией между LLM-приложениями и внешними источниками данных и инструментами.
Обсудите SDK в Discord
Вот и всё!
MCP Go отвечает за все сложные детали протокола и управление серверами, так что вы можете сосредоточиться на создании отличных инструментов. Он стремится быть высокоуровневым и простым в использовании.
Ключевые особенности:
- Быстро: Высокоуровневый интерфейс означает меньше кода и более быструю разработку
- Просто: Создавать MCP-серверы с минимальным шаблоном
- Завершено*: MCP Go стремится предоставить полную реализацию основной спецификации MCP
(*акцент на цели)
🚨 🚧 🏗️ MCP Go находится в активной разработке, как и сама спецификация MCP. Основные функции работают, но некоторые продвинутые возможности всё ещё находятся в разработке.
Содержание
- Установка
- Быстрый старт
- Что такое MCP?
- Основные концепции
- Сервер
- Ресурсы
- Инструменты
- Подсказки
- Примеры
- Дополнительные материалы
- Транспорты
- Метаданные защищённого ресурса OAuth
- Управление сессиями
- Базовая обработка сессий
- Инструменты для каждой сессии
- Фильтрация инструментов
- Работа с контекстом
- Запросные крючки
- Промежуточное программное обеспечение Tool Handler
- Регенерация серверного кода
Установка
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
package main
import (
"context"
"fmt"
"github.com/mark3labs/mcp-go/mcp"
"github.com/mark3labs/mcp-go/server"
)
func main() {
// Create a new MCP server
s := server.NewMCPServer(
"Demo 🚀",
"1.0.0",
server.WithToolCapabilities(false),
)
// Add tool
tool := mcp.NewTool("hello_world",
mcp.WithDescription("Say hello to someone"),
mcp.WithString("name",
mcp.Required(),
mcp.Description("Name of the person to greet"),
),
)
// Add tool handler
s.AddTool(tool, helloHandler)
// Start the stdio server
if err := server.ServeStdio(s); err != nil {
fmt.Printf("Server error: %v\n", err)
}
}
func helloHandler(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) {
name, err := request.RequireString("name")
if err != nil {
return mcp.NewToolResultError(err.Error()), nil
}
return mcp.NewToolResultText(fmt.Sprintf("Hello, %s!", name)), nil
}
That’s it!
MCP Go handles all the complex protocol details and server management, so you can focus on building great tools. It aims to be high-level and easy to use.
Key features:
- Fast: High-level interface means less code and faster development
- Simple: Build MCP servers with minimal boilerplate
- Complete*: MCP Go aims to provide a full implementation of the core MCP specification
(*emphasis on aims)
🚨 🚧 🏗️ MCP Go is under active development, as is the MCP specification itself. Core features are working but some advanced capabilities are still in progress.
Table of Contents
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →