ModelBound
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MODELBOUND_API_KEY | No | Optional API key for cloud sync features. Without it, local tools still work. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ide.detectLayoutA | Detect which IDE skill/rule layouts exist in the current working directory. Returns the list of matching adapters (e.g. cursor, claude, codex, kiro). Local-only, no network. |
| skills.listLocalA | List all skill / rule files found in the detected IDE directories under the current working directory. |
| skills.readLocalA | Read a local skill file (raw contents). Path must be inside the current working directory. |
| skills.writeLocalA | Write a local skill file. Creates parent directories. Path must be inside the current working directory. |
| skills.lintA | Lint a skill file: front-matter, token count, broken links, TODO markers. Local-only. |
| skills.validateFormatC | Validate a skill file against the agentskills.io standard. |
| skills.convertA | Convert a skill file from one IDE format to another (e.g. cursor → claude). Round-trips through a canonical {frontmatter, body} representation. |
| skills.diffA | Diff a local skill file against its cloud counterpart by slug. Local-side diff is computed here; the cloud half requires MODELBOUND_API_KEY. |
| skills.scaffoldC | Create a new SKILL.md with default scope constraints and draft review state. |
| skills.flightCheckA | Flight Check: offline safety scan for a skill or prompt (prompt injection, exfiltration, secrets, destructive commands, wildcard tools, loop hazards, clarity, token budget). Pass a file path or raw content. Local-only, zero AI cost. Blocking findings should be fixed before shipping. |
| skills.checksB | Check a local skill with deterministic heuristics (scanner h5). Returns pass / warn / fail with findings — no numeric score. |
| skills.reviewStatusB | Show review_state, review_meta, check status, and confidence trend for a skill. |
| skills.reviewRequestC | Move a skill to pending_review. |
| skills.reviewApproveC | Approve a skill; stores the approved body hash and checks status (pass, warn or fail) at approval time. |
| skills.reviewRejectC | Reject a skill with optional reviewer notes. |
| skills.reviewGateC | CI gate: exit semantics via blocked=true when skill is not approved. |
| cloud.pullSkillB | Pull a skill from the ModelBound cloud library. Response includes ai_type, source_platform, source_path, and repo when known. Requires MODELBOUND_API_KEY. |
| cloud.pushSkillB | Create or update a skill in the cloud library. Requires MODELBOUND_API_KEY. |
| cloud.listSkillsA | List skills in the cloud library. Supports ai_type (skill|hook|steering|system-prompt|rule|agent|memory|spec|instructions|prompt) and source_platform (claude-code|cursor|kiro|amazon-q|copilot|windsurf|codex|agents|modelbound) filters. Each row includes ai_type, source_platform, source_path, and repo for hierarchy-aware orchestration. Requires MODELBOUND_API_KEY. |
| cloud.resourceTreeA | Return the team's full AI resource hierarchy grouped by platform → top-level directory (.claude/skills, .cursor/rules, .kiro/steering, …) → files. Use this BEFORE listSkills when an orchestrator needs to map available context before loading. Requires MODELBOUND_API_KEY. |
| cloud.searchC | Full-text search across all cloud content. Requires MODELBOUND_API_KEY. |
| cloud.installMarketplaceSkillB | Install a public marketplace skill into your library. Requires MODELBOUND_API_KEY. |
| optimization.healthA | Get token health scores and staleness for your context library. Requires MODELBOUND_API_KEY. |
| optimization.runA | Run AI token optimization on a cloud skill, file, agent, or pack. Returns tokens_saved, savings_pct, version snapshot id, and a per-file breakdown. Requires MODELBOUND_API_KEY. Server creates a backup version automatically; for local-file edits the caller MUST snapshot via the BackupEngine first. |
| optimization.dryRunA | Same as optimization.run but never writes. Returns projected savings. Safe to call from auto-suggest hooks. Requires MODELBOUND_API_KEY. |
| optimization.previewC | Fetch a cached optimized variant of a skill or file without re-running optimization. Useful when an agent wants the lean version for inference but the raw version for editing. |
| workspace.setContextA | Set workspace context before skill list/get/test/pipeline ops. Scopes skills to the current repo by default. Requires MODELBOUND_API_KEY. |
| sync.fromIdeB | Sync a local skill file from the IDE to cloud and return a repo-linked skill UUID. Requires MODELBOUND_API_KEY. |
| pipeline.runA | Run the Skill Development Pipeline (Test → Optimize → Production) on a skill. Streams stage results into skill_pipeline_runs. Returns { run_id, status, version_after }. Use pipeline.status to watch progress. Requires MODELBOUND_API_KEY. |
| pipeline.statusA | Get pipeline run status. Pass run_id for a specific run, or skill_id + limit for recent runs. Poll every 1-2s while status === 'running'. |
| pipeline.configA | Read or update a skill's pipeline_config (max_latency_ms, enforce_latency/enforce_tests flags, default targets). Pass |
| skill.testA | Run a single skill test case against the live model. Pass test_case_id for a saved case or prompt + skill_md for an ad-hoc run. Returns adherence_score (1-10), verdict, latency_ms. |
| skill.testCasesC | List saved test cases for a skill. |
| skill.createTestCaseC | Create a saved automated check test case for a skill. Requires skill_id, name, and prompt. Optional notes for grading. |
| skill.testRunsC | List recent test runs for a skill (latest first). |
| skill.versionsB | List historical versions of a skill or file (from file_versions). Each entry includes version label, sha, created_at, and the actor that produced it. |
| skill.diffA | Return a unified diff between two versions of a skill (or between the live version and an arbitrary string). Use skill.versions first to find version labels. |
| skill.findingsB | List safety and quality findings for a skill. Returns findings with stable keys, and ignored_keys. Requires MODELBOUND_API_KEY. |
| skill.ignoreFindingB | Ignore a finding by stable key (or class/severity/message). Requires MODELBOUND_API_KEY. |
| skill.unignoreFindingC | Un-ignore a previously ignored finding. Requires MODELBOUND_API_KEY. |
| skill.benchmarkC | Run benchmark latency suite for a skill. Requires MODELBOUND_API_KEY. |
| skill.compareVersionsC | Compare two skill versions (e.g. latest vs current). Requires MODELBOUND_API_KEY. |
| skill.suggestImprovementsC | Suggest skill improvements from findings, tests and real-world outcomes. Requires MODELBOUND_API_KEY. |
| eval.createCaseB | Create a new eval test case (name, input_prompt, optional expected_output, rubric). Requires agent scope. |
| eval.listCasesA | List all eval cases for the team. Requires agent scope. |
| eval.runB | Submit actual output for scoring against an eval case. Pass score/pass for manual judging or omit for AI judge. |
| eval.listResultsC | List past eval results, optionally filtered by eval_case_id. |
| skill.report_outcomeA | Report how a skill performed after you used it. Call this once the task that used the skill is finished — it is how the skill gets improved. Keep excerpts short. Requires MODELBOUND_API_KEY. |
| skill.reliabilityA | Read back how the team's skills have performed in real use (worked / partial / failed over a rolling window). Use it to pick the most reliable skill for a task, or to find the ones that need attention. Requires MODELBOUND_API_KEY. |
| check_harnessA | Check whether a skill is cleared to run unattended. Returns a pass/warn/fail status across the four harness pillars (context, permissions, guardrails, verification) from the skill's latest pipeline run, with the reasons for anything blocking. Call this before using a skill for a task you will not review. |
| report_runA | Report a finished agent run to ModelBound so each step is tied to the skill that shaped it. Send step summaries only (name, kind, duration, tokens, status) — never prompts or outputs. Failed runs become outcome reports for the skill. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 51 tools
Most tools target distinct actions, but several check/safety tools overlap heavily (skills.checks, skills.flightCheck, check_harness, skill.findings all 'check a skill' with subtly different scopes), and test tools (skill.test, eval.run, skill.benchmark, skill.testRuns) blur together. Detailed descriptions help, but selection still requires careful reading.
Mix of dot-namespaced and flat snake_case tools (check_harness, report_run) with no unified scheme, and even the namespaces are inconsistent (skills. vs skill.). Method casing is also mixed, e.g. skill.report_outcome (snake) alongside skills.reviewRequest (camelCase).
51 tools is heavy for a skill-management server and clearly exceeds the 25+ 'too many' threshold. Multiple families (review, checks, tests, optimization) contain near-duplicate capabilities that inflate the surface beyond what the core purpose requires.
Broad lifecycle coverage: scaffold/create, read/write, cloud push/pull/list, versioning/diff, review workflow, testing, eval, optimization, and outcome reporting are all present. Only minor gaps remain, and agents can work around them.