Skip to main content
Glama
S-Alzaid

MCP Server for ElevenLabs

by S-Alzaid

MCP Server for ElevenLabs

A Model Context Protocol (MCP) server specifically designed for ElevenLabs conversational agents, providing tools for agents to interact with external services and perform various tasks.

📋 Project Documentation: This project has specific deployment requirements and structure decisions. See PROJECT-STRUCTURE.md before making any changes.

Features

This MCP server provides the following tools:

  • search_web: Search the web for information

  • get_weather: Get current weather information for a location

  • calculate: Perform mathematical calculations

  • create_sickleave: Create a sick leave document for a patient

Related MCP server: OpenRouter Agents MCP Server

Installation

  1. Install dependencies:

npm install
  1. Start the server:

npm start

ElevenLabs Integration

This server is specifically designed for ElevenLabs conversational agents. For detailed setup instructions, see ELEVENLABS-INTEGRATION.md.

⚠️ IMPORTANT: Before making any changes to this project, read PROJECT-STRUCTURE.md for critical deployment requirements and lessons learned.

Quick Start for ElevenLabs:

npm start

Then add http://localhost:3000/mcp to your ElevenLabs agent's MCP server configuration.

Usage

Development Mode

Run the server:

npm start

Production Mode

Run the server:

npm start

Configuration

The server can be configured by modifying the following:

  • Server name and version: Edit elevenlabs-true-streamable.js

  • Tool implementations: Edit elevenlabs-true-streamable.js

  • Tool schemas: Modify the schemas in elevenlabs-true-streamable.js

Note: This project uses a single-file approach for deployment reliability. All tools and schemas are hardcoded in the main server file.

Adding New Tools

To add a new tool:

  1. Define the tool schema in elevenlabs-true-streamable.js:

{
  name: "new_tool",
  description: "Description of the new tool",
  inputSchema: {
    type: "object",
    properties: {
      parameter: { type: "string", description: "Description of the parameter" }
    },
    required: ["parameter"]
  }
}
  1. Implement the tool handler in elevenlabs-true-streamable.js:

async function handleNewTool(args) {
  // Your tool implementation here
  return {
    content: [
      {
        type: "text",
        text: "Tool result",
      },
    ],
  };
}
  1. Add the tool to the tools array and the handler to the switch statement in elevenlabs-true-streamable.js

Note: This project uses a single-file approach. All modifications should be made directly in elevenlabs-true-streamable.js.

case "new_tool":
  return await handleNewTool(args);

MCP Client Configuration

To use this server with an MCP client, add the following configuration:

{
  "mcpServers": {
    "my-mcp-server": {
      "command": "node",
      "args": ["path/to/your/mcp-server/dist/index.js"],
      "env": {}
    }
  }
}

Development

Project Structure

src/
├── index.ts      # Main server entry point
├── tools.ts      # Tool definitions and implementations
└── types.ts      # Type definitions (if needed)

Scripts

  • npm run build: Build the TypeScript code

  • npm run dev: Run in development mode with hot reloading

  • npm start: Run the built server

  • npm test: Run tests (when implemented)

Dependencies

  • @modelcontextprotocol/sdk: MCP SDK for server implementation

  • zod: Schema validation and type safety

  • typescript: TypeScript compiler

  • tsx: TypeScript execution for development

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/S-Alzaid/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server