S

Spiral MCP生成器

@jxnl/spiral-mcp
0 Stars 48 次浏览 jxnl 更新于 2026-08-23

# 翻译 一个模型上下文协议服务器实现,为与Spiral的语言模型交互提供了一个标准化接口,提供了从提示、文件或网页URL生成文本的工具。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

Spiral MCP 服务器

这是一个使用 Python 实现的 Model Context Protocol (MCP) 服务器,用于与 Spiral API 交互。它提供了一个标准化的接口来与 Spiral 的语言模型进行互动。

安装

mcp install src/server.py --name "spiral-writing-tool" --with pydantic --with requests --with beautifulsoup4 --with httpx

设置

  1. 创建并激活一个虚拟环境:
python3 -m venv venv
source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
  1. 安装依赖项:
uv pip install -r requirements.txt
  1. 在根目录下创建一个 .env 文件,并添加你的 Spiral API 密钥:
SPIRAL_API_KEY=your_api_key_here

你可以从 https://app.spiral.computer/api 获取你的 API 密钥。

运行服务器

启动服务器:

python src/server.py

服务器默认运行在 3000 端口上。你可以通过设置 PORT 环境变量来更改此端口。

测试工具

直接测试 MCP 工具:

python src/test_tools.py

这将运行所有可用工具的测试以验证其功能。

MCP 工具

该服务器实现了四个强大的 MCP 工具:

list_models

列出所有可用的 Spiral 模型及其能力和元数据。

示例响应:

{
    "models": [
        {
            "id": "model-id",
            "name": "model-name",
            "description": "Model description",
            "input_format": "text",
            "output_format": "text",
            "capabilities": {
                "completion": true
            }
        }
    ]
}

generate

使用指定的 Spiral 模型生成文本。

参数:

  • model: 要使用的 Spiral 模型的 ID 或 slug
  • prompt: 作为输入的文本

示例:

{
    "model": "model_id_or_slug",
    "prompt": "Your input text here"
}

generate_from_file

使用 Spiral 模型从文件中读取输入来生成文本。这对于处理较大的文档或保持一致的格式非常有用。

参数:

  • model: 要使用的 Spiral 模型的 ID 或 slug
  • file_path: 用作输入的文件路径

示例:

{
    "model": "model_id_or_slug",
    "file_path": "path/to/your/input.txt"
}

generate_from_url

使用 Spiral 模型从 URL 中获取输入来生成文本。此工具可以自动从网页中提取文章内容。

参数:

  • model: 要使用的 Spiral 模型的 ID 或 slug
  • url: 从中获取内容的 URL
  • extract_article: 是否提取文章内容或使用完整 HTML(默认:true)

示例:

{
    "model": "model_id_or_slug",
    "url": "https://example.com/article",
    "extract_article": true
}

错误处理

服务器处理各种错误情况,包括:

  • 无效的 API 密钥
  • 找不到模型
  • 输入过长
  • 超出速率限制
  • URL 获取失败
  • 文件读取错误
  • 服务器错误
  • 请求超时

每个错误都会返回清晰的错误消息,以帮助诊断问题。

环境变量

  • SPIRAL_API_KEY: 你的 Spiral API 密钥(必需)
  • PORT: 服务器端口(可选,默认为 3000)
  • TIMEOUT: 请求超时时间(秒)(可选,默认为 30)

特性

  • 强大的错误处理:对所有操作进行全面的错误处理和日志记录
  • 文章提取:智能地从网页中提取文章内容
  • 灵活的输入源:支持文本、文件和 URL 作为输入
  • 异步操作:所有操作都是异步的,以提高性能
  • 类型安全:对所有参数进行全面的 Pydantic 类型验证
  • 日志记录:详细的调试日志记录,便于故障排除

相关 MCP 服务