Skip to main content
Glama

Tesouro Direto MCP Server

by AtilioA
README.md4.55 kB
# Tesouro Direto MCP Server [![smithery badge](https://smithery.ai/badge/@AtilioA/tesouro-direto-mcp)](https://smithery.ai/server/@AtilioA/tesouro-direto-mcp) [![npm version](https://img.shields.io/npm/v/tesouro-direto-mcp.svg)](https://www.npmjs.com/package/tesouro-direto-mcp) [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](LICENSE) A Model Context Protocol (MCP) server implementation for integrating with the Tesouro Direto API, enabling natural language access to Brazilian treasury bond data. --- ## Features Query market data, bond details, and search/filter bonds using everyday language through MCP-compatible clients. - **MCP tools**: - `market_data`: Retrieve general treasury bond market data (opening/closing times, status) - `bond_data`: Get detailed information about a specific bond - `search_bonds`: Search/filter bonds by type, maturity, and other criteria - **Smart caching**: 10-minute in-memory cache based on API update timestamps to reduce calls while ensuring data freshness. --- ## Example usage In a MCP-compatible client, you can use the following prompts: - *"Show all available Tesouro Direto bonds"* - *"Get details for the bond IPCA+ 2029"* - *"Search for IPCA bonds maturing after 2045"* - *"What is the current treasury bond market status?"* - *"Provide a detailed analysis of the top three bonds with the highest yields for both IPCA and fixed-rate bonds."* --- ## Installation ### Installing via Smithery To install Tesouro Direto MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@AtilioA/tesouro-direto-mcp): ```bash npx -y @smithery/cli install @AtilioA/tesouro-direto-mcp --client claude ``` ### Installing via npm ### Example JSON for MCP client configuration (Cursor/Claude) With [npx](https://docs.npmjs.com/cli/commands/npx), add this to your `~/.cursor/mcp.json`, or `claude_desktop_config.json` if you are using its desktop app: ```json { "mcpServers": { "tesouro-direto": { "command": "npx", "args": [ "-y", "tesouro-direto-mcp" ], "env": { "USE_MCP_CACHE": "true" } } } } ``` --- ### Building from source ```bash # Clone the repository git clone https://github.com/AtilioA/tesouro-direto-mcp.git cd tesouro-direto-mcp # Install dependencies pnpm install # Build the project pnpm run build ``` You can run the MCP server directly after building: ```bash node dist/index.js ``` Or use it with any MCP-compatible client (e.g., MCP Inspector): ```bash npx @modelcontextprotocol/inspector dist/index.js ``` --- ## Tools ### `market_data` Retrieve general market data, including opening/closing times and current status. ### `bond_data` Get detailed information for a specific bond by its code. ### `search_bonds` Search and filter bonds by type (SELIC, IPCA, PREFIXADO), maturity date, and more. --- ## Environment variables | Variable | Description | Default | |------------------|---------------------------------------------|---------| | `USE_MCP_CACHE` | Enable the in-memory cache for API responses| `true` | Set these in your environment or in your MCP client configuration. --- ## Project structure ``` src/ ├── api/ # API client for Tesouro Direto │ └── tesouroDireto.ts ├── cache/ # Caching implementation │ └── apiCache.ts ├── resources/ # MCP resources implementation │ └── index.ts ├── tools/ # MCP tools implementation │ ├── bondData.ts │ ├── marketData.ts │ └── searchBonds.ts ├── types/ # Type definitions │ └── index.ts ├── utils/ # Utility functions │ ├── errorHandler.ts │ └── logger.ts ├── client.ts # Example MCP client ├── index.ts # Entry point └── server.ts # MCP server implementation ``` --- ## Available scripts - `pnpm run build` / `npm run build`: Build the project - `pnpm start` / `npm start`: Start the server - `pnpm run dev` / `npm run dev`: Start the server in development mode with auto-reload --- ## Contributing Contributions are welcome! Please open an issue or submit a pull request on [GitHub](https://github.com/AtilioA/tesouro-direto-mcp). --- ## License This project is licensed under the GNU Affero General Public License v3.0. See the [LICENSE](LICENSE) file for details.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AtilioA/tesouro-direto-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server