Delopt MCP
An AI dispatch server for food and local delivery that assigns orders to drivers, sequences stops, and times departures to optimize routes and reduce delivery costs.
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://api.delopt.transopt.io/mcp/demoWhat you can do with it
- Assign orders to available drivers
- Sequence stops for optimal routes
- Calculate realistic arrival times
- Prioritize delayed or urgent orders
Source and maintenance
Protocol and capabilities
- Server
- delopt 4.36.0
- MCP protocol
- 2025-06-18
- Tools
- 5 advertised
- Resources
- 3 advertised
- Resource templates
- 0 advertised
- Prompts
- 2 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
5 advertised
plan_deliveries — Plan fleet deliveries
Plan which vehicle delivers which orders, in what order, and when each vehicle leaves the depot, minimising customer waiting time. Built for live dispatch through a busy shift, where orders keep arriving and each driver goes out many times. Call it again whenever new orders come in or a driver returns, with every order not yet sent out. Dispatch only each vehicle's first run: later runs are a look-ahead the next call revises. Every order is assigned, so the vehicles' combined capacity (times max_deliveries_per_vehicle) must cover all orders. Returns per-vehicle stop lists with ETAs and each order's wait versus its target, plus headline KPIs. The plan is a recommendation: nothing is stored or sent to drivers. The plan minimises how long customers wait, with an extra cost per minute an order is late. Far orders get a little more time than their wait target (distance_grace_minutes in the result). Set freshness to the user's kind of goods (hot meals, iced coffee, ...) to keep sensitive orders' rides short. The defaults suit same-day food delivery.
{
"type": "object",
"$defs": {
"Place": {
"type": "object",
"title": "Place",
"properties": {
"lat": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lat",
"default": null
},
"lon": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lon",
"default": null
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address",
"default": null,
"description": "Street address, geocoded server-side when lat/lon are omitted"
}
},
"description": "A location given either as a street address or as coordinates."
},
"Freshness": {
"enum": [
"robust",
"hot",
"cold",
"crispy",
"frozen"
],
"type": "string",
"title": "Freshness",
"description": "Goods class for how fast an order loses quality on the road. Resolved\nby optimise() into a degrade start and weight relative to\nfactor_wait_excess - see FRESHNESS_TERMS and LESSONS_LEARNED.md\n(\"Freshness classes\")."
},
"OrderSpec": {
"type": "object",
"title": "OrderSpec",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"description": "Your reference for the order"
},
"lat": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lat",
"default": null
},
"lon": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lon",
"default": null
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address",
"default": null,
"description": "Street address, geocoded server-side when lat/lon are omitted"
},
"priority": {
"type": "boolean",
"title": "Priority",
"default": false,
"description": "Send this order out as soon as possible"
},
"ready_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Ready At",
"default": null,
"description": "When the order is ready to leave the depot. Omit to mean now."
},
"freshness": {
"anyOf": [
{
"$ref": "#/$defs/Freshness"
},
{
"type": "null"
}
],
"default": null,
"description": "How fast the order loses quality on the road: robust (not modelled), hot (hot meals), cold (iced coffee, cold drinks), crispy (fries, delicate food) or frozen. Omit to use plan_deliveries' freshness."
},
"received_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Received At",
"default": null,
"description": "When the customer placed the order. Omit to mean now."
},
"wait_target_minutes": {
"type": "number",
"title": "Wait Target Minutes",
"default": 15,
"minimum": 0,
"description": "Promised wait, from received_at to arrival at the customer"
}
}
},
"VehicleSpec": {
"type": "object",
"title": "VehicleSpec",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"description": "Your reference for the vehicle or driver"
},
"capacity": {
"type": "integer",
"title": "Capacity",
"default": 5,
"description": "How many orders the vehicle can carry at once",
"exclusiveMinimum": 0
},
"available_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Available At",
"default": null,
"description": "When the vehicle is back at the depot and free for a new route. Omit if it is available now."
}
}
}
},
"title": "plan_deliveriesArguments",
"required": [
"vehicles",
"orders"
],
"properties": {
"depot": {
"anyOf": [
{
"$ref": "#/$defs/Place"
},
{
"type": "null"
}
],
"default": null,
"description": "Where the vehicles start from. Omit only if your API key is bound to a depot, in which case the server supplies it."
},
"orders": {
"type": "array",
"items": {
"$ref": "#/$defs/OrderSpec"
},
"title": "Orders",
"minItems": 1
},
"vehicles": {
"type": "array",
"items": {
"$ref": "#/$defs/VehicleSpec"
},
"title": "Vehicles",
"minItems": 1
},
"freshness": {
"anyOf": [
{
"$ref": "#/$defs/Freshness"
},
{
"type": "null"
}
],
"default": null,
"description": "Freshness class for orders that don't give their own, usually the shop's kind of goods: hot (hot meals), cold (iced coffee, cold drinks), crispy (fries, delicate food), frozen, or robust (not modelled, the default). Sensitive orders get shorter rides at a cost of about 0.5-1 minute average wait per protected class."
},
"factor_wait": {
"type": "number",
"title": "Factor Wait",
"default": 1,
"maximum": 100,
"minimum": 0,
"description": "Cost per minute of every order's wait, from received_at to arrival (default 1). Only its ratio to factor_wait_excess matters; leave the default unless the user asks for something specific."
},
"factor_wait_excess": {
"type": "number",
"title": "Factor Wait Excess",
"default": 10,
"maximum": 10000,
"minimum": 0,
"description": "Lateness weight: extra cost per minute an order is late, beyond its wait_target_minutes plus distance grace (default 10), so 40 minutes late costs far more than 5. Values from 1 to 100 give similar plans: the default keeps the late tail down without raising the average wait. Change it only if the user asks to trade one for the other."
},
"optimization_seconds": {
"type": "integer",
"title": "Optimization Seconds",
"default": 5,
"maximum": 15,
"minimum": 1,
"description": "Solver time budget in seconds; more can give slightly better plans. Below 5 the plan is returned with a warning, as priority orders may not be sent out first."
},
"max_deliveries_per_vehicle": {
"type": "integer",
"title": "Max Deliveries Per Vehicle",
"default": 2,
"maximum": 2,
"minimum": 1,
"description": "How many consecutive delivery runs to plan per vehicle. Only the first run of each vehicle needs dispatching now: plan again when a vehicle returns."
}
}
}{
"type": "object",
"$defs": {
"StopSummary": {
"type": "object",
"title": "StopSummary",
"required": [
"order_id",
"address",
"eta",
"wait_minutes",
"wait_target_minutes",
"over_target"
],
"properties": {
"eta": {
"type": "string",
"title": "Eta",
"format": "date-time",
"description": "Estimated arrival at the customer"
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address"
},
"order_id": {
"type": "string",
"title": "Order Id"
},
"over_target": {
"type": "boolean",
"title": "Over Target",
"description": "Wait above wait_target_minutes plus distance_grace_minutes"
},
"wait_minutes": {
"type": "number",
"title": "Wait Minutes",
"description": "From received_at to arrival"
},
"wait_target_minutes": {
"type": "number",
"title": "Wait Target Minutes"
},
"distance_grace_minutes": {
"type": "number",
"title": "Distance Grace Minutes",
"default": 0,
"description": "Extra time beyond wait_target_minutes allowed because the customer is far from the depot"
}
}
},
"DeliverySummary": {
"type": "object",
"title": "DeliverySummary",
"required": [
"vehicle_id",
"depart_at",
"return_at",
"stops"
],
"properties": {
"stops": {
"type": "array",
"items": {
"$ref": "#/$defs/StopSummary"
},
"title": "Stops",
"description": "In visiting order"
},
"notice": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notice",
"default": null,
"description": "Account notice to pass on to the user, e.g. a trial ending soon"
},
"depart_at": {
"type": "string",
"title": "Depart At",
"format": "date-time"
},
"return_at": {
"type": "string",
"title": "Return At",
"format": "date-time"
},
"vehicle_id": {
"type": "string",
"title": "Vehicle Id"
}
}
}
},
"title": "PlanSummary",
"required": [
"orders_planned",
"vehicles_used",
"avg_wait_minutes",
"max_wait_minutes",
"orders_over_target",
"unplanned_order_ids",
"deliveries"
],
"properties": {
"notice": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notice",
"default": null,
"description": "Account notice to pass on to the user, e.g. a trial ending soon"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
},
"title": "Warnings",
"description": "Things to tell the user about how this plan was made"
},
"deliveries": {
"type": "array",
"items": {
"$ref": "#/$defs/DeliverySummary"
},
"title": "Deliveries"
},
"vehicles_used": {
"type": "integer",
"title": "Vehicles Used"
},
"orders_planned": {
"type": "integer",
"title": "Orders Planned"
},
"avg_wait_minutes": {
"type": "number",
"title": "Avg Wait Minutes"
},
"max_wait_minutes": {
"type": "number",
"title": "Max Wait Minutes"
},
"orders_over_target": {
"type": "integer",
"title": "Orders Over Target"
},
"unplanned_order_ids": {
"type": "array",
"items": {
"type": "string"
},
"title": "Unplanned Order Ids",
"description": "Orders the plan does not cover, if any"
}
}
}{
"title": "Plan fleet deliveries",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}plan_vehicle_departure — Plan a driver's departure
A driver is leaving the depot now with these orders: find the best visiting sequence and each order's ETA. The orders must fit the vehicle's capacity. To decide which orders a driver should take, use plan_deliveries instead. Nothing is stored or sent to the driver.
{
"type": "object",
"$defs": {
"Place": {
"type": "object",
"title": "Place",
"properties": {
"lat": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lat",
"default": null
},
"lon": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lon",
"default": null
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address",
"default": null,
"description": "Street address, geocoded server-side when lat/lon are omitted"
}
},
"description": "A location given either as a street address or as coordinates."
},
"Freshness": {
"enum": [
"robust",
"hot",
"cold",
"crispy",
"frozen"
],
"type": "string",
"title": "Freshness",
"description": "Goods class for how fast an order loses quality on the road. Resolved\nby optimise() into a degrade start and weight relative to\nfactor_wait_excess - see FRESHNESS_TERMS and LESSONS_LEARNED.md\n(\"Freshness classes\")."
},
"OrderSpec": {
"type": "object",
"title": "OrderSpec",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"description": "Your reference for the order"
},
"lat": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lat",
"default": null
},
"lon": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude in decimal degrees"
},
{
"type": "null"
}
],
"title": "Lon",
"default": null
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address",
"default": null,
"description": "Street address, geocoded server-side when lat/lon are omitted"
},
"priority": {
"type": "boolean",
"title": "Priority",
"default": false,
"description": "Send this order out as soon as possible"
},
"ready_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Ready At",
"default": null,
"description": "When the order is ready to leave the depot. Omit to mean now."
},
"freshness": {
"anyOf": [
{
"$ref": "#/$defs/Freshness"
},
{
"type": "null"
}
],
"default": null,
"description": "How fast the order loses quality on the road: robust (not modelled), hot (hot meals), cold (iced coffee, cold drinks), crispy (fries, delicate food) or frozen. Omit to use plan_deliveries' freshness."
},
"received_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Received At",
"default": null,
"description": "When the customer placed the order. Omit to mean now."
},
"wait_target_minutes": {
"type": "number",
"title": "Wait Target Minutes",
"default": 15,
"minimum": 0,
"description": "Promised wait, from received_at to arrival at the customer"
}
}
}
},
"title": "plan_vehicle_departureArguments",
"required": [
"vehicle",
"orders"
],
"properties": {
"depot": {
"anyOf": [
{
"$ref": "#/$defs/Place"
},
{
"type": "null"
}
],
"default": null,
"description": "Where the vehicles start from. Omit only if your API key is bound to a depot, in which case the server supplies it."
},
"orders": {
"type": "array",
"items": {
"$ref": "#/$defs/OrderSpec"
},
"title": "Orders",
"minItems": 1
},
"vehicle": {
"type": "object",
"title": "VehicleSpec",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"description": "Your reference for the vehicle or driver"
},
"capacity": {
"type": "integer",
"title": "Capacity",
"default": 5,
"description": "How many orders the vehicle can carry at once",
"exclusiveMinimum": 0
},
"available_at": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Available At",
"default": null,
"description": "When the vehicle is back at the depot and free for a new route. Omit if it is available now."
}
},
"description": "The vehicle (driver) leaving now."
}
}
}{
"type": "object",
"$defs": {
"StopSummary": {
"type": "object",
"title": "StopSummary",
"required": [
"order_id",
"address",
"eta",
"wait_minutes",
"wait_target_minutes",
"over_target"
],
"properties": {
"eta": {
"type": "string",
"title": "Eta",
"format": "date-time",
"description": "Estimated arrival at the customer"
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address"
},
"order_id": {
"type": "string",
"title": "Order Id"
},
"over_target": {
"type": "boolean",
"title": "Over Target",
"description": "Wait above wait_target_minutes plus distance_grace_minutes"
},
"wait_minutes": {
"type": "number",
"title": "Wait Minutes",
"description": "From received_at to arrival"
},
"wait_target_minutes": {
"type": "number",
"title": "Wait Target Minutes"
},
"distance_grace_minutes": {
"type": "number",
"title": "Distance Grace Minutes",
"default": 0,
"description": "Extra time beyond wait_target_minutes allowed because the customer is far from the depot"
}
}
}
},
"title": "DeliverySummary",
"required": [
"vehicle_id",
"depart_at",
"return_at",
"stops"
],
"properties": {
"stops": {
"type": "array",
"items": {
"$ref": "#/$defs/StopSummary"
},
"title": "Stops",
"description": "In visiting order"
},
"notice": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notice",
"default": null,
"description": "Account notice to pass on to the user, e.g. a trial ending soon"
},
"depart_at": {
"type": "string",
"title": "Depart At",
"format": "date-time"
},
"return_at": {
"type": "string",
"title": "Return At",
"format": "date-time"
},
"vehicle_id": {
"type": "string",
"title": "Vehicle Id"
}
}
}{
"title": "Plan a driver's departure",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}geocode_address — Look up an address
Look up coordinates and a short street address for a free-text address. Include the postcode in the address: it helps a lot. Check `precise`: when false, only a town or street was matched and the coordinates are an approximate area centre. Check `routable` too: false means Delopt has no road data for that place yet and plans there are refused.
{
"type": "object",
"title": "geocode_addressArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"minLength": 1,
"description": "Free-text address: street, number, town. Including the postcode helps a lot."
}
}
}{
"type": "object",
"title": "GeocodeResult",
"required": [
"lat",
"lon",
"address",
"precise"
],
"properties": {
"lat": {
"type": "number",
"title": "Lat"
},
"lon": {
"type": "number",
"title": "Lon"
},
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address"
},
"precise": {
"type": "boolean",
"title": "Precise",
"description": "False when only a town or street was matched, so lat/lon is an approximate area centre rather than the address itself"
},
"routable": {
"type": "boolean",
"title": "Routable",
"default": true,
"description": "False when this place is outside the regions Delopt has road data for, so plans there are refused (see delopt://guide/getting-started)"
}
}
}{
"title": "Look up an address",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_account_status — Check account status
The caller's Delopt plan and what is left of it: vehicle and rate limits, today's address lookups, the free trial and how to upgrade. Use it when a plan is refused for a limit, or when the user asks about their plan, trial or remaining lookups. It spends no lookups.
{
"type": "object",
"title": "get_account_statusArguments",
"properties": {}
}{
"type": "object",
"$defs": {
"TrialStatus": {
"type": "object",
"title": "TrialStatus",
"required": [
"plan",
"ends_at",
"days_left"
],
"properties": {
"plan": {
"type": "string",
"title": "Plan"
},
"ends_at": {
"type": "string",
"title": "Ends At",
"format": "date-time"
},
"days_left": {
"type": "integer",
"title": "Days Left"
}
}
},
"AddressLookups": {
"type": "object",
"title": "AddressLookups",
"required": [
"limit_per_day",
"used_today",
"remaining_today",
"resets_at"
],
"properties": {
"resets_at": {
"type": "string",
"title": "Resets At",
"format": "date-time",
"description": "Next UTC midnight"
},
"used_today": {
"type": "integer",
"title": "Used Today"
},
"limit_per_day": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Limit Per Day",
"description": "Daily budget of address lookups (UTC day); null = unlimited"
},
"remaining_today": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Remaining Today",
"description": "Lookups left today; null when the plan is unlimited"
}
}
}
},
"title": "AccountStatus",
"required": [
"plan",
"channel",
"max_vehicles",
"rate_limit",
"address_lookups",
"free_trial_available",
"subscription_status",
"upgrade_url"
],
"properties": {
"plan": {
"type": "string",
"title": "Plan",
"description": "free, basic, advanced, pro, enterprise or demo"
},
"trial": {
"anyOf": [
{
"$ref": "#/$defs/TrialStatus"
},
{
"type": "null"
}
],
"default": null,
"description": "The free trial, while one is running"
},
"notice": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Notice",
"default": null,
"description": "Something to pass on to the user, e.g. a trial that ended"
},
"channel": {
"type": "string",
"title": "Channel",
"description": "full (web app, REST API and MCP) or mcp (AI assistants only)"
},
"rate_limit": {
"type": "string",
"title": "Rate Limit",
"description": "Tool calls allowed, e.g. 30/minute"
},
"upgrade_url": {
"type": "string",
"title": "Upgrade Url"
},
"max_vehicles": {
"type": "integer",
"title": "Max Vehicles",
"description": "Vehicles allowed in one plan"
},
"address_lookups": {
"$ref": "#/$defs/AddressLookups"
},
"subscription_status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Subscription Status"
},
"free_trial_available": {
"type": "boolean",
"title": "Free Trial Available",
"description": "True when the account can still start a free trial"
}
}
}{
"title": "Check account status",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}request_more_vehicles — Request more vehicles
Ask the Delopt team for a plan with more vehicles than the largest self-serve plan allows (8). For up to 8 vehicles, upgrading the plan is enough, so nothing is sent: the answer says which plan fits. Asking again updates the open request. The team follows up with the account's email address.
{
"type": "object",
"title": "request_more_vehiclesArguments",
"required": [
"vehicles_needed"
],
"properties": {
"note": {
"anyOf": [
{
"type": "string",
"maxLength": 500
},
{
"type": "null"
}
],
"title": "Note",
"default": null,
"description": "Optional: what the fleet is, or anything else the team should know"
},
"vehicles_needed": {
"type": "integer",
"title": "Vehicles Needed",
"maximum": 500,
"minimum": 1,
"description": "How many vehicles one plan should be able to cover"
}
}
}{
"type": "object",
"title": "CapacityRequestResult",
"required": [
"recorded",
"vehicles_requested",
"message"
],
"properties": {
"message": {
"type": "string",
"title": "Message",
"description": "What to tell the user"
},
"recorded": {
"type": "boolean",
"title": "Recorded",
"description": "True when the request was passed to the Delopt team"
},
"vehicles_requested": {
"type": "integer",
"title": "Vehicles Requested"
}
}
}{
"title": "Request more vehicles",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
2 advertised
dispatch_pending_orders — Dispatch pending orders
Plan which driver takes which pending orders, and when each should leave.
- depot
- No description (required)
- drivers
- No description (required)
- orders
- No description (required)
sequence_driver_departure — Sequence a driver's departure
Find the best stop order and ETAs for a driver leaving the depot now.
- driver
- No description (required)
- orders
- No description (required)
- depot
- No description
Resources
3 advertised
getting_started_resource — Getting started with Delopt
How the tools fit together, how to give orders, times and depots, and what comes back.
delopt://guide/getting-startedlimits_resource — Plan limits
Vehicles per plan, rate limits and per-call caps for each Delopt plan tier.
delopt://guide/limitssample_orders_resource — Sample orders
A depot, drivers and orders as coordinates, ready to pass to plan_deliveries to see a plan.
delopt://guide/sample-orders30-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
- 1437 ms
- 95th percentile latency
- 1437 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1437 ms · metadata changed · 5 tool(s), 3 resource(s), 0 resource template(s), 2 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http delopt-mcp-transopt https://api.delopt.transopt.io/mcp/demoCodex
codex mcp add delopt-mcp-transopt --url https://api.delopt.transopt.io/mcp/demoCursor
{
"mcpServers": {
"delopt-mcp-transopt": {
"url": "https://api.delopt.transopt.io/mcp/demo"
}
}
}Cline
{
"mcpServers": {
"delopt-mcp-transopt": {
"type": "streamableHttp",
"url": "https://api.delopt.transopt.io/mcp/demo",
"disabled": false
}
}
}VS Code
{
"servers": {
"delopt-mcp-transopt": {
"type": "http",
"url": "https://api.delopt.transopt.io/mcp/demo"
}
}
}Gemini CLI
gemini mcp add --transport http delopt-mcp-transopt https://api.delopt.transopt.io/mcp/demoClaude Desktop
{
"mcpServers": {
"delopt-mcp-transopt": {
"url": "https://api.delopt.transopt.io/mcp/demo"
}
}
}Windsurf
{
"mcpServers": {
"delopt-mcp-transopt": {
"serverUrl": "https://api.delopt.transopt.io/mcp/demo"
}
}
}Let your agent find its tools
Find servers like Delopt 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 Delopt 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.