Skip to main content
Glama

Griphook

███████╗████████╗██████╗  █████╗ ████████╗ ██████╗
██╔════╝╚══██╔══╝██╔══██╗██╔══██╗╚══██╔══╝██╔═══██╗
███████╗   ██║   ██████╔╝███████║   ██║   ██║   ██║
╚════██║   ██║   ██╔══██╗██╔══██║   ██║   ██║   ██║
███████║   ██║   ██║  ██║██║  ██║   ██║   ╚██████╔╝
╚══════╝   ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝    ╚═════╝

 ██████╗ ██████╗ ██╗██████╗ ██╗  ██╗ ██████╗  ██████╗ ██╗  ██╗
██╔════╝ ██╔══██╗██║██╔══██╗██║  ██║██╔═══██╗██╔═══██╗██║ ██╔╝
██║  ███╗██████╔╝██║██████╔╝███████║██║   ██║██║   ██║█████╔╝
██║   ██║██╔══██╗██║██╔═══╝ ██╔══██║██║   ██║██║   ██║██╔═██╗
╚██████╔╝██║  ██║██║██║     ██║  ██║╚██████╔╝╚██████╔╝██║  ██╗
 ╚═════╝ ╚═╝  ╚═╝╚═╝╚═╝     ╚═╝  ╚═╝ ╚═════╝  ╚═════╝ ╚═╝  ╚═╝

Griphook is an MCP (Model Context Protocol) server that connects AI agents to the STRATO blockchain platform.

What is STRATO?

STRATO is a blockchain platform with a comprehensive DeFi ecosystem including token management, decentralized exchange, lending markets, CDP vaults, cross-chain bridging, and governance.

What is Griphook?

Griphook lets AI assistants like Claude interact with STRATO. Through 67 MCP tools, your AI can:

  • Read token balances, swap pools, lending positions, CDP vaults, and protocol metrics

  • Execute swaps, lending operations, borrowing, bridging, and reward claims

  • Manage platform administration and governance voting

Quick Start

Public hosted instances are available for both production and testnet:

Environment

Login URL

MCP Endpoint

Production

https://griphook.strato.nexus/login

https://griphook.strato.nexus/mcp

Testnet

https://griphook.testnet.strato.nexus/login

https://griphook.testnet.strato.nexus/mcp

  1. Visit the login URL to sign in and get a token

  2. Add to your MCP config (e.g., .mcp.json for Claude Code):

{
  "mcpServers": {
    "griphook": {
      "type": "http",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": { "Authorization": "Bearer <your-token>" }
    }
  }
}

See AI Coding Tool Compatibility for tool-specific configurations.

Running Your Own Instance

To run your own Griphook server, add to .mcp.json:

{
  "mcpServers": {
    "griphook": {
      "command": "node",
      "args": ["/path/to/griphook/dist/cli.js", "serve"],
      "env": {
        "OAUTH_CLIENT_ID": "your-client-id",
        "OAUTH_CLIENT_SECRET": "your-client-secret",
        "OPENID_DISCOVERY_URL": "https://keycloak.blockapps.net/auth/realms/mercata/.well-known/openid-configuration",
        "STRATO_API_BASE_URL": "https://buildtest.mercata-testnet.blockapps.net/api"
      }
    }
  }
}

Environment Variables

Required for Login

Variable

Description

OAUTH_CLIENT_ID

OAuth 2.0 client ID

OAUTH_CLIENT_SECRET

OAuth 2.0 client secret

OPENID_DISCOVERY_URL

OpenID Connect discovery endpoint

Required for Server

Variable

Default

Description

STRATO_API_BASE_URL

http://localhost:3001/api

STRATO API base URL

STRATO_HTTP_TIMEOUT_MS

15000

HTTP request timeout (ms)

HTTP Transport

Variable

Default

Description

GRIPHOOK_HTTP_ENABLED

true

Enable HTTP transport

GRIPHOOK_HTTP_HOST

127.0.0.1

Bind address

GRIPHOOK_HTTP_PORT

3005

Port

Hosted Mode

Variable

Description

GRIPHOOK_PUBLIC_URL

Public URL (enables multi-user auth)

Deploying a Hosted Instance

Set GRIPHOOK_PUBLIC_URL to enable multi-user deployment with per-request authentication. You'll also need to add the redirect URI https://<your-domain>/login/callback to your Keycloak client.

GRIPHOOK_PUBLIC_URL=https://griphook.testnet.strato.nexus npm start

The server exposes /.well-known/oauth-protected-resource (RFC 9728). MCP clients with OAuth support authenticate automatically. For clients without OAuth support, visit /login to get a Bearer token.

See deployment guide for full setup including Keycloak, DNS, nginx, and SSL configuration.

Troubleshooting

Error

Solution

OPENID_DISCOVERY_URL ... required

Set OAuth env vars before npm run login

Failed to acquire access token

Check credentials and discovery URL

403 Forbidden

Token expired - run npm run login again

ECONNREFUSED

Check STRATO_API_BASE_URL points to running instance

AI Coding Tool Compatibility

Griphook works with any MCP-enabled AI coding tool. All tools use the same authentication flow: sign in at /login to get a token, then add it to your tool's config.

Supported Tools

Tool

Config File

Type Field

Cursor

.cursor/mcp.json or ~/.cursor/mcp.json

http

Claude Code

.mcp.json or ~/.claude.json

http

Codex

~/.codex/config.toml

http

Kilo Code

.kilocode/mcp.json

streamable-http

Cline

cline_mcp_settings.json

streamableHttp

OpenCode

opencode.json or ~/.config/opencode/opencode.json

remote

VS Code Copilot

.vscode/mcp.json

http

Example Configurations

Cursor (.cursor/mcp.json or ~/.cursor/mcp.json):

{
  "mcpServers": {
    "griphook": {
      "type": "http",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

Claude Code (.mcp.json or ~/.claude.json):

{
  "mcpServers": {
    "griphook": {
      "type": "http",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

Codex (~/.codex/config.toml):

[mcp_servers.griphook]
type = "http"
url = "https://griphook.strato.nexus/mcp"

[mcp_servers.griphook.headers]
Authorization = "Bearer <your-token>"

Kilo Code (.kilocode/mcp.json):

{
  "mcpServers": {
    "griphook": {
      "type": "streamable-http",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

Cline (cline_mcp_settings.json):

{
  "mcpServers": {
    "griphook": {
      "type": "streamableHttp",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

OpenCode (opencode.json):

{
  "mcp": {
    "griphook": {
      "type": "remote",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

VS Code Copilot (.vscode/mcp.json):

{
  "servers": {
    "griphook": {
      "type": "http",
      "url": "https://griphook.strato.nexus/mcp",
      "headers": {
        "Authorization": "Bearer <your-token>"
      }
    }
  }
}

Known Issues

  • Cursor: Tools may appear in the sidebar but not be callable in chat. Try using global config (~/.cursor/mcp.json) and restart Cursor.

  • VS Code Copilot: Requires VS Code 1.102+ with Agent Mode enabled (chat.agent.enabled).

License

MPL-2.0

Security

This tool can move funds and change on-chain state. Treat it accordingly.

  • Credentials are stored unencrypted at ~/.griphook/credentials.json (file 0600, dir 0700). Protect your filesystem.

  • HTTP transport binds to 127.0.0.1 without TLS. Keep it local or front with HTTPS + auth if exposed.

  • Report vulnerabilities privately to maintainers rather than opening public issues.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/strato-net/strato-griphook'

If you have feedback or need assistance with the MCP directory API, please join our Discord server