Files
Maksim Totmin c398045664
ci / test (push) Failing after 5s
ci / lint (push) Failing after 4s
chore: initial release v0.1.0
forge-toolkit: хелперы для разработки MCP-серверов на Go.

- toolkit: args/schema/result/env/probe/server
- toolkit/validate: валидаторы синтаксиса
- configreload: live-reload конфига по контент-хэшу
- docs: ARCHITECTURE, quickstart, mcp-contract
- template/ и examples/hello-tool/
- CI (Gitea Actions), лицензия Apache-2.0
2026-09-14 00:23:08 +07:00

26 lines
830 B
Go

package tools
import (
"context"
"git.totmin.ru/en2zmax/forge-toolkit"
"github.com/modelcontextprotocol/go-sdk/mcp"
)
// RegisterAll регистрирует инструменты сервера.
func RegisterAll(s *mcp.Server) {
mcp.AddTool(s, &mcp.Tool{
Name: "echo",
Description: "Возвращает переданный текст. Без побочных эффектов.",
InputSchema: toolkit.Schema(map[string]any{
"text": toolkit.StrProps("текст для возврата", true),
}, []string{"text"}),
}, func(_ context.Context, req *mcp.CallToolRequest, _ struct{}) (*mcp.CallToolResult, any, error) {
text, err := toolkit.RequireString(toolkit.RequestArgs(req), "text")
if err != nil {
return toolkit.Error(err.Error()), nil, nil
}
return toolkit.Text(text), nil, nil
})
}