Bytecode Intelligence

Classify EVM smart contract bytecode as mixer, DEX, token, proxy, bridge, staking contract, or NFT — with a confidence score.

Community: Submitted by a user or imported; check the owner before granting accessDegradedNo sign-inGlobalFreeRead-only

What it can do

  • Analyze Bytecode: Classifies EVM smart contract bytecode and returns a risk label (mixer, erc20, erc721, proxy, dex, bridge, staking, unknown) with confidence score.
  • Get Selectors: Extracts function selectors (4-byte signatures) from EVM bytecode using PUSH4+EQ pattern matching.
  • Get Metadata: Extracts Solidity compiler metadata from bytecode tail (CBOR-encoded): IPFS hash and solc version.

What data it sees

Do you need an account

No: the server works without sign-in

Classify EVM smart contract bytecode as mixer, DEX, token, proxy, bridge, staking contract, or NFT — with a confidence score. Works on Ethereum, BSC, Polygon, Arbitrum, Optimism, Base, Avalanche, and all EVM-compatible chains. No API key required.

How to connect

How to connect Bytecode Intelligence to Claude

The server address to paste into Claude settings:

https://bytecode-intelligence--byteco.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect Bytecode Intelligence to ChatGPT

The server address to paste into ChatGPT settings:

https://bytecode-intelligence--byteco.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect Bytecode Intelligence to Cursor

The server address to paste into Cursor settings:

https://bytecode-intelligence--byteco.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (23)

Raw names from tools/list. Only developers need these.

analyze_bytecodeClassifies EVM smart contract bytecode and returns a risk label (mixer, erc20, erc721, proxy, dex, bridge, staking, unknown) with confidence score.
get_selectorsExtracts function selectors (4-byte signatures) from EVM bytecode using PUSH4+EQ pattern matching.
get_metadataExtracts Solidity compiler metadata from bytecode tail (CBOR-encoded): IPFS hash and solc version.
get_similarityComputes cosine similarity between two EVM bytecodes based on opcode frequency histograms. Returns score 0–1 and interpretation.
get_riskAnalyzes EVM bytecode for security risks: selfdestruct, delegatecall, create2, and ML-based contract classification. Returns a risk score 0–100 and risk level.
get_token_priceFetches the current USD price of a token by contract address or CoinGecko coin ID (e.g. 'ethereum', 'bitcoin'). Includes 24h change.
check_security_reportFull security analysis of a bytecode string: ML classification, opcode risk flags, function selector audit, risk score 0-100, and an LLM-generated professional assessment.
list_monitorsLists every persistent monitor on the caller's account, with its target, conditions, active/paused status, and last-fired time.
create_monitorCreates a persistent monitor that watches an address (or every address in a tag) and fires an alert when a condition is met. Evaluated every block (or on a schedule for peg_deviation).
update_monitorPauses, resumes, renames, or changes the notification channel of an existing monitor. Get the monitor_id from list_monitors.
delete_monitorPermanently deletes a monitor and its event history. Get the monitor_id from list_monitors.
list_eventsLists alerts fired by the caller's monitors, most recent first, and whether a webhook was delivered.
list_activityLists the audit trail of create/update/pause/delete actions taken on the caller's account (monitors, addresses, tags, keys).
list_addressesLists every address in the caller's address book, with its labels and tags.
create_addressAdds an address to the caller's address book, optionally labeled and assigned to existing tags.
delete_addressRemoves an address from the caller's address book. Get the address_id from list_addresses.
list_tagsLists every tag the caller has created, with its member addresses and the monitors targeting it.
create_tagCreates a new tag for grouping addresses — point a monitor at a tag to watch every address in it at once.
delete_tagDeletes a tag. Refused if any monitor still targets it. Get the tag_id from list_tags.
list_channelsLists every notification channel (webhook or Telegram) on the caller's account, with which monitors use each one.
create_channelCreates a reusable notification channel — attach the returned id to one or more monitors (create_monitor/update_monitor's channel_id) instead of repeating delivery details per monitor.
delete_channelDeletes a notification channel. Refused if any monitor still uses it. Get the channel_id from list_channels.
test_channelSends a real test alert through a channel's actual delivery path (signed webhook POST, or Telegram message) and reports whether it succeeded — use this to verify a channel is configured correctly. Get the channel_id from list_channels.