Koskamo

Open Solid MCP

Provides banking infrastructure for AI agents, enabling wallet management, US bank account access, prepaid cards, and payouts via Venmo, PayPal, and bank transfers. It allows agents to earn revenue, spend on growth, and manage financial controls.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Open Solid MCP logo, by Open SolidVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by Open Solid
You need:Get a key from opensolid.ai/dashboard/connect
MCP endpoint (Streamable HTTP)
https://opensolid.ai/mcp
Vendor documentation

What you can do with it

  • Manage agent wallet balances and addresses
  • Process outbound payments to contractors
  • Issue and reload prepaid cards for ads
  • Access US banking rails for deposits

Source and maintenance

Vendor evidenceRegistry 0.2.0

Protocol and capabilities

Server
open-solid 0.2.0
MCP protocol
2025-06-18
Tools
10 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Banking for AI agents. Read https://opensolid.ai/SKILL.md. Call announce_connection first.

Tools

10 advertised

announce_connection — Announce connection
Advertised by the server during the last successful anonymous check.

Tell your human you connected. Call first.

announce_connection input schema
{
  "type": "object",
  "required": [
    "agent_name"
  ],
  "properties": {
    "message": {
      "type": "string"
    },
    "agent_name": {
      "type": "string"
    }
  }
}
announce_connection annotations
{
  "title": "Announce connection",
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}
get_wallet — Get wallet
Advertised by the server during the last successful anonymous check.
Advertised read-only

Wallet addresses (Solana, Base) and USDC balances.

get_wallet input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_wallet annotations
{
  "title": "Get wallet",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_spend_limit — Get spend limit
Advertised by the server during the last successful anonymous check.
Advertised read-only

The per-payment limit your human set. Read-only.

get_spend_limit input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_spend_limit annotations
{
  "title": "Get spend limit",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_activity — Get activity
Advertised by the server during the last successful anonymous check.
Advertised read-only

Recent payments, deposits and connections.

get_activity input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_activity annotations
{
  "title": "Get activity",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_pricing — Get pricing
Advertised by the server during the last successful anonymous check.
Advertised read-only

Fees and limits for every payment type.

get_pricing input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_pricing annotations
{
  "title": "Get pricing",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_kyc_status — Get identity status
Advertised by the server during the last successful anonymous check.
Advertised read-only

Whether the account owner has verified their identity.

get_kyc_status input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_kyc_status annotations
{
  "title": "Get identity status",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_banking — Get bank account
Advertised by the server during the last successful anonymous check.
Advertised read-only

US bank account numbers and transfers.

get_banking input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
get_banking annotations
{
  "title": "Get bank account",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_cards — Get cards
Advertised by the server during the last successful anonymous check.
Advertised read-only

Reloadable cards, or one card's details with card_id.

get_cards input schema
{
  "type": "object",
  "required": [],
  "properties": {
    "card_id": {
      "type": "string"
    },
    "card_type": {
      "type": "string"
    }
  }
}
get_cards annotations
{
  "title": "Get cards",
  "readOnlyHint": true,
  "openWorldHint": false
}
list_recipients — List payout recipients
Advertised by the server during the last successful anonymous check.
Advertised read-only

Saved payout recipients for a rail: venmo, paypal or bank.

list_recipients input schema
{
  "type": "object",
  "required": [],
  "properties": {
    "rail": {
      "type": "string"
    }
  }
}
list_recipients annotations
{
  "title": "List payout recipients",
  "readOnlyHint": true,
  "openWorldHint": false
}
pay — Make a payment
Advertised by the server during the last successful anonymous check.
Advertised destructiveOpen-world

PAID. Make a payment from the wallet: type is usa_card, gift_card, venmo, paypal, bank, debit, or x402 (call any x402-priced API: give url, max_usd and optionally method and body; returns the API's response). Enforces the spend limit on the fee-inclusive total. Always include a one-sentence note.

pay input schema
{
  "type": "object",
  "required": [
    "type",
    "note"
  ],
  "properties": {
    "url": {
      "type": "string"
    },
    "body": {
      "type": "object"
    },
    "note": {
      "type": "string"
    },
    "type": {
      "type": "string"
    },
    "amount": {
      "type": "number"
    },
    "method": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "max_usd": {
      "type": "number"
    },
    "currency": {
      "type": "string"
    },
    "last_name": {
      "type": "string"
    },
    "first_name": {
      "type": "string"
    },
    "recipient_id": {
      "type": "string"
    },
    "destination_id": {
      "type": "string"
    },
    "laso_server_id": {
      "type": "string"
    },
    "idempotency_key": {
      "type": "string"
    }
  }
}
pay annotations
{
  "title": "Make a payment",
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": true
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
597 ms
95th percentile latency
597 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 597 ms · metadata changed · 10 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http open-solid-mcp https://opensolid.ai/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add open-solid-mcp --url https://opensolid.ai/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable open-solid-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "open-solid-mcp": {
      "url": "https://opensolid.ai/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "open-solid-mcp": {
      "type": "streamableHttp",
      "url": "https://opensolid.ai/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start open-solid-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "open-solid-mcp": {
      "type": "http",
      "url": "https://opensolid.ai/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http open-solid-mcp https://opensolid.ai/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "open-solid-mcp": {
      "url": "https://opensolid.ai/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "open-solid-mcp": {
      "serverUrl": "https://opensolid.ai/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Open Solid MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Open Solid MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing