Spiral MCP Server
This is a Model Context Protocol (MCP) server implementation for the Spiral API using Python. It provides a standardized interface for interacting with Spiral’s language models.
Installation
mcp install src/server.py --name "spiral-writing-tool" --with pydantic --with requests --with beautifulsoup4 --with httpx
Setup
- Create and activate a virtual environment:
python3 -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`
- Install dependencies:
uv pip install -r requirements.txt
- Create a
.envfile in the root directory and add your Spiral API key:
SPIRAL_API_KEY=your_api_key_here
You can get your API key from https://app.spiral.computer/api
Running the Server
Start the server:
python src/server.py
The server will run on port 3000 by default. You can change this by setting the PORT environment variable.
Testing the Tools
To test the MCP tools directly:
python src/test_tools.py
This will run tests for all available tools to verify their functionality.
MCP Tools
The server implements four powerful MCP tools:
list_models
Lists all available Spiral models with their capabilities and metadata.
Example response:
{
"models": [
{
"id": "model-id",
"name": "model-name",
"description": "Model description",
"input_format": "text",
"output_format": "text",
"capabilities": {
"completion": true
}
}
]
}
generate
Generates text using a specified Spiral model.
Parameters:
model: The ID or slug of the Spiral model to useprompt: The input text to generate from
Example:
{
"model": "model_id_or_slug",
"prompt": "Your input text here"
}
generate_from_file
Generates text using a Spiral model with input from a file. This is useful for processing larger documents or maintaining consistent formatting.
Parameters:
model: The ID or slug of the Spiral model to usefile_path: Path to the file to use as input
Example:
{
"model": "model_id_or_slug",
"file_path": "path/to/your/input.txt"
}
generate_from_url
Generates text using a Spiral model with input from a URL. This tool can automatically extract article content from web pages.
Parameters:
model: The ID or slug of the Spiral model to useurl: URL to fetch content fromextract_article: Whether to extract article content or use full HTML (default: true)
Example:
{
"model": "model_id_or_slug",
"url": "https://example.com/article",
"extract_article": true
}
Error Handling
The server handles various error cases including:
- Invalid API key
- Model not found
- Input too long
- Rate limit exceeded
- URL fetch failures
- File read errors
- Server errors
- Request timeouts
Each error returns a clear error message to help diagnose the issue.
Environment Variables
SPIRAL_API_KEY: Your Spiral API key (required)PORT: Server port (optional, defaults to 3000)TIMEOUT: Request timeout in seconds (optional, defaults to 30)
Features
- Robust Error Handling: Comprehensive error handling and logging for all operations
- Article Extraction: Smart extraction of article content from web pages
- Flexible Input Sources: Support for text, files, and URLs as input
- Async Operations: All operations are asynchronous for better performance
- Type Safety: Full Pydantic type validation for all parameters
- Logging: Detailed debug logging for troubleshooting
Spiral Writing Tool
Project Details
- jxnl/spiral-mcp
- Last Updated: 4/9/2025
Recomended MCP Servers
An intelligent MCP server that serves as a guardian of development knowledge, providing Cline assistants with curated access...
AI-powered search capabilities for AI assistants using the Tavily API and Model Context Protocol (MCP)
This is MCP server for Claude that gives it terminal control, file system search and diff file editing...
✨ A Sleek and Powerful AI Desktop Assistant that supports MCP integration✨
a MCP server which integrates reasoning capabilities of DeepSeek R1 model into claude desktop app.
✨ JMeter Meets AI Workflows: Introducing the JMeter MCP Server! 🤯
🐞 MCP Node.js debugger
A connector for Claude Desktop to read and search an Obsidian vault.
一款轻量级、跨平台的 Mini Kubernetes AI Dashboard,支持大模型+智能体+MCP(支持设置操作权限),集成多集群管理、智能分析、实时异常检测等功能,支持多架构并可单文件部署,助力高效集群管理与运维优化。
🤖 Automatically generate MCP tools from your Fastify API routes.





