BoomBidiBuyBuy/tuskr-mcp-server
If you are the rightful owner of tuskr-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
This document provides a structured summary of an MCP server implementation for the Tuskr REST API.
tuskr-mcp-server
Implements a Model Context Protocol (MCP) server for the Tuskr REST API
Built on the FastMCP Python SDK.
Supports access token authentication.
Installation
Environment variables / .env file
Set up environment variables or configure the .env file using the .env.example template.
The following environment variables are supported:
TUSKR_ACCOUNT_ID=<your account id>
TUSKR_ACCESS_TOKEN=<your access token>
(this doc desc https://tuskr.app/kb/latest/api)
and optionally
MCP_TRANSPORT=<transport type: http or stdio>
MCP_HOST=<host for HTTP transport>
MCP_PORT=<port for HTTP transport>
Command Line Parameters
The MCP server supports the following command line parameters:
--transport: Transport type for the MCP server. Options:http(default) orstdio--host: Host address for HTTP transport (default:0.0.0.0)--port: Port number for HTTP transport (default:8000)
Note: The --host and --port parameters are only applicable when using the http transport.
Default Values
- Transport:
http(can be overridden withMCP_TRANSPORTenvironment variable) - Host:
0.0.0.0(can be overridden withMCP_HOSTenvironment variable) - Port:
8000(can be overridden withMCP_PORTenvironment variable)
Connect from client
HTTP Transport (Default)
Use the following template to connect the server via HTTP:
{
"mcpServers": {
"tuskr": {
"transport": "http",
"url": "http://<your-mcp-dns-or-ip>/mcp/",
"headers": {
"Authorization": "Bearer <your access token>",
"Account-ID": "<your-tuskr-account-id>"
}
}
}
}
The Authorization is mandatory.
The Account-ID is not required and can be set on the server side using the TUSKR_ACCOUNT_ID env variable. It's convenient in case you have single MCP Server for organization.
stdio Transport (for local development)
For local development and integration with tools like uvx, use the stdio transport:
{
"mcpServers": {
"tuskr": {
"transport": "stdio",
"command": "uvx",
"args": ["tuskr-mcp-server", "--transport", "stdio"]
}
}
}
or use uv with source code:
{
"mcpServers": {
"tuskr": {
"transport": "stdio",
"command": "uv",
"args": [
"--directory",
"/path/to/your/tuskr-mcp-server",
"run",
"src/main.py",
"--transport",
"stdio"
]
}
}
}
Development
Setup
- Clone repo
- Install development dependencies:
uv sync --dev - Create
.envfrom.env.example
Running MCP service
HTTP Transport (Default)
uv run --env-file .env src/main.py
stdio Transport (for local development)
uv run --env-file .env src/main.py --transport stdio
Custom Host/Port
uv run --env-file .env src/main.py --host 127.0.0.1 --port 9000
Running tests
The project uses pytest for testing. The following command will run all tests
uv run pytest -vsx
Running linters
The project uses the ruff tool as a linter.
The following command allows to run linter
uv run ruff check
and this command allow to fix formatting
uv run ruff format
Dockerization
The following command allows to build a docker image
docker build -t tuskr-mcp .
and then you can run it using the
docker run -it tuskr-mcp