MCP Quickstart
Start using the Model Context Protocol in minutes. Choose your path based on your role.
For Claude Desktop Users
Connect existing MCP servers with Claude Desktop in minutes
Install Claude Desktop
Download and install Claude Desktop from Anthropic's official website.
Configure an MCP Server
Choose a server from our directory and follow the installation instructions.
Edit Configuration
Add the server to your Claude Desktop configuration file.
Start Using!
Restart Claude Desktop and ask Claude about your data.
Configuration Example
Edit your Claude Desktop configuration file (location varies by OS):
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/allowed/directory"
]
}
}
}For Server Developers
Create MCP servers that expose your data and tools to LLMs
Install the SDK
Choose Python or TypeScript based on your preference.
Create Your First Server
Define resources, tools, or prompts you want to expose.
Test Locally
Use the MCP inspector or debugging tools to validate.
Share with the Community
Publish your server on GitHub and add it to our directory.
Quick Example: Python Server
from mcp.server import Server
from mcp.types import Tool, TextContent
import mcp.types as types
app = Server("mi-servidor")
@app.list_tools()
async def list_tools() -> list[Tool]:
return [
Tool(
name="get_weather",
description="Obtiene el clima actual",
inputSchema={
"type": "object",
"properties": {
"city": {"type": "string"}
},
"required": ["city"]
}
)
]
@app.call_tool()
async def call_tool(name: str, arguments: dict) -> list[TextContent]:
if name == "get_weather":
city = arguments.get("city", "Madrid")
return [TextContent(
type="text",
text=f"El clima en {city} es soleado, 22°C"
)]
raise ValueError(f"Tool desconocida: {name}")
if __name__ == "__main__":
from mcp.server.stdio import stdio_server
stdio_server(app)pip install mcpView More Examples Quick Example: TypeScript Server
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import {
CallToolRequestSchema,
ListToolsRequestSchema,
} from "@modelcontextprotocol/sdk/types.js";
const server = new Server(
{
name: "mi-servidor",
version: "0.1.0",
},
{
capabilities: {
tools: {},
},
}
);
server.setRequestHandler(ListToolsRequestSchema, async () => ({
tools: [
{
name: "get_weather",
description: "Obtiene el clima actual",
inputSchema: {
type: "object",
properties: {
city: { type: "string" },
},
required: ["city"],
},
},
],
}));
server.setRequestHandler(CallToolRequestSchema, async (request) => {
if (request.params.name === "get_weather") {
const city = request.params.arguments?.city || "Madrid";
return {
content: [
{
type: "text",
text: `El clima en ${city} es soleado, 22°C`,
},
],
};
}
throw new Error(`Tool desconocida: ${request.params.name}`);
});
async function main() {
const transport = new StdioServerTransport();
await server.connect(transport);
}
main();npm install @model-context-protocol/sdkView Full Tutorials For Client Developers
Build applications that connect with MCP servers
Install Client SDK
Use the TypeScript or Python SDK to create your MCP client.
Connect with Servers
Establish connections with one or multiple MCP servers.
Implement Logic
Integrate tools and resources into your application.
Deploy Your Client
Connect your application with available MCP servers.
Example: TypeScript Client
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
const client = new Client(
{
name: "mi-cliente",
version: "0.1.0",
},
{
capabilities: {},
}
);
async function main() {
const transport = new StdioClientTransport({
command: "python",
args: ["-m", "mi_servidor"],
});
await client.connect(transport);
// Listar herramientas disponibles
const tools = await client.listTools();
console.log("Herramientas disponibles:", tools);
// Llamar a una herramienta
const result = await client.callTool({
name: "get_weather",
arguments: { city: "Barcelona" },
});
console.log("Resultado:", result);
}
main().catch(console.error);npm install @model-context-protocol/sdkView More Client Examples Need More Help?
Explore our complete documentation, tutorials, and community examples.