trafft-mcp-readonly
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@trafft-mcp-readonlylist today's appointments"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Trafft MCP Read-Only
Project status — concluded reference implementation
Active development for Sunflower Studio concluded on July 30, 2026 after Trafft Support confirmed that the public API does not support service creation or updates, appointment creation, appointment editing or rescheduling, or reversible appointment cancellation. Permanent deletion is the only published appointment mutation.
This repository remains public and unarchived as a hardened read-only reference implementation. No deployment or ongoing maintenance is promised. Issues remain enabled so people may ask questions, report compatibility changes, or share useful findings. A future change would be considered only if Trafft publishes materially broader official API contracts.
A hardened, community-readable, read-only Model Context Protocol server for auditing Trafft booking data without exposing mutation tools.
This repository is a clean derivative of mjmirza/trafft-mcp at commit c8793116e564a6c84d4e727ee0d4c7f24aef45ff. It retains the upstream MIT terms and documents all material changes in UPSTREAM.md and NOTICE.
Final status
The read-only implementation completed its build, protocol, dependency, privacy, authentication, core read, and bounded availability validation gates. It was not deployed as a Sunflower Studio production integration because the official Trafft API does not provide the safe write capabilities that motivated the broader project.
The repository is intentionally not tagged as an actively maintained production release.
Related MCP server: finance-reconcile-mcp
Stable V1 tools
list_servicesget_servicefind_services_by_namelist_employeesget_employeelist_locationsget_locationlist_appointmentslist_customersget_customerfind_duplicate_customersget_available_timescompare_services_to_expected
Trafft's published collection documents appointment listing but not a read-by-ID appointment endpoint, so stable V1 deliberately exposes appointments as list-only.
get_available_times accepts one service and one date, then maps them to Trafft's documented calendar_start_date, calendar_end_date, and service query parameters. Optional employee, location, and additional-guest inputs are mapped to the published API names.
No create, update, cancel, reschedule, pricing-write, webhook-write, booking, coupon, or delete tool is compiled into stable V1.
Six experimental read-only probes—webhooks, notifications, working hours, Special Days, Days Off, and settings—remain disabled unless TRAFFT_ENABLE_EXPERIMENTAL_READS=true. They should not be enabled without fresh verification against Trafft's current official API.
Confirmed Trafft API boundary
Trafft Support confirmed the following in July 2026:
services may only be listed or retrieved;
services cannot be created or updated through the API;
appointments cannot be created, edited, or rescheduled through the API;
reversible appointment cancellation is unavailable;
appointment listing and permanent deletion are the only supported appointment operations described by support.
This project does not use undocumented dashboard endpoints or infer unsupported mutation contracts.
Security architecture
Local stdio MCP transport
HTTPS-only Trafft origin
Exact hostname allowlist
API-path confinement and encoded-traversal rejection
Redirect refusal
GET-only REST policy, except the authentication POST
In-memory Bearer token
Sanitized errors and request identifiers
Bounded safe-GET retries
Streaming response-size enforcement
Valid-JSON MCP response limits
Privacy-minimized JSONL operation log
No deep/write audit mode
See SECURITY.md for guarantees and limitations.
Development gate
npm ci --ignore-scripts
npm run check
npm audit --audit-level=high
npm pack --dry-runThe mock security suite does not call Trafft and does not require credentials.
Secret handling
Never commit credentials or paste them into chat, issues, screenshots, fixtures, or shell history. Use an OS secret store or approved private runtime injection.
Questions and comments
Use the standing project-status issue for general questions and compatibility discussion. Security concerns should be reported privately through GitHub Security Advisories.
Independence
This project is not affiliated with, endorsed by, or sponsored by Trafft. Trafft is a trademark of its respective owner.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityCmaintenanceMock MCP server for validating Constructoo Copilot data access, exposing read-only tools like counting customer properties, retrieving project status, and fetching appointments.Last updated
- AlicenseAqualityCmaintenanceRead-only MCP server for reconciling SimpleFIN bank data against Firefly III ledger, enabling audit and review workflows without mutation.Last updated19311MIT
- Alicense-qualityBmaintenanceA read-only MCP server that connects to a pet-grooming database, exposing secure analytics tools for customers, pets, appointments, services, and payments.Last updatedMIT
- AlicenseAqualityBmaintenanceA read-only MCP server for querying Timely time tracking data, providing tools for project overviews, time spent summaries, and work log entries.Last updated3MIT
Related MCP Connectors
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
Read-only MCP server for Muovi, Argentina's trust-first local services marketplace (6 tools).
Federated commerce search across independent WooCommerce merchants. Keyless, read-only MCP server.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mad-Logic-Studio/trafft-mcp-readonly'
If you have feedback or need assistance with the MCP directory API, please join our Discord server