npm modelbound-mcpstdioMITupdated 9d ago
Local-first MCP server for agent skills. Validate, lint, diff, and convert agent skill files across Cursor, Claude, Codex, Kiro, Windsurf, VS Code, and Amazon Q โ no account required. Optional cloud sync with ModelBound.
What can you do with modelbound mcp?
modelbound-mcp
Local-first MCP server for agent skills. Validate, lint, diff, and convert agent skill files across Cursor, Claude, Codex, Kiro, Windsurf, VS Code, and Amazon Q โ no account required. Optional cloud sync with ModelBound.
Why ModelBound?
AI tools come and go. You might use Cursor today, switch to Claude Code tomorrow, and try Kiro next week โ but your skills, rules, and context shouldn't be locked into any one of them. ModelBound gives you a single place to store and manage your agent skills, so you can move between tools freely without rebuilding your setup each time. Write a skill once, sync it everywhere, and get more value out of every AI subscription you're already paying for.
What it does
modelbound-mcp is a small Model Context Protocol server you run locally over stdio. It exposes tools to your IDE / agent using dot-notation naming for navigable discovery:
Local (no API key, no network):
ide.detectLayoutโ find which IDE conventions your repo usesskills.listLocal,skills.readLocal,skills.writeLocalskills.lintโ front-matter, token count, broken links, TODO scan, trust score (scanner h5)skills.trustโ deterministic slop/trust heuristics without full lintskills.scaffoldโ create a skill with default scope constraintsskills.reviewStatus,skills.reviewRequest,skills.reviewApprove,skills.reviewReject,skills.reviewGateskills.validateFormatโ agentskills.io complianceskills.convertโ translate between IDE formats (e.g. Cursor โ Claude)skills.diffโ compare a local skill with its cloud counterpart
Cloud (with MODELBOUND_API_KEY):
cloud.pullSkill,cloud.pushSkill,cloud.searchcloud.listSkillsโ now acceptsai_typeandsource_platformfilters; every row includesai_type,source_platform,source_path, andrepocloud.resourceTreeโ returns the team's full hierarchy grouped by platform โ top-level dir (.claude/skills,.cursor/rules,.kiro/steering, โฆ) โ files. Use this beforecloud.listSkillswhen an orchestrator needs to map context before loading.cloud.installMarketplaceSkilloptimization.health
Resource hierarchy
Orchestrators that juggle multiple AI platforms can call cloud.resourceTree once to get a complete map of available skills, rules, hooks, steering files, and system prompts โ grouped exactly how each platform expects them on disk. Pair it with the new ai_type / source_platform filters on cloud.listSkills to load only the slice you need. See examples/resource-tree.ts.
The cloud tools are a thin JSON-RPC proxy to mcp.modelbound.co. All business logic stays server-side; this repo never touches your data or secrets.
Migration from 0.1.x โ old snake_case names (
detect_ide_layout,pull_skill, โฆ) were removed in 0.2.0. The hosted ModelBound MCP server still accepts both forms forever for backward compatibility.
Anti-slop (0.4.x) โ trust scanner bumped to h5 with scope-limit, unbounded-wording, dependency, and refactor findings.
skills.readLocalnow returnstrust_score,scanner_version,review_state, andreview_meta. Override default scope limits via.modelbound/task-budgets.json. Useskills.reviewGatein CI to block unapproved skills.
Install
npx modelbound-mcp
Or install globally:
npm i -g modelbound-mcp
Use as an MCP server
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"modelbound": {
"command": "npx",
"args": ["-y", "modelbound-mcp"],
"env": { "MODELBOUND_API_KEY": "mb_live_..." }
}
}
}
MODELBOUND_API_KEY is optional. Without it, local tools still work.
See examples/ for Claude Desktop, Kiro, Windsurf, and VS Code configs.
Use as a CLI
modelbound-mcp detect # which IDE layouts exist here?
modelbound-mcp ls # list every skill file
modelbound-mcp lint .cursor/rules/ # lint a directory
modelbound-mcp lint .codex/skills/ # lint Codex skills
modelbound-mcp validate ./SKILL.md # agentskills.io compliance
modelbound-mcp convert --from cursor --to claude ./rule.mdc > out.md
Contributing
We want help. Specifically:
- New IDE adapters โ Zed, Aider, Continue, JetBrains AI, Cline. See CONTRIBUTING.md for the ~50 line recipe.
- Linter rules โ token estimation accuracy, dead-link detection, format-specific gotchas.
- Format converters โ fidelity improvements between adapter pairs.
Browse good first issues and the roadmap.
Related projects
| Project | Description |
|---|---|
| ModelBound CLI ยท npm | Terminal + CI for token optimization, skill pipeline, and version management |
| Cursor Extension ยท Marketplace | VS Code/Cursor extension for rules sync and MCP bridge |
| Cursor Plugin | Cursor slash commands for pipeline, trust & safety, and versions |
| Claude Code Plugin | Claude Code plugin for pipeline, hooks, and skill sync |
| Dev Packs | Open-source curated AI context packs for engineering teams |
Also on Smithery (stdio via npx modelbound-mcp) and the MCP Registry. Install hub: modelbound.co/connect
License
MIT ยฉ ModelBound
Install
Add modelbound mcp to your client. Pick the one you use.
claude mcp add modelbound-mcp -- npx -y modelbound-mcpcodex mcp add modelbound-mcp -- npx -y modelbound-mcpamp mcp add modelbound-mcp -- npx -y modelbound-mcp{
"mcpServers": {
"modelbound-mcp": {
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"modelbound-mcp": {
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"modelbound-mcp","command":"npx","args":["-y","modelbound-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"modelbound-mcp": {
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"modelbound-mcp": {
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"modelbound-mcp": {
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"modelbound-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"modelbound-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"modelbound-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"modelbound-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y modelbound-mcpRun `goose configure`, choose **Add Extension โ Command-line Extension**, and paste this command.
Score
75 / 100
Good
- Documentation25/25
- Maintenance19/25
- Trust16/20
- Capability3/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 2 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint โ no local install
Version history
| Versions | Published |
|---|---|
| 0.1.2Latest | May 23, 2026 |