MCP server for creating Twilio calls via NerveSparks CI API.
To use this MCP server in Cursor, you need to configure it in Cursor's MCP settings.
-
Build the Docker image (if you haven't already):
docker build -t nervesparks-mcp:latest .Or if using a published image from Docker Hub:
docker pull YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest docker tag YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest nervesparks-mcp:latest
-
Ensure Docker Desktop is running on your machine.
-
Open Cursor's MCP configuration file:
- The configuration file is located at:
~/.cursor/mcp.json(or%APPDATA%\Cursor\mcp.jsonon Windows) - If the file doesn't exist, create it.
- The configuration file is located at:
-
Add the MCP server configuration:
Add the following configuration to your
mcp.jsonfile:{ "mcpServers": { "nervesparks-python-mcp": { "command": "docker", "args": [ "run", "-i", "--rm", "nervesparks-mcp:latest" ] } } }Note: If you already have other MCP servers configured, add the
nervesparks-python-mcpentry to the existingmcpServersobject. -
Restart Cursor to load the new MCP server configuration.
-
Verify the connection:
- The MCP server should now be available in Cursor
- You can test it by asking Cursor to use the
pingtool orcreateCalltool - Check Cursor's MCP status/connection indicators to confirm it's connected
If this is your first MCP server, your ~/.cursor/mcp.json should look like:
{
"mcpServers": {
"nervesparks-python-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"nervesparks-mcp:latest"
]
}
}
}-
MCP server not appearing in Cursor:
- Verify the Docker image exists:
docker images | grep nervesparks-mcp - Check that Docker Desktop is running
- Ensure the JSON syntax in
mcp.jsonis valid - Restart Cursor after making configuration changes
- Verify the Docker image exists:
-
Connection errors:
- Check Docker logs if the container fails to start
- Verify the image name matches exactly:
nervesparks-mcp:latest
To make your image available for others to use, publish it to Docker Hub:
- Docker Hub account (create one at https://hub.docker.com)
- Docker Desktop installed and running
-
Login to Docker Hub:
docker login
-
Tag your image with your Docker Hub username:
docker build -t YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest . docker tag nervesparks-mcp:latest YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest -
Push to Docker Hub:
docker push YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest
Or use the provided script:
chmod +x publish.sh ./publish.sh YOUR_DOCKERHUB_USERNAME
-
Make it public (optional):
- Go to https://hub.docker.com
- Find your repository:
YOUR_DOCKERHUB_USERNAME/nervesparks-mcp - Go to Settings → Visibility → Make it public
Once published, anyone can pull and use your image:
docker pull YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest
docker run -it --name nervesparks-mcp-server YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latestOr update docker-compose.yml to use the published image:
services:
mcp-server:
image: YOUR_DOCKERHUB_USERNAME/nervesparks-mcp:latest
# ... rest of config- Docker Desktop installed and running
- Docker Compose (included with Docker Desktop)
-
Build and run with Docker Compose:
docker-compose up --build
-
Run in detached mode (background):
docker-compose up -d --build
-
View logs:
docker-compose logs -f
-
Stop the container:
docker-compose down
-
Build the image:
docker build -t nervesparks-mcp:latest . -
Run the container:
docker run -it --name nervesparks-mcp-server nervesparks-mcp:latest
-
Run in detached mode:
docker run -d --name nervesparks-mcp-server nervesparks-mcp:latest
Since this MCP server uses stdio, you'll need to configure your MCP client to connect to the Docker container's stdio. The exact configuration depends on your MCP client setup.
-
Check if container is running:
docker ps
-
View container logs:
docker logs nervesparks-mcp-server
-
Restart container:
docker restart nervesparks-mcp-server
-
Remove container:
docker rm -f nervesparks-mcp-server