Token导航 LogoToken导航TokenDH.com
MCP Server Kit (Crunchybananas) logo
运维云端未说明官方级别未说明来源级核验

MCP Server Kit (Crunchybananas)

MCP Server

一个可重用的Swift包,用于在macOS/iOS应用中嵌入MCP(模型上下文协议)服务器。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
Swift云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

crunchybananas

提供方

crunchybananas

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCPServerKit 工具包

一个可重用的Swift包,用于在macOS/iOS应用程序中嵌入MCP(模型上下文协议)服务器。

特性

  • JSON-RPC 2.0 HTTP服务器 连接管理
  • 工具注册表 用于注册和分发工具定义
  • 配置抽象 用于灵活的设置存储
  • 工具处理程序协议 配备便利助手
  • 局域网模式 支持网络访问控制

安装

将MCPServerKit添加为Swift包依赖项:

dependencies: [
  .package(url: "https://github.com/crunchybananas/MCPServerKit.git", from: "1.0.0")
]

然后添加 MCPServerKit 目标的依赖关系:

.target(name: "YourApp", dependencies: ["MCPServerKit"])

MCPServerKit会自动引入MCPCore作为传递依赖。

快速开始

import MCPServerKit

// Create server with registry
let registry = MCPToolRegistry()
let server = MCPServer(port: 8765, registry: registry)

// Register tool definitions
registry.register(MCPToolDefinition(
  name: "my.tool",
  description: "Does something useful",
  inputSchema: ["type": "object", "properties": [:]],
  category: .state,
  isMutating: false
))

// Register tool handler
registry.register(handler: MyToolHandler())

// Start server
server.start()

建筑

MCP服务器

主服务器类处理:

  • 可配置端口上的TCP侦听器
  • HTTP请求解析
  • JSON-RPC 2.0协议
  • 连接生命周期
  • 局域网模式实施

MCPToolRegistry

管理工具定义和处理程序:

  • 注册/查找工具定义
  • 注册工具处理程序
  • 权限检查
  • 工具/列表响应构建

MCP工具处理

实现工具处理程序的协议:

@MainActor
public protocol MCPToolHandling: AnyObject {
  var supportedTools: Set { get }
  func handle(name: String, id: Any?, arguments: [String: Any]) async -> (Int, Data)
}

MCPServer配置提供

配置存储协议:

@MainActor
public protocol MCPServerConfigProviding {
  func bool(forKey: String, default: Bool) -> Bool
  func integer(forKey: String, default: Int) -> Int
  func string(forKey: String, default: String) -> String
  // ... setters
}

默认实现 MCPUserDefaultsConfig 使用UserDefaults。

自定义请求处理

对于特定于应用程序的方法,请使用 onRequest 回拨:

server.onRequest = { method, id, params in
  switch method {
  case "myapp.customMethod":
    return (200, JSONRPCResponseBuilder.makeResult(id: id, result: ["ok": true]))
  default:
    return nil // Fall through to built-in handling
  }
}

平台要求

  • macOS 15.0+
  • iOS 18.0+
  • Swift 6.0+

依赖项

  • MCPCore(类型和JSON-RPC实用程序)

目录标签

目录标签

Swift云端部署Docker本地部署JSON-RPC2.0工具注册配置抽象工具处理器协议局域网模式

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP