web3ctx

Version-true web3 docs, ABIs and human-validated integration recipes over MCP.

Should I use this

Quality & Safety

B
Description quality
88%
Schema completeness
78%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~464Tokens (tool definitions)
~684 BTypical response size
Minimal attention impact (0.36% 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": {
    "web3ctx": {
      "url": "https://mcp.scarai.xyz/mcp"
    }
  }
}

Remote endpoints

https://mcp.scarai.xyz/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢web3_lookup(kind, id, chain, project, version)

Typed records by id: address, ABI, EIP. Does not search prose or rank.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "address",
        "abi",
        "eip"
      ]
    },
    "id": {
      "type": "string"
    },
    "chain": {
      "type": "string"
    },
    "project": {
      "type": "string"
    },
    "version": {
      "type": "string"
    }
  },
  "required": [
    "kind",
    "id"
  ],
  "additionalProperties": false
}
🟢web3_grep(pattern, project, version, limit)

Exact lexical match on a known identifier. Does not rank semantically.

Input Schema

{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string"
    },
    "project": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "pattern"
  ],
  "additionalProperties": false
}
🟢web3_search(query, project, version, intent, limit)

Ranked selectors for a prose query or unknown identifier. Does not return bodies.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "project": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "intent": {
      "type": "string",
      "enum": [
        "integrate",
        "implement",
        "debug",
        "lookup",
        "learn"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢web3_deps(selector, depth, kinds)

Dependency closure around a selector. Does not follow calls across projects.

Input Schema

{
  "type": "object",
  "properties": {
    "selector": {
      "type": "string"
    },
    "depth": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3
    },
    "kinds": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "selector"
  ],
  "additionalProperties": false
}
🟢web3_fetch(selectors, cursor)

Full bodies for selectors you already chose, or the next page of a cursor. Does not discover selectors.

Input Schema

{
  "type": "object",
  "properties": {
    "selectors": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 5
    },
    "cursor": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools