opchain

Claude Code / MCP skills for the dev pipeline: discover, spec, design, build, ship, operate.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
67%
Naming quality
97%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~645Tokens (tool definitions)
~604 BTypical response size
Moderate attention impact (0.50% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "opchain-skills": {
      "url": "https://opchain.dev/mcp"
    }
  }
}

Remote endpoints

https://opchain.dev/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
🟒list_skills

List every opchain skill (id, displayName, description, phases, commands). Call this first to see the concept→ship pipeline.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
βšͺroute(query)

Map a request or an /oc-* command to the skill that should handle it, with the entry phase. Use when you're unsure which skill fits.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "An /oc-* command (e.g. /oc-discover) or a natural-language request (e.g. 'build me an app')."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟒get_skill(id)

Return the full SKILL.md (the instructions) for one skill id. Load it, then follow it. Read get_orchestrator once before your first get_skill in a session.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Skill id, e.g. oc-app-architect."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟒get_orchestrator

Return the shared orchestrator protocol (welcome flow, pipeline map, active-chaining rules). Read once at the start of a session.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟑create_checkpoint_session

Create a private server-issued session for checkpoint storage. Retain the returned sessionId and use it with read_checkpoint/write_checkpoint; never invent or share one.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟑read_checkpoint(skill, sessionId)

Read a skill's saved session checkpoint (where you left off). sessionId must be a private token returned by create_checkpoint_session.

Input Schema

{
  "type": "object",
  "properties": {
    "skill": {
      "type": "string"
    },
    "sessionId": {
      "type": "string",
      "minLength": 36,
      "maxLength": 128,
      "description": "Private token returned by create_checkpoint_session."
    }
  },
  "required": [
    "skill",
    "sessionId"
  ],
  "additionalProperties": false
}
🟑write_checkpoint(skill, sessionId, checkpoint, expectedRevision)

Persist a skill's session checkpoint so progress survives across sessions. Stores the object as given (any JSON object up to 64 KiB); it does not validate it against the opchain checkpoint protocol, so write the shape the protocol documents.

Input Schema

{
  "type": "object",
  "properties": {
    "skill": {
      "type": "string"
    },
    "sessionId": {
      "type": "string",
      "minLength": 36,
      "maxLength": 128,
      "description": "Private token returned by create_checkpoint_session."
    },
    "checkpoint": {
      "type": "object",
      "description": "The checkpoint JSON to store (skill_state, next_actions, etc.)."
    },
    "expectedRevision": {
      "oneOf": [
        {
          "type": "string",
          "minLength": 1
        },
        {
          "type": "null"
        }
      ],
      "description": "Local durable transport only: null creates only if absent; a revision updates only that revision. Omit for atomic unguarded replacement."
    }
  },
  "required": [
    "skill",
    "sessionId",
    "checkpoint"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools