https://github.com/effectorhq/openclaw-mcp
SKILL.md → MCP bridge for Claude, Cursor, Windsurf — npx @effectorhq/skill-mcp
https://github.com/effectorhq/openclaw-mcp
ai-agents capability-layer effector mcp typed-tools
Last synced: 3 months ago
JSON representation
SKILL.md → MCP bridge for Claude, Cursor, Windsurf — npx @effectorhq/skill-mcp
- Host: GitHub
- URL: https://github.com/effectorhq/openclaw-mcp
- Owner: effectorHQ
- License: other
- Created: 2026-03-05T05:14:06.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-03-23T23:07:17.000Z (3 months ago)
- Last Synced: 2026-03-24T22:14:17.767Z (3 months ago)
- Topics: ai-agents, capability-layer, effector, mcp, typed-tools
- Language: JavaScript
- Size: 60.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
> **📦 Consolidated.** This package is now part of [`effectorHQ/effector`](https://github.com/OpenClawHQ/effectorhq) → `packages/serve/src/mcp/`.
> All active development continues in the monorepo. This repository remains available for reference.
>
> Run: `effector serve .` via the unified CLI.
---
# openclaw-mcp
[](https://www.npmjs.com/package/@effectorhq/skill-mcp)
[](https://github.com/effectorHQ/REPO-TIERS.md)
[](https://github.com/effectorHQ/openclaw-mcp/actions/workflows/test.yml)
[](https://nodejs.org/)
[](CONTRIBUTING.md)
[中文文档](README.zh.md)
## Overview
**openclaw-mcp** bridges the effector SKILL.md format to the [Model Context Protocol](https://modelcontextprotocol.io/) (MCP), enabling effector skills to work with any MCP-compatible agent runtime.
### What It Does
Converts SKILL.md skill definitions into MCP-compatible tool definitions. Your OpenClaw skills instantly become available to:
- **Claude** (Claude Desktop, API)
- **Cursor** IDE
- **Windsurf** IDE
- **Any MCP-supporting agent runtime**
### Why It Matters
- **Cross-Ecosystem Portability**: Build once in OpenClaw, deploy everywhere MCP is supported
- **No Code Changes**: Your existing SKILL.md files work without modification
- **Composable Skills**: Combine OpenClaw skills with MCP tools from other sources
- **Standardized Interoperability**: MCP is the industry standard for AI tool integration
## Install
```bash
npm install @effectorhq/skill-mcp
```
You can also use the CLI directly without installing globally:
```bash
npx @effectorhq/skill-mcp ./skills
npx @effectorhq/skill-mcp --stdio
```
See the published package on npm: **https://www.npmjs.com/package/@effectorhq/skill-mcp**
## Quick Start
### Start MCP Server
```bash
npx @effectorhq/skill-mcp serve ./skills/
```
The server listens on stdin/stdout (MCP standard) and exposes all SKILL.md files in `./skills/` as MCP tools.
### In Claude Desktop
Add to `~/.claude/desktop/config.json` (macOS/Linux) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
```json
{
"mcpServers": {
"openclaw": {
"command": "node",
"args": ["[path-to-node-modules]/@effectorhq/skill-mcp/bin/skill-mcp.js", "serve", "./skills"]
}
}
}
```
Restart Claude Desktop. Your OpenClaw skills are now available as tools.
## Architecture
```
┌─────────────────────┐
│ SKILL.md Files │
│ (frontmatter + │
│ markdown body) │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ skill-mcp Parser │
│ (YAML → JSON) │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ MCP Converter │
│ (schema mapping) │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ MCP Server (stdio) │
│ (JSON-RPC 2.0) │
└──────────┬──────────┘
│
▼
┌─────────────────────┐
│ MCP Clients │
│ • Claude │
│ • Cursor │
│ • Windsurf │
│ • etc. │
└─────────────────────┘
```
## CLI Usage
### Serve
Start an MCP server hosting your skills:
```bash
skill-mcp serve [--port 3000]
```
### Convert
Convert a single SKILL.md to MCP JSON schema:
```bash
skill-mcp convert [--output output.json]
```
### Validate
Validate SKILL.md files for MCP compatibility:
```bash
skill-mcp validate
```
### Help
```bash
skill-mcp --help
```
## Programmatic API
### `parseSkill(filePath)`
Parses a SKILL.md file into a skill object.
```javascript
import { parseSkill } from '@effectorhq/skill-mcp';
const skill = await parseSkill('./skills/my-skill.md');
console.log(skill.frontmatter.name);
```
### `convertToMCPTool(skill)`
Converts a parsed skill to MCP tool schema.
```javascript
import { convertToMCPTool, parseSkill } from '@effectorhq/skill-mcp';
const skill = await parseSkill('./skills/my-skill.md');
const mcpTool = convertToMCPTool(skill);
console.log(mcpTool);
// { name: '...', description: '...', inputSchema: { type: 'object', ... } }
```
### `createMCPServer(skillsDirectory)`
Creates and returns a JSON-RPC 2.0 MCP server.
```javascript
import { createMCPServer } from '@effectorhq/skill-mcp';
const server = createMCPServer('./skills');
await server.start();
```
## File Structure
- `bin/skill-mcp.js` — CLI entry point
- `src/index.js` — Main module exports
- `src/parser.js` — SKILL.md parser (YAML frontmatter)
- `src/converter.js` — SKILL.md → MCP tool converter
- `src/server.js` — JSON-RPC 2.0 MCP server
- `tests/` — Test suite (Node.js built-in test runner)
- `docs/` — Architecture and mapping documentation
## Development
```bash
npm test
npm run lint
npm run build
```
## Contributing
Contributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md).
## License
This project is currently licensed under the [Apache License, Version 2.0](LICENSE.md) 。