- Home
- MCP servers
- MCP Agent Server
MCP Agent Server
- typescript
3
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You deploy and operate an MCP Agent Server that acts as a modular, persistent AI brain for agents. It integrates with workflow engines like n8n, runs in Docker, and provides a memory-driven, learning-enabled platform for managing AI employees across your business tasks.
How to use
You can interact with the MCP Agent Server over HTTP using a client of your choice. The server exposes endpoints to manage users, API keys, agents, and agent memory, and it can trigger agent actions to integrate with your existing workflows.
How to install
Prerequisites you need before installing:
- Node.js and Docker are installed on your machine.
- You will run the server using Docker Compose.
Step by step install and run flow:
1. Ensure Node.js and Docker are installed.
2. Remove any comments from package.json (JSON does not support comments).
3. Run `npm install` to install dependencies.
4. Use `docker-compose up --build` to start all services.
5. The MCP server will be available at `http://localhost:4000`.
Configuration, security, and usage notes
API endpoints (except health and user management) require an x-api-key header for authentication. Manage API keys per user to secure access. Use the provided user management endpoints to register, log in, and handle API keys.
Key endpoints to know:
POST /users/registerto register a new userPOST /users/loginto authenticate and obtain an API keyGET /users/me/api-keysto list keysPOST /users/me/api-keysto create a keyDELETE /users/me/api-keys/:idto revoke a keyGET /agents/:id/memoryandPOST /agents/:id/memoryto manage agent memoryPOST /agents/:id/triggerto initiate an agent action within your workflow system
Access to the MCP Agent Server is designed for straightforward deployment with Docker Compose. Use the standard port 4000 and pass your API key via the x-api-key header in all requests that require authentication.
Example interactions
# Register a new user
Invoke-RestMethod -Uri "http://localhost:4000/users/register" -Method Post -ContentType "application/json" -Body '{"email": "user@example.com", "password": "yourpassword"}'
# Login and get API key
$login = Invoke-RestMethod -Uri "http://localhost:4000/users/login" -Method Post -ContentType "application/json" -Body '{"email": "user@example.com", "password": "yourpassword"}'
$apiKey = $login.apiKey
# List API keys
Invoke-RestMethod -Uri "http://localhost:4000/users/me/api-keys" -Method Get -Headers @{ "x-api-key" = $apiKey }
# Create a new API key
Invoke-RestMethod -Uri "http://localhost:4000/users/me/api-keys" -Method Post -Headers @{ "x-api-key" = $apiKey }
# Revoke an API key (replace 1 with the actual key id)
Invoke-RestMethod -Uri "http://localhost:4000/users/me/api-keys/1" -Method Delete -Headers @{ "x-api-key" = $apiKey }
# Register a new user
curl -X POST http://localhost:4000/users/register -H "Content-Type: application/json" -d '{"email": "user@example.com", "password": "yourpassword"}'
# Login and get API key
curl -X POST http://localhost:4000/users/login -H "Content-Type: application/json" -d '{"email": "user@example.com", "password": "yourpassword"}'
# List API keys
curl http://localhost:4000/users/me/api-keys -H "x-api-key: <your-api-key>"
# Create a new API key
curl -X POST http://localhost:4000/users/me/api-keys -H "x-api-key: <your-api-key>"
# Revoke an API key (replace 1 with the actual key id)
curl -X DELETE http://localhost:4000/users/me/api-keys/1 -H "x-api-key: <your-api-key>"
Available tools
register_user
Register a new user with an email and password to access MCP services.
login
Authenticate a user and receive an API key for subsequent requests.
list_api_keys
Retrieve all API keys associated with the authenticated user.
create_api_key
Generate a new API key for the authenticated user.
revoke_api_key
Revoke an existing API key by its identifier.
add_memory
Add memory or feedback to a specific agent to enrich its persistent knowledge.
list_memory
List all memory and feedback entries for a given agent.
trigger_agent
Trigger an agent action to integrate with an external workflow like n8n.