{
  "info": {
    "name": "Felt — mcp.ai",
    "description": "REST API for the Felt MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/felt",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "felt_create_or_update_elements",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/or/update/elements",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "or",
            "update",
            "elements"
          ]
        },
        "description": "Create or update map elements using GeoJSON FeatureCollection format. Creates new elements by default; to update existing elements, include 'felt:id' in the feature's properties. Supports Point, LineS",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"type\": \"\",\n  \"map_id\": \"\",\n  \"features\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_create_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "project"
          ]
        },
        "description": "Create a new Felt project with the specified name and visibility settings. Projects are organizational containers for grouping related maps within a workspace.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"visibility\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_delete_element",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/element",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "element"
          ]
        },
        "description": "Tool to delete a specific element from a map. Use when you have both map and element IDs and need to remove the element permanently.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\",\n  \"element_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_delete_layer",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/layer",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "layer"
          ]
        },
        "description": "Tool to delete a specific layer from a map. Use when you have the map's and layer's IDs and need to remove it permanently.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\",\n  \"layer_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_delete_map",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/map",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "map"
          ]
        },
        "description": "Permanently deletes a map and all its associated data from Felt. WARNING: This action cannot be undone. The map and all its layers, elements, and comments will be permanently removed. Use when you hav",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_delete_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "project"
          ]
        },
        "description": "Tool to delete a project and all its contents. Use when you need to permanently remove a project after confirmation.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"project_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_duplicate_map",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/duplicate/map",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "duplicate",
            "map"
          ]
        },
        "description": "Creates a complete copy of a Felt map including all layers, elements, and configuration. Use when you need to clone an existing map to a new location or create a template-based map. The duplicated map",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"title\": \"\",\n  \"map_id\": \"\",\n  \"destination\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_get_map_details",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/map/details",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "map",
            "details"
          ]
        },
        "description": "Retrieves comprehensive details of a specific Felt map including title, URL, layers, elements, basemap settings, access permissions, and timestamps. Requires a valid map ID. Use this when you need to:",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_get_user_details",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/user/details",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "user",
            "details"
          ]
        },
        "description": "Tool to retrieve information about the authenticated user. Use after obtaining a valid token to fetch user profile details.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_list_element_groups",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/element/groups",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "element",
            "groups"
          ]
        },
        "description": "Retrieves all element groups from a Felt map. Element groups are collections of geographic features (points, lines, polygons) organized together. Each group returns a GeoJSON FeatureCollection with th",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_list_elements",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/elements",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "elements"
          ]
        },
        "description": "Lists all elements on a specific map as a GeoJSON FeatureCollection. Returns elements that are not in element groups. Use when you need to retrieve the map's direct elements after obtaining a valid ma",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_list_layers",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/layers",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "layers"
          ]
        },
        "description": "Tool to list all layers on a specific map. Returns all layers present on the map with their complete metadata including status, geometry type, styling, and attributes. Use this when you need to inspec",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"map_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_list_projects",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/projects",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "projects"
          ]
        },
        "description": "Tool to retrieve a list of projects accessible to the user. Use when you need to browse or select from existing projects before proceeding.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"workspace_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_list_sources",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/sources",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "sources"
          ]
        },
        "description": "List all data sources (external data connections) accessible to the authenticated user. Sources represent connections to external data providers like BigQuery, PostgreSQL, S3, Snowflake, etc. Use this",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"workspaceId\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "felt_update_project",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/project",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "project"
          ]
        },
        "description": "Tool to update an existing project's name or visibility. Use after confirming the project_id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"project_id\": \"\",\n  \"visibility\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}