PTENES
TRACK 4

🌍 Real-World Projects

Apply everything you've learned in hands-on projects — databases, APIs, automation, and multi-server assistants.

6
Modules
36
Topics
~5h
Duration
Intermediate
Level

Quick Navigation

Detailed Content
Module 4.1 ~40 min · Hands-on

📋 Task Manager

MCP Server that creates, lists, updates, and removes tasks saved in a JSON file.

What it is:

Project planning involves defining which features the task manager will have, how data will be stored, and which tools will be exposed via MCP. This is the time to think before coding.

Why learn:

Planning before implementation avoids rework and ensures that you build a cohesive server. This discipline is essential in any professional project.

Key concepts:

Requirements gathering, scope definition, tool design, data architecture, MVP.

What it is:

The data structure defines how each task will be represented in JSON—with fields such as id, title, description, status, creation date, and priority. The JSON file serves as a simple, portable database.

Why learn:

Modeling data correctly is the foundation of any application. A well-defined schema makes tool implementation easier and prevents inconsistency bugs.

Key concepts:

JSON schema, data modeling, required vs. optional fields, data types, file persistence.

What it is:

The creation tool receives a title, description, and priority as parameters, generates a unique ID, records the creation date, and saves the new task to the JSON file. It is the server's first CRUD operation.

Why learn:

Create is the most fundamental operation. Implementing it as an MCP tool teaches you the complete workflow: receive parameters, validate, process, and return a result.

Key concepts:

CRUD, ID generation, input validation, file writing, structured response, inputSchema.

What it is:

The listing tool reads the JSON file and returns the tasks, with options to filter by status (pending, in progress, completed) and priority. It lets Claude present the tasks to the user in an organized way.

Why learn:

Filtered listing is an essential operation in any system. You’ll learn to implement optional parameters and output formatting for the model.

Key concepts:

File reading, data filtering, optional parameters, output formatting, pagination.

What it is:

The update and remove tools complete CRUD. Update lets you change the status, title, or priority of an existing task. Remove deletes a task by ID. Both include validation to ensure the task exists.

Why learn:

Write operations require extra care: existence validation, error handling, and atomicity. These practices are essential in any real project.

Key concepts:

Update, delete, ID validation, error handling, atomicity, feedback to the model.

What it is:

End-to-end testing of the task manager: configure it in Claude Desktop, create tasks through natural conversation, list them with filters, update their status, and remove tasks. Verify that the JSON file persists correctly between sessions.

Why learn:

Testing the complete workflow reveals bugs that unit tests don't catch. This is the time to validate that everything works as an integrated system.

Key concepts:

End-to-end testing, usage scenarios, edge cases, persistence, MCP server debugging.

View Full
Module 4.2 ~45 min · Hands-on

🗄️ Database Consultant

MCP Server that connects to SQLite and allows queries in natural language.

What it is:

SQLite is an embedded relational database that doesn't need a separate server. With Python, we use the built-in sqlite3 module to create, query, and manipulate data. It's perfect for MCP projects because of its simplicity and portability.

Why learn:

SQLite is the most widely used database in the world. Mastering it with Python gives you the foundation to connect any database to an MCP Server.

Key concepts:

SQLite, sqlite3 module, connection, cursor, embedded database, zero configuration.

What it is:

Creating a sample database with tables such as customers, products, and orders, populated with realistic data. This database will serve as the basis for queries to the MCP Server, simulating a real business scenario.

Why learn:

Having realistic data to test with is essential. You learn to create relational schemas and populate tables, essential skills for any developer.

Key concepts:

CREATE TABLE, INSERT, SQL data types, primary keys, foreign keys, seed data.

What it is:

The query tool receives an SQL query or a description in natural language, runs the SELECT against the database, and returns formatted results. Claude translates natural-language questions into SQL and presents the results in a readable format.

Why learn:

Natural language queries about databases are one of MCP's most powerful use cases. You turn raw data into information anyone can access.

