TAS/CAS Jurisprudence Server
FreeNot checkedEnables searching and retrieving arbitration decisions from the Court of Arbitration for Sport (CAS/TAS) for sports law research.
About
Enables searching and retrieving arbitration decisions from the Court of Arbitration for Sport (CAS/TAS) for sports law research.
README
Court of Arbitration for Sport (TAS/CAS) decision search and retrieval
Overview
This MCP server provides tools to search and retrieve arbitration decisions from the Court of Arbitration for Sport (CAS/TAS). It enables Claude to research sports law precedents, anti-doping cases, and commercial sports disputes.
Available Tools
cas_search
Search CAS/TAS arbitration decisions by keywords, sport, year range, or procedure type.
Parameters:
query(required): Search query for case content, parties, or keywordssport(optional): Filter by sport (e.g., "Football", "Cycling", "Athletics")year_from(optional): Filter decisions from this year (1984-2026)year_to(optional): Filter decisions until this year (1984-2026)procedure_type(optional): Filter by type - "Appeal", "Ordinary", "Anti-Doping", "Advisory"page(optional): Page number (default: 1)page_size(optional): Results per page, max 25 (default: 10)
cas_get_award
Retrieve detailed information about a specific CAS/TAS award.
Parameters:
case_number(optional): CAS case number (e.g., "CAS 2023/A/9876")url(optional): Direct URL to the award pageinclude_full_text(optional): Include full PDF text (default: false)
cas_recent
Get the most recent CAS/TAS arbitration decisions.
Parameters:
limit(optional): Maximum number of decisions (1-50, default: 10)
cas_by_sport
Browse CAS/TAS decisions by sport category.
Parameters:
sport(required): Sport to browse (e.g., "Football", "Cycling")page(optional): Page number (default: 1)
Installation
# Navigate to server directory
cd mcp-servers/tas-jurisprudence
# Install dependencies
npm install
# Build TypeScript
npm run build
# Run locally
npm run dev
Deployment
Railway
This server is designed for Railway deployment with HTTP transport:
# From the tas-jurisprudence directory
railway up
Configuration:
- Set custom domain:
tas.bettercallclaude.ch - MCP endpoint:
https://tas.bettercallclaude.ch/tas-jurisprudence/mcp
Client Configuration
Claude Desktop
For local stdio transport (not recommended for this server):
{
"mcpServers": {
"tas-jurisprudence": {
"command": "node",
"args": ["/path/to/mcp-servers/tas-jurisprudence/dist/index.js"]
}
}
}
Remote HTTP Transport
For Railway deployment:
{
"mcpServers": {
"tas-jurisprudence": {
"url": "https://tas.bettercallclaude.ch/tas-jurisprudence/mcp",
"transport": "http"
}
}
}
Technical Details
Architecture
- Transport: Streamable HTTP (Express.js)
- Scraping: Playwright for JavaScript-rendered content
- Caching: In-memory LRU cache with configurable TTL
- Rate Limiting: 10-second crawl delay (respects robots.txt)
Cache TTLs
- Search results: 10 minutes
- Award details: 30 minutes
- Recent decisions: 5 minutes
- Sport browse: 15 minutes
Data Sources
- Main database:
jurisprudence.tas-cas.org(JavaScript-rendered) - Recent decisions:
tas-cas.org/en/jurisprudence/recent-decisions.html - PDF files:
tas-cas.org/files/decision/
Legal Notice
CAS awards are publicly accessible, but their content is subject to copyright. This server:
- Provides metadata and summaries by default
- Links to official PDF sources rather than redistributing content
- Respects robots.txt crawl-delay requirements
- Is intended for legitimate legal research purposes
For full award redistribution, CAS permission may be required.
Development
# Run tests
npm test
# Watch mode
npm run test:watch
# Clean build artifacts
npm run clean
Troubleshooting
No search results
- The CAS database requires JavaScript rendering
- Ensure Playwright/Chromium is properly installed
- Check rate limiter isn't blocking requests
Memory issues in production
- Single browser instance is reused
- Pages are closed after each operation
- Implement periodic browser restart for long-running instances
Rate limiting errors
- Default 10-second delay between requests
- Increase
CRAWL_DELAY_MSif getting blocked - Check CAS website status
License
MIT License - BetterCallClaude Project
Resources
Installing TAS/CAS Jurisprudence Server
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/fedec65/tas-jurisprudence-mcpFAQ
Is TAS/CAS Jurisprudence Server MCP free?
Yes, TAS/CAS Jurisprudence Server MCP is free — one-click install via Unyly at no cost.
Does TAS/CAS Jurisprudence Server need an API key?
No, TAS/CAS Jurisprudence Server runs without API keys or environment variables.
Is TAS/CAS Jurisprudence Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install TAS/CAS Jurisprudence Server in Claude Desktop, Claude Code or Cursor?
Open TAS/CAS Jurisprudence Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare TAS/CAS Jurisprudence Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
