MCP Streamable HTTP tool
Use a public MCP Streamable HTTP endpoint to expose an exact reviewed tool. Vintraa currently publishes only tools declared read-only and non-destructive, with no server credentials.
- Adapter
mcp-streamable-http-v1- Runtime
REMOTE_MCP- Inspection type
MCP_SERVER- Source
- Public MCP Streamable HTTP endpoint
What Vintraa can publish
- A public HTTPS Streamable HTTP endpoint that negotiates MCP 2025-06-18.
- Tools whose annotations set readOnlyHint: true and do not set destructiveHint: true.
- One exact reviewed tool name and input schema per Vintraa action.
- No server authentication and no post-execution approval requirement.
Serve the source contract publicly
Replace the example host and identifiers with your own. Do not add API keys, tokens, customer secrets, or signing private keys to the source contract.
json{
"jsonrpc": "2.0",
"id": "<tools-list-request-id>",
"result": {
"tools": [
{
"name": "get_rota_status",
"description": "Read the current status of a rota.",
"inputSchema": {
"type": "object",
"properties": {
"rotaId": { "type": "string" }
},
"required": ["rotaId"],
"additionalProperties": false
},
"annotations": {
"readOnlyHint": true,
"destructiveHint": false
}
}
]
}
}Ask Vintraa to normalize it
Run this after the authentication example on the main developer page. An active publisher membership is required. The returned inspection is the source of truth.
bash · curl + jq# Continue in the same shell after signing in and creating a publisher.
export VINTRAA_PUBLISHER_ID="replace-with-your-publisher-id"
export MCP_SERVER_URL="https://agent.example.com/replace-this"
curl --fail-with-body --silent --show-error \
--request POST \
--header "Authorization: Bearer $VINTRAA_TOKEN" \
--header 'Content-Type: application/json' \
--data "$(jq -nc \
--arg source "$MCP_SERVER_URL" \
'{sourceType:"MCP_SERVER",source:$source}')" \
"$VINTRAA_API/publishers/$VINTRAA_PUBLISHER_ID/agent-import-inspections" | jqConfirm the publishable binding
These examples show the bounded binding required at publication. Compare every field with Vintraa's inspection result and your deployed behavior.
json{
"type": "mcp-tool",
"tool": "get_rota_status",
"readOnly": true,
"destructive": false,
"securityRequired": false
}json{
"rotaId": "rota_123"
}What Vintraa sends
- 01
Vintraa initializes a fresh MCP session, sends notifications/initialized, then uses tools/list or tools/call.
- 02
The endpoint must accept application/json and text/event-stream responses and echo JSON-RPC request identifiers correctly.
- 03
Tool annotations are publisher declarations, not a security boundary; Vintraa also freezes and enforces the reviewed binding.
Not currently publishable
- Credentialed MCP servers, customer/developer credential passthrough, or endpoint drift.
- Mutating or destructive tools, result-only approval, and tools without an explicit read-only declaration.
- Multi-event streaming as a publishable execution result.
Publication checklist
- 01
The endpoint is public HTTPS and negotiates MCP protocol version 2025-06-18.
- 02
Every retained tool is explicitly read-only, non-destructive, unauthenticated, and body-schema bounded.
- 03
The sandbox run succeeds for the exact frozen tool name and representative input.
- 04
The release needs no secrets, post-execution approval, or streaming result handling.