protogrid

Search / io.github.Quidli/connect-mcp

Quidli Connect

R0· no sign-in

Resolve social handles to wallets, score onchain reputation, and make agent payments in USDC.

v0.6.12 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality85new
Trust97of 100
Uptime, 30 days100%
Latency p50438 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "connect-mcp": {
      "type": "http",
      "url": "https://mcp.connect.quid.li"
    }
  }
}
claude mcp add --transport http connect-mcp https://mcp.connect.quid.li
[mcp_servers.connect-mcp]
url = "https://mcp.connect.quid.li"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "connect-mcp": {
      "type": "remote",
      "url": "https://mcp.connect.quid.li",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "connect-mcp": {
      "type": "http",
      "url": "https://mcp.connect.quid.li"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=connect-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmNvbm5lY3QucXVpZC5saSJ9"
}
{
  "servers": {
    "connect-mcp": {
      "type": "http",
      "url": "https://mcp.connect.quid.li"
    }
  }
}
{
  "mcpServers": {
    "connect-mcp": {
      "httpUrl": "https://mcp.connect.quid.li"
    }
  }
}
extensions:
  "connect-mcp":
    enabled: true
    name: "connect-mcp"
    type: streamable_http
    uri: "https://mcp.connect.quid.li"
    timeout: 300

Quality 85 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene93 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations14 of 14 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 3,631 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 3 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvabledeps.dev does not know @quidli/[email protected]

14 tools, about 3,631 tokens to load them all · tool set 01019d63cf0d · checked 2026-10-20 12:45 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 97 / 100

provenance90
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-3d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@quidli/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.connect.quid.li streamable-httpnoneyes100%438 ms2025-11-252026-10-20
packageregistryversionruntimesecrets
@quidli/connect-mcpnpm0.6.12–

Tools (14)

connect_dropdestructiveExecute a Smart Send from the API key owner Connect embedded wallet. EVM: batch native or ERC-20 (need native gas plus the token). Solana (chainId 1399811149): SOL or SPL from the Solana embedded wallet; packs up to 20 native or 10 SPL recipients per transaction. Social recipient types: email, phone, telegram, discord, farcaster, twitter, github (id or username). linkedin and slack are not on /drop — use connect_lookup first, then type wallet. After connect_lookup, EVM payouts use ethWalletAddress (never solWalletAddress); Solana payouts use solWalletAddress (never ethWalletAddress). Social types on /drop resolve server-side; for type wallet, pass the resolved payout address for the target chain. Omit tokenContract or set it to null for the native token; pass an ERC-20 contract or SPL mint otherwise — do not use the zero address. Amounts are smallest-unit integer strings (ETH 18 decimals, SOL 9, USDC usually 6). Solana native (tokenContract null): no ATA. Sending to a recipient without an existing funded account requires amount ≥ 890880 lamports (rent-exempt minimum for a system account); that SOL stays with the recipient. Below that the tx fails. Sender also pays a ~5000-lamport fee. Solana SPL: tokens sit in Associated Token Accounts (ATA), not on the wallet pubkey. Recipients need not already hold the token — the API prepends CreateIdempotent. The sender (not the recipient) pays ~2039280 lamports (~0.002039 SOL) rent per newly created dest ATA, plus tx fees, on top of the token amount (which can be as small as 1 unit). A 400 "Insufficient funds" on SPL is often missing SOL for ATA rent, not missing USDC. Token-2022 is not supported; USDC mint is EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v. Always call connect_drop_balance first. Returns 201 when submitted or 202 when recipients still processing — retry with the same idempotencyKey.
connect_drop_balanceread-onlyGet native and token balances for the API key owner embedded wallet. Accepts Smart Send chains and enabled delegation chains. Robinhood Chain (4663) returns ERC-20 balances from Blockscout. Monad (143) returns ERC-20 balances from Moralis; other delegation chains return native plus featured tokens. Always call before connect_drop. Zero balances are omitted, so a missing token means balance 0. EVM: confirm native gas plus the ERC-20 being sent. Solana (chainId 1399811149): SOL in this response is spendable lamports on the wallet pubkey (rent locked in existing token accounts is not included). Native SOL drop to a recipient without an existing funded account: amount itself must be ≥ 890880 lamports and sender SOL must cover amount + ~5000 lamports fee. SPL drop: token balance ≥ total amount, and SOL ≥ tx fee + ~2039280 lamports (~0.002039 SOL) per recipient that may need a new Associated Token Account — even when sending USDC. Insufficient SOL for ATA rent fails before the token transfer.
connect_get_chainsread-onlyList product chains with per-feature compatibility. lookup is true for EVM catalog chains and Solana; drop is true for Smart Send chains, enabled delegation chains, and Solana (chainId 1399811149 for connect_drop / connect_drop_balance).
connect_get_priceread-onlyGet public x402 list prices for lookup and scores (reference only; live paywall amounts are in 402 responses).
connect_lookupread-onlyResolve social identities to EVM and Solana wallet addresses. Resolving a recipient who has no wallet provisions one for them, so this is read-only for the caller but not for the recipient. If status is processing, retry the same payload.
connect_lookup_exposedread-onlyList platforms a recipient has exposed on Connect, with enriched profile, scores, and wallet addresses. Recipient may be a social account, an exposed wallet (EVM/Solana/smart wallet), or a Connect username. May require x402 payment when the profile owner charges for lookups.
connect_meread-onlyGet the Connect profile, scores, and all linked accounts for the API key owner. Use to identify which user the key belongs to.
connect_scores_batchread-onlyBatch scores for linked accounts or Connect usernames. One result per request user. Optional filter sets passedFilter (quidli 0–100, neynar/lens 0–1, ethos 0–2800).
connect_scores_by_accountread-onlyScores for a linked social account or wallet.
connect_scores_by_usernameread-onlyScores by Connect public username.
connect_trust_checkread-onlyCheck whether identities sit in a trust graph at depth 1. Omit context to match any context.
connect_trust_createdestructiveCreate a unidirectional trust attestation on Base (EAS) from the API key owner embedded wallet to a wallet or social identity. Identical active attestations are returned without a new transaction. Requires CONNECT_API_KEY, Smart Send attestation signer enrolled, and ETH on Base for gas.
connect_trust_graphread-onlyList outgoing or incoming trust edges for an identity at depth 1.
connect_trust_revokedestructiveRevoke active trust attestations from the API key owner to a target. Optional context limits which attestations are revoked. Requires CONNECT_API_KEY and ETH on Base.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.Quidli/connect-mcp",
  "title": "Quidli Connect",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.connect.quid.li",
      "type": "streamable-http"
    }
  ],
  "version": "0.6.12",
  "packages": [
    {
      "version": "0.6.12",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@quidli/connect-mcp",
      "registryType": "npm"
    }
  ],
  "repository": {
    "url": "https://github.com/Quidli/connect-mcp",
    "source": "github"
  },
  "websiteUrl": "https://connect.quid.li",
  "description": "Resolve social handles to wallets, score onchain reputation, and make agent payments in USDC."
}