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
Email Processing
An email processing server that uses MongoDB for semantic search and SQLite for efficient storage and retrieval.
Universal Contract AI Interface (UCAI)
Universal Contract AI Interface (UCAI) 🔗 ABI to MCP | The open standard for connecting AI agents to blockchain. MCP server generator for smart contracts. Claude + Uniswap, Aave, ERC20, NFTs, DeFi. Python CLI, Web3 integration, transaction simulation. Polygon, Arbitrum, Base, Ethereum EVM chains. Claude, GPT, LLM tooling, Solidity, OpenAI.
vv-mcp
A text-to-speech (TTS) server using the VOICEVOX engine. Requires a running VOICEVOX instance and is currently macOS only.
Sinch
Interact with Sinch APIs for communication services like conversation, email, verification, and voice.
Human-in-the-Loop Slack MCP Server
Allows AI assistants to request information and receive responses from humans via Slack.
Zundamon Voice Synthesis
A voice synthesis server for Zundamon using the VOICEVOX engine.
MCP LinkedIn
Interact with LinkedIn using an unofficial API, requiring email and password for authentication.
WhatsApp Web
An MCP server for interacting with WhatsApp Web, allowing you to send and receive messages.
Chatterbox TTS
Generates text-to-speech audio with automatic playback using the Chatterbox TTS model.
Twitter MCP
Interact with Twitter to post and search for tweets.