directus-mcp
Enables interaction with the Directus API through a standardized Model Context Protocol, facilitating data management and enhancing application capabilities by integrating AI functionality.
Author
pixelsock
Quick Info
Actions
Tags
Directus MCP Server
A Node.js server implementing Model Context Protocol (MCP) for Directus CMS. Enable AI Clients to interact with the Directus API through the Model Context Protocol (MCP).
ℹ Prerequisites
▶️ Quick start
-
Get your Directus API credentials
-
Go to your Directus instance
- Create a static access token or get your email and password
-
Keep these credentials secure
-
Add to your AI editor
json
{
"mcpServers": {
"directus": {
"command": "npx",
"args": ["-y", "@pixelsock/directus-mcp@latest"],
"env": {
"DIRECTUS_URL": "https://your-directus-instance.com",
"DIRECTUS_ACCESS_TOKEN": "YOUR_ACCESS_TOKEN"
}
}
}
}
Alternatively, you can use email/password authentication:
json
{
"mcpServers": {
"directus": {
"command": "npx",
"args": ["-y", "@pixelsock/directus-mcp@latest"],
"env": {
"DIRECTUS_URL": "https://your-directus-instance.com",
"DIRECTUS_EMAIL": "your-email@example.com",
"DIRECTUS_PASSWORD": "your-password"
}
}
}
}
For Cursor:
- Go to Settings → Cursor Settings → MCP
- Click
+ Add New Global MCP Server - Paste configuration
- Replace placeholder values with your Directus credentials
- Save and restart Cursor
For Claude Desktop:
- Open Settings → Developer
- Click
Edit Config - Open
claude_desktop_config.jsonin a code editor and paste configuration - Replace placeholder values with your Directus credentials
- Save and restart Claude
❓ Troubleshooting
If you are having issues starting the server in your MCP client e.g. Cursor or Claude Desktop, please try the following.
Ensure you have valid Directus credentials
- Verify that your Directus URL is correct and accessible
- Check that your access token or email/password credentials are valid
- Replace the credentials in your MCP client configuration
- Save and restart your MCP client
Ensure you have Node and NPM installed
Run the following commands to confirm you have Node and NPM installed:
node -v
npm -v
Clear your NPM cache
Sometimes clearing your NPM cache can resolve issues with npx.
npm cache clean --force
🛠️ Available tools
Collections and Items
getItems // Get items from a collection
getItem // Get a single item from a collection by ID
createItem // Create a new item in a collection
updateItem // Update an existing item in a collection
deleteItem // Delete an item from a collection
getCollections // Get all collection schemas
getFields // Get fields for a collection
getRelations // Get relations for a collection
Files
getFiles // Get files from Directus
uploadFile // Upload a file to Directus
Users and Permissions
login // Login to Directus and get an access token
getUsers // Get users from Directus
getCurrentUser // Get the current user info
getRoles // Get roles from Directus
getPermissions // Get permissions from Directus
System
getSystemInfo // Get system information from Directus
getActivity // Get activity logs from Directus
getConfig // Get current configuration information
🚧 Development mode
If you want to run the server in development mode:
- Clone and install:
shell
git clone https://github.com/pixelsock/directus-mcp.git
cd directus-mcp
npm install
- Add your credentials to
.env:
shell
# .env
DIRECTUS_URL=https://your-directus-instance.com
DIRECTUS_ACCESS_TOKEN=your_token_here
# Or use email/password
DIRECTUS_EMAIL=your-email@example.com
DIRECTUS_PASSWORD=your-password
- Start development server:
shell npm run dev
