返回市场
费罗-MCP服务器

费罗-MCP服务器

作者:paulwilke12 星标更新:2025-06-26

项目介绍

Pharo MCP Server

License: MIT Certified by MCP Review

<!-- 后续添加其他徽章,例如构建状态、版本等 -->

Pharo Smalltalk 实现的 Anthropic 的 Model Context Protocol (MCP) 服务器规范。使像 Claude 这样的大语言模型(LLMs)能够与 Pharo 应用程序交互。


目录

什么是 MCP?

由 Anthropic 开发的 Model Context Protocol (MCP),是一个旨在标准化大型语言模型(LLMs)如何与外部工具和服务进行交互的规范。它定义了以下机制:

  1. 发现: LLM 如何得知某个服务是否支持 MCP 并获取基本信息。
  2. 服务描述: 服务如何描述其可用工具(函数),包括它们的名称、目的、输入参数和输出格式。
  3. 调用: LLM 如何安全地调用特定工具并接收结果。

目标是使 LLM 工具的使用更加可靠、安全和标准化。

更多详情,请参阅官方 Model Context Protocol GitHub 组织

本项目的目标

本项目旨在为 Pharo Smalltalk 环境提供一个强大且易于使用的 MCP 规范的服务器端实现

它允许开发者将其 Pharo 应用程序中的功能(如查询数据、创建对象、触发动作)作为“工具”暴露出来,这些工具可以被符合 MCP 规范的 LLM(如 Claude 3)通过标准化协议发现和调用。

这架起了动态 Pharo 环境与现代 LLM 能力之间的桥梁。

特性

  • 遵守 MCP 规范: 实现核心服务器端端点:
    • 发现 (/.well-known/model-context)
    • 服务描述 (/mcp/description - 或可配置路径)
    • 调用 (/mcp/invoke - 或可配置路径)
  • 动态工具注册: 提供简单的 API 来注册 Pharo 方法或代码块作为 MCP 工具。
  • 自动服务描述: 根据已注册工具及其元数据(名称、描述、模式)生成 MCP 服务描述 JSON。
  • Web 服务器集成: 基于 Teapot 微型 Web 框架构建。
  • JSON 处理: 使用 NeoJSON 进行健壮的 JSON 解析和生成。
  • 可扩展性: 设计用于集成到更大的 Pharo 应用程序中。
  • (计划中): 使用 JSON Schema 定义对工具参数进行输入验证。
  • (计划中): 为常见的 Pharo 对象模型提供集成助手(例如,使用 Voyage)。

安装

此项目应使用 Metacello 加载。

  1. 确保 Metacello 在您的 Pharo 镜像中已加载(通常情况下已经加载)。
  2. 在 Pharo 工作区执行以下代码(如有必要,请调整仓库 URL 和分支/标签):
Metacello new
    baseline: 'MCPFramework'; "<- 使用您基线类的实际名称(不带 'BaselineOf')"
    repository: 'github://YOUR_USERNAME/pharo-mcp-server:main/'; "<- 更改为您的仓库 URL 和分支/标签"
    load.