MCP (Model Context Protocol) SDK for Oomol Connect, enabling integration with Cherry Studio, VSCode, and other MCP-compatible clients.
- ✅ Full MCP protocol support based on official
@modelcontextprotocol/sdk - ✅ 9 tools covering all Oomol Connect functionality
- ✅ Complete TypeScript type support
- ✅ File upload support (local paths and base64 encoding)
- ✅ Intelligent polling with exponential backoff
- ✅ Real-time progress monitoring
- ✅ Smart version filtering (returns latest version by default)
- ✅ Easy integration with Cherry Studio, VSCode, Claude Desktop
npm install -g oomol-connect-mcp-sdk-tsnpx -y oomol-connect-mcp-sdk-tsgit clone <repository-url>
cd oomol-connect-mcp-sdk-ts
npm install
npm run build| Variable | Description | Required | Default |
|---|---|---|---|
OOMOL_CONNECT_BASE_URL |
API base URL | Yes | - |
OOMOL_CONNECT_API_TOKEN |
API token | Yes | - |
MCP_SERVER_NAME |
MCP server name | No | "oomol-connect" |
MCP_SERVER_VERSION |
MCP server version | No | package.json version |
OOMOL_CONNECT_DEFAULT_TIMEOUT |
Default timeout (ms) | No | 300000 (5 min) |
# Required
export OOMOL_CONNECT_BASE_URL="http://localhost:3000/api"
export OOMOL_CONNECT_API_TOKEN="api-your-token-here"
# Optional
export OOMOL_CONNECT_DEFAULT_TIMEOUT="300000"Add to Cherry Studio's MCP configuration:
{
"mcpServers": {
"oomol-connect": {
"command": "npx",
"args": ["-y", "oomol-connect-mcp-sdk-ts"],
"env": {
"OOMOL_CONNECT_BASE_URL": "http://localhost:3000/api",
"OOMOL_CONNECT_API_TOKEN": "your-token-here"
}
}
}
}Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"oomol-connect": {
"command": "npx",
"args": ["-y", "oomol-connect-mcp-sdk-ts"],
"env": {
"OOMOL_CONNECT_BASE_URL": "http://localhost:3000/api",
"OOMOL_CONNECT_API_TOKEN": "your-token-here"
}
}
}
}Configure in VSCode settings or use the MCP extension.
- list_blocks - List all available blocks (returns latest version by default, optionally all versions)
- list_tasks - List task history
- execute_task - Execute task and wait for completion (most common)
- execute_task_with_files - Execute task with file uploads
- list_packages - List installed packages
- install_package - Install package and wait for completion
- create_task - Create task without waiting (async)
- get_task - Query task status
- stop_task - Stop running task
{
"tool": "list_blocks",
"arguments": {
"includeAllVersions": false
}
}Each block automatically includes blockId (format: "package::name") and version fields.
{
"tool": "execute_task",
"arguments": {
"blockId": "audio-lab::text-to-audio",
"inputValues": {
"text": "Hello",
"voice": "en-US-JennyNeural"
},
"pollIntervalMs": 2000,
"timeoutMs": 300000
}
}{
"tool": "execute_task_with_files",
"arguments": {
"blockId": "ffmpeg::audio_video_separation",
"inputValues": {
"outputFormat": "mp3"
},
"files": [
{
"path": "/absolute/path/to/video.mp4"
}
]
}
}{
"tool": "install_package",
"arguments": {
"name": "package-name",
"version": "1.0.0"
}
}import { OomolConnectMcpServer } from "oomol-connect-mcp-sdk-ts";
const server = new OomolConnectMcpServer({
baseUrl: "http://localhost:3000/api",
authHeader: "Bearer your-token",
name: "my-server",
version: "1.0.0",
});
await server.run();# Install dependencies
npm install
# Build
npm run build
# Development mode (watch)
npm run dev
# Run locally
npm startThis SDK is built on:
@modelcontextprotocol/sdk- Official MCP SDKoomol-connect-sdk- Oomol Connect API client
The SDK provides a zero-logic-duplication wrapper around oomol-connect-sdk, exposing its functionality through the MCP protocol.
MIT
Contributions are welcome! Please open an issue or submit a pull request.
- oomol-connect-sdk-ts - Core Oomol Connect SDK
- oomol-cloud-mcp-sdk-ts - MCP SDK for Oomol Cloud
For issues and questions:
- GitHub Issues: Create an issue
- Documentation: See examples folder for more usage patterns