Model Context Protocol server for Teamwork.com integration with Large Language Models
π Are you a Teamwork.com user wanting to connect AI tools (Claude Desktop, VS Code Copilot Chat, Gemini, etc.) to your Teamwork.com site right now? Jump straight to the Usage Guide (How to Connect) for tokens, enabling MCP and client configuration examples.
This MCP (Model Context Protocol) server enables seamless integration between Large Language Models and Teamwork.com. It provides a standardized interface for LLMs to interact with Teamwork.com projects, allowing AI agents to perform various project management operations.
Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to LLMs. This server describes all the actions available in Teamwork.com (tools) in a way that LLMs can understand and execute through AI agents.
- Multiple Transport Modes: HTTP and STDIO interfaces for different deployment scenarios
- Secure Authentication: Bearer token and OAuth2 integration with Teamwork.com
- Tool Framework: Extensible toolset architecture for adding new capabilities
- Production Ready: Comprehensive logging, monitoring, and observability
- Read-Only Mode: Optional restriction to read-only operations for safety
This project provides three different ways to interact with the Teamwork.com MCP server:
Production-ready HTTP server for cloud deployments and multi-client support.
π Full HTTP Server Documentation
Quick start:
TW_MCP_SERVER_ADDRESS=:8080 go run cmd/mcp-http/main.go
Direct STDIO interface for desktop applications and development environments.
π Full STDIO Server Documentation
Quick start:
TW_MCP_BEARER_TOKEN=your-token go run cmd/mcp-stdio/main.go
Command-line tool for testing and debugging MCP server functionality.
π Full HTTP CLI Documentation
Quick start:
go run cmd/mcp-http-cli/main.go -mcp-url=https://mcp.example.com list-tools
- Go 1.24 or later
- Valid Teamwork.com API credentials (bearer token or OAuth2 setup)
# Run all tests
go test ./...
# Run specific package tests
go test ./internal/twprojects/
For debugging purposes, use the MCP Inspector tool:
NODE_EXTRA_CA_CERTS=letsencrypt-stg-root-x1.pem npx @modelcontextprotocol/inspector node build/index.js
Important
Note: The NODE_EXTRA_CA_CERTS
environment variable is required when
using OAuth2 authentication with the Let's Encrypt certification authority.
Download the certificate here.
βββ cmd/
β βββ mcp-http/ # HTTP server implementation
β βββ mcp-stdio/ # STDIO server implementation
β βββ mcp-http-cli/ # CLI tool for testing via HTTP
βββ internal/
β βββ auth/ # Authentication helpers (bearer & OAuth2 token handling)
β βββ config/ # Configuration management (env, flags)
β βββ helpers/ # Shared utility functions (errors, link helpers, tool parsing)
β βββ request/ # HTTP request primitives / Teamwork API wiring
β βββ toolsets/ # Tool framework and registration logic
β βββ twprojects/ # Teamwork project/domain tools (tasks, tags, timers, etc.)
βββ examples/ # Usage & integration examples (LangChain Node/Python)
βββ usage.md # End-user setup & connection guide
βββ Makefile # Common developer tasks
βββ Dockerfile # Container build configuration
βββ CODE_OF_CONDUCT.md # Community guidelines
βββ CONTRIBUTING.md # Contribution guide
βββ SECURITY.md # Security policy