Key concepts:

SELECT, result formatting, natural language to SQL translation, row limit, column metadata.

What it is:

Tools for INSERT and UPDATE let Claude add new records and update existing data in the database. Includes field validation, confirmation before execution, and feedback on affected rows.

Why learn:

Write operations are more delicate than reads. You’ll learn to implement confirmations, rollback, and feedback—essential patterns for servers that modify data.

Key concepts:

INSERT, UPDATE, validation, confirmation, affected rows, commit, rollback.

What it is:

SQL injection is an attack in which malicious code is inserted into SQL queries. Protection involves using parameterized queries, sanitizing inputs, limiting database permissions, and restricting which operations the MCP Server can execute.

Why learn:

Security isn't optional. An MCP Server that accesses a database without protection against injection is a serious vulnerability. This knowledge protects your data and your users.

Key concepts:

SQL injection, parameterized queries, sanitization, principle of least privilege, operation whitelist.

What it is:

Hands-on test where you ask Claude questions like "what orders were placed last month?" or "which customer bought the most?" and it translates them to SQL, runs them via the MCP Server, and presents the results in a user-friendly way.

Why learn:

Seeing the complete flow in action—from the natural-language question to the formatted result—reinforces everything you've learned and shows the real power of a database MCP Server.

Key concepts:

Natural language to SQL, interactive testing, complex scenarios, joins, aggregations, data presentation.

View Full
Module 4.3 ~40 min · Hands-on

📁 File Assistant

MCP Server that reads, summarizes, and organizes files in a local folder.

What it is:

Planning defines which file operations the MCP Server will offer: reading, summarizing, searching content, statistics, and automatic organization. Each feature becomes a tool with well-defined parameters and return values.

Why learn:

Planning the tools before implementation ensures consistency and avoids overlapping functionality. Good API design is the foundation of a usable server.

Key concepts:

API design, file operations, permission scope, separation of responsibilities, naming conventions.

What it is:

The read tool opens a file by path and returns its contents to Claude, which can then summarize or explain it, or answer questions about it. It supports different formats such as text, Markdown, code, and CSV.

Why learn:

Reading and interpreting files is one of the most practical uses of MCP. You turn Claude into an assistant that understands your local documents.

Key concepts:

File reading, encoding detection, size limit, supported formats, IO error handling.

What it is:

The search tool scans files in a folder for a term or pattern. It returns files that contain the term, with context snippets around each occurrence, similar to an intelligent grep.

Why learn:

Searching files is extremely useful for finding information in projects, documentation, or notes. Claude becomes a research assistant for your local files.

Key concepts:

Recursive search, regex, match context, extension filter, performance in large directories.

What it is:

The statistics tool analyzes a folder and returns metrics such as total number of files, total size, distribution by file type, largest files, most recent files, and subdirectory structure.

Why learn:

Having a quick overview of a folder is useful for understanding projects, identifying organizational problems, and finding files that need attention.

Key concepts:

Directory analysis, file metrics, grouping by extension, formatted size, directory tree.

What it is:

The organization tool moves files into subfolders based on their type: images to /imagens, documents to /documentos, and code to /codigo. It includes a preview before execution and an option to undo.

Why learn:

Organization automation is a powerful, practical use case. You’ll learn to implement destructive operations safely — preview, confirmation, and rollback.

Key concepts:

File movement, categorization by extension, operation preview, dry run, rollback.

What it is:

Hands-on test of the file assistant: ask Claude to summarize a document, search for information across multiple files, show project statistics, and organize a messy folder. Complete validation of all tools.

Why learn:

Testing with real-world scenarios ensures the server works in practical conditions. You discover edge cases and improve the user experience.

Key concepts:

Functional testing, real-world usage scenarios, file edge cases, permissions, encoding, large files.

View Full
Module 4.4 ~45 min · Hands-on

🌐 Integrating with a REST API

MCP Server that consumes the GitHub API and exposes actions as tools.

