Needle/needle-mcp
Built by Metorial, the integration platform for agentic AI.
Needle/needle-mcp
Server Summary
Document management
Search capabilities
Integration with Claude Desktop Application
Search result display in Needle
MCP (Model Context Protocol) server to manage documents and perform searches using Needle through Claude's Desktop Application.
Needle MCP Server allows you to:
MCP (Model Context Protocol) standardizes the way LLMs connect to external data sources. You can use Needle MCP Server to easily enable semantic search tools in your AI applications, making data buried in PDFs, DOCX, XLSX, and other files instantly accessible by LLMs.
We recommend using our remote MCP server for the best experience - no local setup required.
Below is an example of how the commands can be used in Claude Desktop to interact with the server:
https://github.com/user-attachments/assets/0235e893-af96-4920-8364-1e86f73b3e6c
For a full walkthrough on using the Needle MCP Server with Claude and Claude Desktop, watch this YouTube explanation video.
Claude Desktop Config
Create or update your config file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"needle": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.needle.app/mcp",
"--header",
"Authorization:Bearer ${NEEDLE_API_KEY}"
],
"env": {
"NEEDLE_API_KEY": ""
}
}
}
}
Cursor Config
Create or update .cursor/mcp.json
:
{
"mcpServers": {
"needle": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.needle.app/mcp",
"--header",
"Authorization:${NEEDLE_AUTH_HEADER}"
],
"env": {
"NEEDLE_AUTH_HEADER": "Bearer "
}
}
}
}
Get your API key from Needle Settings.
We provide two endpoints:
https://mcp.needle.app/mcp
(recommended)https://mcp.needle.app/sse
Note: MCP deprecated SSE endpoints in the latest specification, so newer clients should prefer the Streamable HTTP endpoint.
git clone https://github.com/needle-ai/needle-mcp.git
brew install uv
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
Claude Desktop Config
{
"mcpServers": {
"needle": {
"command": "uv",
"args": ["--directory", "/path/to/needle-mcp", "run", "needle-mcp"],
"env": {
"NEEDLE_API_KEY": ""
}
}
}
}
Cursor Config
{
"mcpServers": {
"needle": {
"command": "uv",
"args": ["--directory", "/path/to/needle-mcp", "run", "needle-mcp"],
"env": {
"NEEDLE_API_KEY": ""
}
}
}
}
/path/to/needle-mcp
with your actual repository pathInstalling via Smithery
npx -y @smithery/cli install needle-mcp --client claude
git clone https://github.com/needle-ai/needle-mcp.git
cd needle-mcp
docker build -t needle-mcp .
~/Library/Application Support/Claude/claude_desktop_config.json
):{
"mcpServers": {
"needle": {
"command": "docker",
"args": ["run", "--rm", "-i", "needle-mcp"],
"env": {
"NEEDLE_API_KEY": ""
}
}
}
}
If not working:
uv
is installed globally (if not, uninstall with pip uninstall uv
and reinstall with brew install uv
)uv
path with which uv
and replace "command": "uv"
with the full pathIf you're seeing old configurations or the integration isn't working:
find / -name "claude_desktop_config.json" 2>/dev/null
rm -rf ~/Library/Application\ Support/Claude/*
%APPDATA%/Claude/
mkdir -p ~/Library/Application\ Support/Claude
cat > ~/Library/Application\ Support/Claude/claude_desktop_config.json
< 'EOL'
{
"mcpServers": {
"needle": {
"command": "uv",
"args": [
"--directory",
"/path/to/needle-mcp",
"run",
"needle-mcp"
],
"env": {
"NEEDLE_API_KEY": "your_needle_api_key"
}
}
}
}
EOL
Completely quit Claude Desktop (Command+Q on Mac) and relaunch it
If you still see old configurations: