LangSmith MCP Server
Enables read-only querying of LangSmith traces including runs, children, and URLs without extra instrumentation.
README
LangSmith MCP Server
FastMCP-based MCP server exposing LangSmith read-only tools for querying existing traces (runs, children, URLs) without extra instrumentation.
Tools
ls_list_runs(project_name, is_root=True, limit=50, select?)— List recent runs with filteringls_read_run(run_id, hydrate_children=False, child_limit=100)— Read single run with optional childrenls_get_run_url(run_id)— Generate shareable LangSmith URLsls_list_children(parent_run_id, limit=100)— List child spans for parent run
Requirements
- Python 3.10+
LANGSMITH_API_KEYin your environment- Optional:
LANGSMITH_ENDPOINTfor on-prem deployments
Quick Start
# Clone and setup
git clone <repo-url>
cd langsmith-mcp-server
# Install dependencies (uv manages environment automatically)
uv sync
export LANGSMITH_API_KEY="lsv2_pt_..."
# Run smoke test
uv run python tests/smoke_test.py
# Run unit tests
uv run pytest tests/test_server.py -v
Run as MCP Server
Local Development
Recommended (using fastmcp.json for configuration):
# FastMCP auto-detects fastmcp.json in current directory
fastmcp run
# Or via uv
uv run fastmcp run fastmcp.json
Alternative (direct Python):
uv run python src/server.py
FastMCP Cloud Deployment
Deploy to FastMCP Cloud for free hosting:
- Push to GitHub:
don-aie-cohort8/langsmith-mcp-server - Sign in to https://fastmcp.cloud
- Create new project:
- Repository:
don-aie-cohort8/langsmith-mcp-server - Branch:
main - Entrypoint:
src/server.py:app
- Repository:
- Add environment variable:
LANGSMITH_API_KEY - Deploy!
Auto-deploys on every push to main.
MCP Client Configuration
Local Development
Add to your MCP client config (Claude Desktop, Claude Code, etc.):
{
"mcpServers": {
"langsmith-local": {
"command": "uv",
"args": [
"run",
"--with", "fastmcp",
"fastmcp",
"run",
"/absolute/path/to/langsmith-mcp-server/src/server.py:app"
]
}
}
}
Note: Replace /absolute/path/to/langsmith-mcp-server with your actual project path.
Why this pattern?
- Uses
uv run --with fastmcpper official FastMCP recommendations - Creates isolated environment with clean dependency management
- Avoids dependency on global
fastmcpinstallation - Runtime dependencies pulled from
pyproject.tomlvia editable install - No need to list all dependencies in MCP config
FastMCP Cloud
For cloud deployment:
{
"mcpServers": {
"langsmith-cloud": {
"url": "https://langsmith-mcp-server.fastmcp.app/mcp"
}
}
}
Project Structure
Following FastMCP and Python best practices:
langsmith-mcp-server/
├── src/
│ └── server.py # MCP server implementation (~190 lines)
├── tests/
│ ├── smoke_test.py # Startup validation
│ ├── test_server.py # Unit tests
│ ├── test_integration.py # Integration tests
│ └── README.md # Testing documentation
├── scripts/
│ ├── integration_demo.py # Demo script for testing tools
│ └── claude-agent-sdk-testing/ # Claude Agent SDK integration
├── docs/
│ ├── PRODUCTION_READINESS.md # Production deployment guide
│ ├── MCP_FIX_REPORT.md # Historical fix documentation
│ ├── SERIALIZATION_FIX.md # Pydantic compatibility fixes
│ └── TESTING_REPORT.md # Testing results
├── notebooks/ # Jupyter notebooks for exploration
├── fastmcp.json # Deployment configuration
├── pyproject.toml # Package metadata and dependencies
└── README.md # This file
Dependency Management
This project uses a dual-file approach for dependencies:
- pyproject.toml: Defines all Python dependencies (runtime + dev)
- fastmcp.json: Deployment configuration that references pyproject.toml via
"editable": ["."]
When you run uv sync, dependencies are installed from pyproject.toml. FastMCP automatically loads them via the editable install.
Usage Tips
- Use
select=["id","name","error","extra"]for minimal payloads - LangGraph auto-instrumented config appears under
run.extra(e.g.,graph_id,thread_id,research_model) - All tools are read-only by design (no create/update/delete operations)
References
Client:
Server:
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.