What it is:

The GitHub REST API lets you access repositories, issues, pull requests, and more via HTTP. Understanding its endpoints, JSON response format, pagination, and rate limits is essential for creating an MCP Server that consumes it.

Why learn:

The GitHub API is one of the best-documented REST APIs in the world. Learning to consume it via MCP prepares you to integrate any REST API with the protocol.

Key concepts:

REST API, endpoints, HTTP methods, JSON, pagination, rate limiting, API documentation.

What it is:

Authentication with the GitHub API uses Personal Access Tokens (PAT). You’ll learn to create tokens with minimal scopes, store them securely using environment variables, and use them in the MCP Server without exposing them in the code.

Why learn:

Managing credentials securely is critical in any integration. The practices learned here apply to any API that requires authentication.

Key concepts:

Personal Access Token, scopes, environment variables, .env, credential security, Bearer token.

What it is:

The repository listing tool queries the GitHub API and returns the authenticated user's repositories, with information such as name, description, language, stars, and last updated date. It supports filters by visibility and sorting.

Why learn:

It’s the first tool that consumes a real external API. You’ll learn the complete pattern: making an HTTP request, handling the response, formatting it for the model, and dealing with network errors.

Key concepts:

GET request, JSON parsing, data formatting, filters, sorting, HTTP error handling.

What it is:

The issue search tool lets you query issues in a specific repository, filtering by status (open, closed), labels, and search terms. It returns each issue’s title, description, author, labels, and comments.

Why learn:

Issues are at the heart of project management on GitHub. With this tool, Claude can help analyze, prioritize, and respond to issues intelligently.

Key concepts:

Issues API, state filters, labels, text search, result pagination, nested data.

What it is:

The issue creation tool sends a POST to the GitHub API with a title, body, labels, and assignees. Claude can create well-formatted issues from the user's natural-language descriptions.

Why learn:

Creating resources via API is a write operation that requires care. You learn to implement confirmation before execution and format data for sending via POST.

Key concepts:

POST request, request body, input validation, action confirmation, creation response, status 201.

What it is:

End-to-end testing of the GitHub integration: list repos, search for a project's issues, create a new issue, and verify that it appears on GitHub. Includes error tests such as an invalid token and a nonexistent repository.

Why learn:

Testing integrations with external APIs requires considering scenarios that don't occur in local projects: latency, network errors, rate limits, and unexpected responses.

Key concepts:

Integration testing, mocking, error scenarios, timeout, retry, rate limiting, data validation.

View Full
Module 4.5 ~35 min · Hands-on

🔗 Combining Multiple Servers

Configure Claude Desktop with 2+ simultaneous servers to create a powerful assistant.

What it is:

The MCP architecture lets a Host connect to multiple Servers simultaneously. Each server specializes in a task, and Claude automatically orchestrates between them, creating an assistant that combines various capabilities.

Why learn:

Combining servers is what makes MCP truly powerful. Instead of one monolithic server, you compose modular capabilities that can be reused in different contexts.

Key concepts:

Server composition, modularity, specialization, model orchestration, reuse.

What it is:

Configuring multiple servers in Claude Desktop involves adding several entries to the claude_desktop_config.json file, each with its own command, arguments, and environment variables. Claude connects to all of them simultaneously at startup.

Why learn:

Knowing how to configure multiple servers is the practical skill that turns Claude Desktop into a personalized assistant with all your favorite tools.

Key concepts:

claude_desktop_config.json, multiple entries, environment variables per server, simultaneous startup, naming.

What it is:

When multiple servers are connected, Claude receives the full list of available tools and automatically chooses which one to use based on the user's intent. Each tool's name and description are essential for this intelligent routing.

Why learn:

Understanding how Claude routes between servers helps you create tools with names and descriptions that make it easier to choose the right one, avoiding ambiguity and conflicts.

Key concepts:

Tool routing, descriptive names, ambiguity resolution, tool discovery, decision context.

