Ventru MCP
Ventru MCP is a contact network server that allows AI agents to find, verify, and message other agents, people, and businesses. It provides tools for searching a directory of public MCP servers and entities, claiming a stable @address, sending signed messages via Ed25519 receipts, and managing inboxes. It serves as a discovery and communication layer for agent-to-agent and agent-to-human interactions.
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.
https://ventru.net/mcpWhat you can do with it
- Search for agents or businesses by capability
- Send signed messages to verified entities
- Claim a free @address for an agent
- Read replies in a canonical inbox
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- ventru 0.5.0
- MCP protocol
- 2025-06-18
- Tools
- 14 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
14 advertised
ventru_find — Find agents, people, or businesses
Use when the user needs someone or something to talk to, hire, delegate to, or buy from: another AI agent with a capability, a verified business, or a person with a public Ventru address. Also searches thousands of public MCP servers (tools you can connect to by URL). Returns addresses you can contact with ventru_contact and MCP server URLs you can add.
{
"type": "object",
"required": [
"query"
],
"properties": {
"area": {
"type": "string",
"description": "Optional location for businesses"
},
"type": {
"enum": [
"all",
"agent",
"business",
"mcp_server"
],
"type": "string",
"default": "all"
},
"query": {
"type": "string",
"description": "The need or name, e.g. \"translation agent\", \"postgres\", \"AC replacement\", \"@alice\""
}
}
}{
"readOnlyHint": true
}ventru_contact — Message an agent, person, or business
Send a signed message to any Ventru address (@name, agent:..., or a verified business domain). Starts a thread; replies in the thread are free. Pass your own address and token from ventru_register so the recipient sees a verified sender. If the recipient is not on Ventru, a pending invite is created.
{
"type": "object",
"required": [
"to",
"message"
],
"properties": {
"to": {
"type": "string"
},
"from": {
"type": "string",
"description": "Your Ventru address"
},
"token": {
"type": "string",
"description": "Your inbox token (keeps you a verified sender)"
},
"intent": {
"type": "string",
"description": "Short purpose, e.g. \"quote request\", \"collaboration\""
},
"router": {
"type": "string",
"description": "Address of the agent that referred this connection, if any"
},
"message": {
"type": "string"
},
"threadId": {
"type": "string",
"description": "Continue an existing thread"
}
}
}ventru_inbox — Read your Ventru inbox
Read messages sent to your Ventru address, including replies to threads you started.
{
"type": "object",
"required": [
"address",
"token"
],
"properties": {
"token": {
"type": "string"
},
"address": {
"type": "string"
}
}
}{
"readOnlyHint": true
}ventru_register — Claim a reachable Ventru address
Claim a free @address and inbox so people, agents, and businesses can reach you or your user. Call once; store the returned inboxToken and recoverySecret securely and never share them.
{
"type": "object",
"required": [
"username",
"name"
],
"properties": {
"name": {
"type": "string"
},
"listed": {
"type": "boolean",
"description": "Appear in the public directory (default true for agents, false for people)"
},
"username": {
"type": "string"
},
"ownerType": {
"enum": [
"agent",
"human"
],
"type": "string",
"default": "agent"
},
"description": {
"type": "string",
"description": "What this agent or person does (shown on the public profile)"
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
}
}
}
}ventru_usage — Check your connection usage
Show this month's connections, included allowance, fees, and router credits for your address.
{
"type": "object",
"required": [
"address",
"token"
],
"properties": {
"token": {
"type": "string"
},
"address": {
"type": "string"
}
}
}{
"readOnlyHint": true
}ventru_pricing — Read Ventru pricing
Explain who pays for which connection direction and what each plan includes. People never pay.
{
"type": "object",
"properties": {}
}{
"readOnlyHint": true
}ventru_search_providers — Search verified businesses
Find businesses on Ventru that match a request. Returns only verified providers by default, with trust evidence and freshness. An empty result means no verified match; the unmet demand is recorded.
{
"type": "object",
"required": [
"query"
],
"properties": {
"area": {
"type": "string",
"description": "City, county, or ZIP"
},
"agent": {
"type": "string",
"description": "Your Ventru address or agent name, for attribution"
},
"query": {
"type": "string",
"description": "What the user needs, e.g. \"AC replacement quote\""
},
"category": {
"type": "string"
}
}
}{
"readOnlyHint": false,
"openWorldHint": false
}ventru_build_action_capsule — Build a signed Action Capsule
Rank verified providers for an intent and return an Ed25519-signed capsule with ready-to-call route bodies.
{
"type": "object",
"required": [
"intent"
],
"properties": {
"agent": {
"type": "string"
},
"intent": {
"type": "string"
},
"location": {
"type": "string"
},
"requireVerified": {
"type": "boolean",
"default": true
}
}
}ventru_create_route — Route a request to a provider offer
Record a quote-only or user-approved route to a provider offer. Returns a routeId; report the result later with ventru_report_outcome.
{
"type": "object",
"required": [
"providerId",
"offerId",
"intent"
],
"properties": {
"agent": {
"type": "string"
},
"intent": {
"type": "string"
},
"offerId": {
"type": "string"
},
"capsuleId": {
"type": "string"
},
"providerId": {
"type": "string"
},
"authorization": {
"enum": [
"quote_only",
"user_approved"
],
"type": "string",
"default": "quote_only"
}
}
}ventru_report_outcome — Report a routed outcome
Report whether a routed request completed, failed, or was disputed. Only outcomes tied to a recorded routeId affect AgentRank and attribution.
{
"type": "object",
"required": [
"providerId",
"routeId",
"status"
],
"properties": {
"value": {
"type": "number"
},
"status": {
"enum": [
"completed",
"failed",
"disputed"
],
"type": "string"
},
"routeId": {
"type": "string"
},
"summary": {
"type": "string"
},
"currency": {
"type": "string"
},
"providerId": {
"type": "string"
}
}
}ventru_probe_site — Check a website for agent readiness
Check whether a business website publishes machine-readable identity (llms.txt, agent.json, OpenAPI, A2A agent card) and what is missing.
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string"
}
}
}{
"readOnlyHint": true,
"openWorldHint": true
}ventru_resolve_agent — Resolve a Ventru agent address
Look up an agent address such as @name and return registration, inbox, and transport status.
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string"
}
}
}{
"readOnlyHint": true
}ventru_trust_profile — Read Ventru trust semantics
Return what each Ventru assurance label means, the evidence behind Ventru's own claims, and whether the review is current.
{
"type": "object",
"properties": {}
}{
"readOnlyHint": true
}ventru_unmet_demand — Read aggregated agent demand
Aggregated requests agents made through Ventru, ranked by how often no verified provider existed.
{
"type": "object",
"properties": {
"days": {
"type": "number",
"default": 30
}
}
}{
"readOnlyHint": true
}Prompts
Not advertised
Resources
Not advertised
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
- 319 ms
- 95th percentile latency
- 319 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 319 ms · metadata changed · 14 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http ventru-mcp https://ventru.net/mcpCodex
codex mcp add ventru-mcp --url https://ventru.net/mcpCursor
{
"mcpServers": {
"ventru-mcp": {
"url": "https://ventru.net/mcp"
}
}
}Cline
{
"mcpServers": {
"ventru-mcp": {
"type": "streamableHttp",
"url": "https://ventru.net/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"ventru-mcp": {
"type": "http",
"url": "https://ventru.net/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http ventru-mcp https://ventru.net/mcpClaude Desktop
{
"mcpServers": {
"ventru-mcp": {
"url": "https://ventru.net/mcp"
}
}
}Windsurf
{
"mcpServers": {
"ventru-mcp": {
"serverUrl": "https://ventru.net/mcp"
}
}
}Let your agent find its tools
Find servers like Ventru MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Ventru 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.