This workflow corresponds to n8n.io template #5651 — we link there as the canonical source.
This workflow follows the HTTP Request Tool → Mcptrigger recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "wrwHlSeU1EaZKJ5H",
"meta": null,
"name": "Mobility API MCP Server",
"tags": [],
"nodes": [
{
"id": "9407e467-6a00-4ee9-8b4d-3b651956dc78",
"name": "Setup Instructions",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1380,
-240
],
"parameters": {
"color": 4,
"height": 1060,
"content": "### \u2699\ufe0f Setup Instructions\n\n1. **Import Workflow**: \nLoad this workflow into your n8n instance\n\n2. **Authentication**: \nNo authentication required\n\n3. **Activate Workflow**:\nEnable the workflow to start the MCP server\n\n4. **Get MCP URL**: \nCopy the webhook URL from the MCP trigger\n\n5. **Connect AI Agent**:\nUse the MCP URL in your AI agent configuration\n\n\n### \ud83d\udca1 Usage Notes\n\u2022 Parameters are auto-populated by AI using $fromAI() expressions\n\u2022 With 2 API endpoints available as tools\n\u2022 Responses maintain original API structure\n\n\n### \ud83d\udee0\ufe0f Customization\n\u2022 Add data transformation nodes if needed\n\u2022 Implement custom error handling\n\u2022 Add logging or monitoring nodes\n\n\u2022 Modify parameter defaults in any HTTP request node as needed\n\n### \ud83d\udcac Need Help?\nPing me on [discord](https://discord.me/cfomodz) for integration guidance and custom automations. Check the [n8n documentation](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/) for more information."
},
"typeVersion": 1
},
{
"id": "89c15181-ecd8-429f-87f2-7cd17c562743",
"name": "Workflow Overview",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1120,
-240
],
"parameters": {
"width": 420,
"height": 920,
"content": "## \ud83d\udee0\ufe0f Mobility MCP Server \u2705 2 operations\n\n### About\nTransit API can be used to obtain time-aggregated data representing moving the people between various spatial points within the Czech Republic. Having A - 'from' and B - 'to' points, the API can return count of people traveling from A to B or people that are from A and traveling to B, etc. The mobility data is based on moving mobile stations in O2 mobile network.\n\n### \ud83d\udd27 How it Works\n\nThis workflow converts the Mobility API into an MCP-compatible interface for AI agents.\n\n\u2022 **MCP Trigger**: Serves as your server endpoint for AI agent requests\n\u2022 **HTTP Request Nodes**: Handle API calls to https://developer.o2.cz/mobility/sandbox/api\n\u2022 **AI Expressions**: Automatically populate parameters via `$fromAI()` placeholders\n\u2022 **Native Integration**: Returns responses directly to the AI agent\n\n\n### \ud83d\udccb Available Operations (2 endpoints)\n\n**Info (1 operations)**\nRetrieve Application Info\n\n**Transit (1 operations)**\nCalculate Transit Route\n\n"
},
"typeVersion": 1
},
{
"id": "f4cab50f-b19e-4163-afbe-9b55b7daf8cf",
"name": "Mobility MCP Server",
"type": "@n8n/n8n-nodes-langchain.mcpTrigger",
"position": [
-620,
-240
],
"parameters": {
"path": "mobility-mcp"
},
"typeVersion": 1
},
{
"id": "4455f27d-e0cc-41b7-b0b0-30517ec3ed01",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-660,
-100
],
"parameters": {
"color": 2,
"width": 300,
"height": 200,
"content": "## Info"
},
"typeVersion": 1
},
{
"id": "7fba4163-260d-44c7-a8c9-47aff6c419c1",
"name": "Retrieve Application Info",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
-520,
-60
],
"parameters": {
"url": "=https://developer.o2.cz/mobility/sandbox/api/info",
"options": {},
"toolDescription": "Information about versions of application and data."
},
"typeVersion": 4.2
},
{
"id": "116eae59-6430-486b-a86e-c340f6609253",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-660,
140
],
"parameters": {
"color": 3,
"width": 300,
"height": 200,
"content": "## Transit"
},
"typeVersion": 1
},
{
"id": "dae3261a-7800-4c66-afd2-aabdae79b7d8",
"name": "Calculate Transit Route",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
-520,
180
],
"parameters": {
"url": "=https://developer.o2.cz/mobility/sandbox/api/transit/{{ $fromAI('from', 'source basic residential unit', 'string') }}/{{ $fromAI('to', 'destination basic residential unit', 'string') }}",
"options": {},
"sendQuery": true,
"queryParameters": {
"parameters": [
{
"name": "fromType",
"value": "={{ $fromAI('fromType', 'occurence type in the source basic residential unit (1 - transit, 2 - visit, 0 - both)', 'string') }}"
},
{
"name": "toType",
"value": "={{ $fromAI('toType', 'occurence type in the destination basic residential unit (1 - transit, 2 - visit, 0 - both)', 'string') }}"
},
{
"name": "uniques",
"value": "={{ $fromAI('uniques', 'all or only uniques (0 - all, 1 - uniques)', 'string') }}"
}
]
},
"toolDescription": "Transit between basic residential units\n\nParameters:\n- Path parameters:\n \u2022 from (required) - Source basic residential unit\n \u2022 to (required) - Destination basic residential unit\n- Query parameters:\n \u2022 fromType (optional) - Occurence type in the source basic residential unit (1 - transit, 2 - visit, 0 - both)\n \u2022 toType (optional) - Occurence type in the destination basic residential unit (1 - transit, 2 - visit, 0 - both)\n \u2022 uniques (required) - All or only uniques (0 - all, 1 - uniques)"
},
"typeVersion": 4.2
}
],
"active": false,
"shared": [
{
"role": "workflow:owner",
"project": {
"id": "G5fce9xGuBAsWBXe",
"icon": null,
"name": "David Ashby <david.ashby.lds@gmail.com>",
"type": "personal",
"createdAt": "2025-06-04T02:55:02.013Z",
"updatedAt": "2025-06-04T02:56:01.361Z",
"projectRelations": [
{
"role": "project:personalOwner",
"user": {
"id": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
"role": "global:owner",
"email": "david.ashby.lds@gmail.com",
"disabled": false,
"lastName": "Ashby",
"settings": {
"npsSurvey": {
"responded": true,
"lastShownAt": 1749357655581
},
"userActivated": true,
"userActivatedAt": 1749075994495,
"easyAIWorkflowOnboarded": true,
"firstSuccessfulWorkflowId": "3N3vVikZb3MckFYm"
},
"createdAt": "2025-06-04T02:55:01.745Z",
"firstName": "David",
"isPending": false,
"updatedAt": "2025-06-08T04:40:58.399Z",
"mfaEnabled": false,
"personalizationAnswers": {
"version": "v4",
"personalization_survey_n8n_version": "1.95.3",
"personalization_survey_submitted_at": "2025-06-04T02:56:07.075Z"
}
},
"userId": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
"createdAt": "2025-06-04T02:55:02.013Z",
"projectId": "G5fce9xGuBAsWBXe",
"updatedAt": "2025-06-04T02:55:02.013Z"
}
]
},
"createdAt": "2025-07-03T17:14:12.273Z",
"projectId": "G5fce9xGuBAsWBXe",
"updatedAt": "2025-07-03T17:14:12.273Z",
"workflowId": "wrwHlSeU1EaZKJ5H"
}
],
"settings": {
"timezone": "America/New_York"
},
"createdAt": "2025-07-03T17:14:12.272Z",
"updatedAt": "2025-07-03T17:17:18.000Z",
"versionId": "26d0fe26-ccf2-432e-bbe2-375132f8f358",
"isArchived": false,
"staticData": null,
"connections": {
"Calculate Transit Route": {
"ai_tool": [
[
{
"node": "Mobility MCP Server",
"type": "ai_tool",
"index": 0
}
]
]
},
"Retrieve Application Info": {
"ai_tool": [
[
{
"node": "Mobility MCP Server",
"type": "ai_tool",
"index": 0
}
]
]
}
},
"triggerCount": 0
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Complete MCP server exposing 2 Mobility API operations to AI agents.
Source: https://n8n.io/workflows/5651/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Need help? Want access to this workflow + many more paid workflows + live Q&A sessions with a top verified n8n creator?
Need help? Want access to this workflow + many more paid workflows + live Q&A sessions with a top verified n8n creator?
An MCP server that exposes 10 specialized AI tools for deep observability over your OpenObserve logs and traces.
Complete MCP server exposing 4 Transportation Laws and Incentives API operations to AI agents.
Complete MCP server exposing 4 BikeWise API v2 API operations to AI agents.