What it is:

Practical example combining the task manager (Module 4.1) with the database consultant (Module 4.2). Claude can create tasks based on database data or query the database to prioritize existing tasks.

Why learn:

This concrete example shows how two independent servers complement each other. It’s practical proof that modularity works and produces emergent capabilities.

Key concepts:

Practical composition, multi-server flow, emerging capabilities, business scenario, cross-referenced data.

What it is:

Practical example combining the file assistant (Module 4.3) with the GitHub integration (Module 4.4). Claude can read local code, analyze bugs, and automatically create GitHub issues with relevant context.

Why learn:

This scenario simulates a real development workflow. Combining local code reading with issue management creates a truly useful development assistant.

Key concepts:

Development workflow, code analysis, automatic issue creation, cross-context, automation.

What it is:

Full test of the multi-server assistant: chat with Claude using 3-4 servers simultaneously, verify that it chooses the right server for each task, test scenarios involving multiple servers in sequence, and evaluate the overall experience.

Why learn:

The multi-server test reveals naming problems, tool conflicts, and context limits. It is the definitive test of your MCP architecture.

Key concepts:

Multi-server testing, name conflicts, context limit, performance, user experience, debugging.

View Full
Module 4.6 ~30 min · Theory

🛡️ Security Best Practices

Permission controls, authentication, the principle of least privilege, and common risks.

What it is:

MCP Servers have access to real resources: files, databases, APIs, and systems. An insecure server can expose sensitive data, perform destructive actions, or be exploited through prompt injection. Security isn’t an extra; it’s a necessity.

Why learn:

Understanding the real risks motivates you to implement security practices. Without this awareness, developers create servers that work but are dangerous in production.

Key concepts:

Attack surface, prompt injection, data exposure, destructive actions, developer responsibility.

What it is:

The principle of least privilege states that a server should have access only to the resources strictly necessary for its function. A file-reading server doesn't need write permission. A SQL query server doesn't need DELETE permission.

Why learn:

This principle is the most effective defense against errors and attacks. Limiting permissions drastically reduces the impact of any security failure.

Key concepts:

Least privilege, granular permissions, minimum scope, sandboxing, resource isolation.

What it is:

Secure credential management means never hardcoding tokens in code, using environment variables or secret managers, rotating tokens periodically, and using the minimum required scopes. Each server should have its own isolated credentials.

Why learn:

Credential leaks are among the most common and serious vulnerabilities. Good token management practices protect your services and users.

Key concepts:

Environment variables, secret managers, token rotation, minimum scopes, .gitignore, credentials by environment.

What it is:

Common risks include exposing the entire file system, allowing arbitrary command execution, failing to validate inputs, blindly trusting what the model sends, failing to limit request rates, and failing to log sensitive operations.

Why learn:

Knowing the most common risks lets you avoid them proactively. Preventing a vulnerability is much easier than fixing one after an incident.

Key concepts:

Path traversal, command injection, input validation, rate limiting, logging, zero trust.

What it is:

A practical checklist to review before publishing any MCP Server: input validation, least-privilege permissions, secure credentials, rate limiting, logging, error handling without exposing data, security documentation, and abuse testing.

Why learn:

Having a checklist eliminates the risk of forgetting security items in the rush to publish. It is a practical tool you'll use in every MCP project.

Key concepts:

Security checklist, pre-publication review, validation, permissions, logging, documentation, abuse testing.

What it is:

Auditing and monitoring involve recording all server operations (who requested what, and when), monitoring unusual usage, alerting on suspicious attempts, and keeping logs for investigation. This gives you visibility into what your server is doing.

Why learn:

Without monitoring, you won't know if your server is being used maliciously. Logs and alerts are the difference between discovering a problem in minutes and discovering it in months.

Key concepts:

Structured logging, audit trail, monitoring, alerts, metrics, anomaly detection, log retention.

View Full
← Previous Track Next Track →