Dixa MCP Server
A server for the Dixa API, enabling management of conversations and tags.
Dixa MCP Server
A FastMCP server implementation for the Dixa API, providing resources and tools for managing conversations and tags.
Features
-
Resources
- Search conversations
- Get conversation details
- Get conversation notes
- Get conversation messages
- Get available tags
-
Tools
- Add tags to conversations
- Remove tags from conversations
Project Structure
/src
├── dixa.ts # Main server setup
├── config.ts # Configuration and environment settings
├── types.ts # Shared types and error handling
├── resources/ # Resource implementations
├── schemas/ # Zod schemas for validation
└── tools/ # Tool implementations
Configuration
The server requires the following environment variables:
DIXA_API_KEY: Your Dixa API keyDIXA_API_BASE_URL(optional): Override the default API URL (defaults to 'https://dev.dixa.io/v1')
Usage
- Set up environment variables:
export DIXA_API_KEY='your-api-key'
- Start the server:
npm start
## Running Your Server
### Test with `mcp-cli`
The fastest way to test and debug your server is with `fastmcp dev`:
```bash
npx fastmcp dev server.js
npx fastmcp dev server.ts
This will run your server with mcp-cli for testing and debugging your MCP server in the terminal.
Inspect with MCP Inspector
Another way is to use the official MCP Inspector to inspect your server with a Web UI:
npx fastmcp inspect server.ts
FAQ
How to use with Claude Desktop?
Follow the guide https://modelcontextprotocol.io/quickstart/user and add the following configuration:
{
"mcpServers": {
"my-mcp-server": {
"command": "npx",
"args": [
"tsx",
"/PATH/TO/YOUR_PROJECT/src/index.ts"
],
"env": {
"YOUR_ENV_VAR": "value"
}
}
}
}
Development
Adding a New Resource
- Create a schema in
src/schemas/ - Create the resource in
src/resources/ - Add the resource to
src/dixa.ts
Example resource:
export const myResource = {
uri: "dixa://my-resource",
name: "My Resource",
description: "Description",
load: async (args: MyArgs, apiKey: string) => {
// Implementation
}
};
Adding a New Tool
- Create the tool in
src/tools/ - Add the tool to
src/dixa.ts
Example tool:
export const myTool = {
name: "My Tool",
description: "Description",
execute: async (args: MyArgs, apiKey: string) => {
// Implementation
}
};
Error Handling
The project uses custom error classes:
DixaError: Base error class for API errorsDixaValidationError: For response validation failures
Showcase
[!NOTE]
If you've developed a server using FastMCP, please submit a PR to showcase it here!
- https://github.com/apinetwork/piapi-mcp-server
- https://github.com/Meeting-Baas/meeting-mcp - Meeting BaaS MCP server that enables AI assistants to create meeting bots, search transcripts, and manage recording data
Acknowledgements
- FastMCP is inspired by the Python implementation by Jonathan Lowin.
- Parts of codebase were adopted from LiteMCP.
- Parts of codebase were adopted from Model Context protocolでSSEをやってみる.
Contributing
- Follow the existing patterns for resources and tools
- Add proper JSDoc documentation
- Use the shared utilities in
types.tsandconfig.ts - Update the README if adding new features
Related Servers
Smartlead
Manage Smartlead campaigns, including creation, updates, and sequence management, using the Smartlead API.
Gmail MCP Server
Send emails with attachments through Gmail's SMTP server using AI agents.
Fast Intercom
A high-performance MCP server for analyzing Intercom conversations, offering speeds up to 100x faster than the REST API.
Wassenger
Wassenger MCP server to chat, send messages and automate WhatsApp from any AI model client (free trial available).
S-IMSY MCP Server
Provides SSE and HTTP streamable connection endpoints, authenticated via a SIMSY App token.
DingTalk
A server for interacting with DingTalk workspaces using the Model Context Protocol.
WhatsApp (TypeScript/Baileys)
Connects a personal WhatsApp account to an AI agent using the WhatsApp Web multi-device API.
Email Processing
An email processing server that uses MongoDB for semantic search and SQLite for efficient storage and retrieval.
MyMCPSpace
Access and interact with MyMCPSpace posts, replies, likes, and feeds.
Instagram DMs
Send Instagram DMs via your LLM