Status Invest - MCP Server

by newerton

2 stars
142 downloads
Not rated
GitHub

About

MCP Status Invest: A Model Context Protocol (MCP) server for interacting with the Status Invest API. Provides tools for fetching stock data and indicators, with a layered architecture and data validation using Zod

Details

Author
newerton
GitHub stars
2
Downloads
142
Categories
Other

- Fetch basic stock information (get-acoes)
- Retrieve detailed stock indicators (get-indicadores)
- Obtain stock payment dates (get-acoes-datas-pagamento)
- Input validation using Zod schemas
- Layered Domain‑Driven Design (DDD) architecture

Clone the repository, run npm install and npm run build. In VSCode, press Ctrl+Shift+P, select “MCP: List Servers”, choose “stocks” and then “Start Server”. The server communicates over stdio and exposes three tools: get-acoes, get-indicadores, and get-acoes-datas-pagamento.

Status Invest - MCP Server

This project is part of the Model Context Protocol (MCP) ecosystem and provides tools to interact with external APIs and manage specific domain models. It is designed to demonstrate how to build an MCP server with external API integration and data validation.

</div>

<table style="border-collapse: collapse; width: 100%; table-layout: fixed;">
<tr>
<td style="width: 40%; padding: 15px; vertical-align: middle; border: none;">An integration that enables MCP tools to query stock market data, such as stock prices, indicators, and payment dates, using the Status Invest API.</td>
<td style="width: 60%; padding: 0; vertical-align: middle; border: none; min-width: 300px; text-align: center;"><a href="https://glama.ai/mcp/servers/@newerton/mcp-status-invest">
Status Invest - MCP Server
</a></td>
</tr>
</table>

Table of Contents

- Features
- Architecture
- Installation
- MCP Server Configuration in VSCode
- MCP Server Output in VSCode
- Contribution
- License

Features

- get-acoes: Fetch basic stock information.
- get-indicadores: Fetch detailed stock indicator information.
- get-acoes-datas-pagamento: Fetch stock payment dates.
- Input validation using Zod.
- Integration with the Status Invest API using fetch (infrastructure layer).

Architecture

The project follows a layered architecture inspired by Domain-Driven Design (DDD) patterns:

- Domain (src/domain):
Defines interfaces and types that represent data structures (e.g., StatusInvest).

- Infrastructure (src/infrastructure):
Implements external services, such as StatusInvestApiService, responsible for making HTTP calls to the Status Invest API.

- Application (src/application):
Contains business logic in StatusInvestService, which processes and formats data from the infrastructure.

- Interface (src/interface):
Includes controllers (StatusInvestToolsController) that register tools in the MCP server, define validation schemas, and return results.

- Entry Point (src/main.ts):
Initializes the McpServer, configures the transport (StdioServerTransport), instantiates services and controllers, and starts listening on _stdio_.

The folder structure is as follows:

src/
├── domain/
│ └── models/ # Domain interfaces
├── infrastructure/
│ └── services/ # External API implementations (Status Invest)
├── application/
│ └── services/ # Business logic and data formatting
├── interface/
│ └── controllers/ # MCP tool registration and validation
└── main.ts # Server entry point
build/ # Compiled JavaScript code
.vscode/ # Contains the mcp.json file, MCP Server config

Installation

git clone git@github.com:newerton/mcp-status-invest.git
cd mcp-status-invest
npm install
npm run build

MCP Server Configuration in VSCode

1. Press Ctrl+Shift+P and select "MCP: List Servers"
2. Select "stocks" and then "Start Server"

MCP Server Output in VSCode

1. Press Ctrl+Shift+P and select "MCP: List Servers"
2. Select "stocks" and then "Show Output"

Contribution

Pull requests are welcome! Feel free to open issues and discuss improvements.

License

This project is licensed under the MIT license - see the LICENSE file for details.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.