Package Exports
- getoutpost-mcp-server
- getoutpost-mcp-server/dist/mcp_server.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (getoutpost-mcp-server) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
GetOutpost MCP Server
MCP (Model Context Protocol) Server for GetOutpost Financial APIs. Available in both HTTP and stdio transport modes.
Overview
This server provides access to financial data from GetOutpost through the Model Context Protocol (MCP), allowing AI assistants like Claude to interact with financial APIs.
Features
- MCP-compliant API for financial data access
- Support for implied volatility (IV), volatility (VOL), volatility risk premium (VRP), and skew data
- Token-based (Cookie) authentication with automatic refresh
- Health check endpoint
Prerequisites
- Node.js 18+
- npm or yarn
Installation
From npm
npm install -g getoutpost-mcp-serverFrom source
- Clone this repository
- Install dependencies:
npm install
- Build:
npm run build
Setup with MCP HTTP Server
The HTTP server allows you to run the MCP server as a standalone service that Claude Desktop can connect to via HTTP.
Step 1: Create Credentials File
Create a credentials file (e.g., ~/.getoutpost_credentials.json) with your GetOutpost credentials:
{
"ACCESS_TOKEN": "your_access_token_here",
"REFRESH_TOKEN": "your_refresh_token_here",
"API_BASE_URL": "https://getoutpost.in",
"EMAIL": "your_email@example.com"
}Step 2: Configure Environment Variables
Create a .env file in your project directory (if running from source) or in the directory where you'll run the server:
CREDENTIALS_FILE_PATH=/absolute/path/to/.getoutpost_credentials.json
PORT=8019Step 3: Start the HTTP Server
# If installed globally
export CREDENTIALS_FILE_PATH=<absolute-path-to-your-credentials-json-file> && getoutpost-mcp-http
# Or if running from source
node dist/mcp_server.jsThe server will start on http://localhost:8019.
Step 4: Configure Claude Desktop
Add the following to your claude_desktop_config.json file:
{
"mcpServers": {
"getoutpost-mcp": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://localhost:8019/mcp"]
}
}
}Note: The HTTP server must be running before starting Claude Desktop.
Step 5: Enable MCP Server
Restart Claude Desktop and enable getoutpost-mcp in your connectors section.
Setup with MCP stdio Server
The stdio server allows Claude Desktop to communicate directly with the MCP server via standard input/output.
Step 1: Create Credentials File
Create a credentials file (e.g., ~/.getoutpost_credentials.json) with your GetOutpost credentials:
{
"ACCESS_TOKEN": "your_access_token_here",
"REFRESH_TOKEN": "your_refresh_token_here",
"API_BASE_URL": "https://getoutpost.in",
"EMAIL": "your_email@example.com"
}Step 2: Configure Claude Desktop
Add the following to your claude_desktop_config.json file:
{
"mcpServers": {
"getoutpost-mcp": {
"command": "node",
"args": ["<path-to-your-repository>/dist/mcp_server_stdio.js"],
"env": {
"CREDENTIALS_FILE_PATH": "/absolute/path/to/.getoutpost_credentials.json"
}
}
}
}Or if installed globally:
{
"mcpServers": {
"getoutpost-mcp": {
"command": "getoutpost-mcp-stdio",
"env": {
"CREDENTIALS_FILE_PATH": "/absolute/path/to/.getoutpost_credentials.json"
}
}
}
}Note:
- Replace
/absolute/path/to/.getoutpost_credentials.jsonwith the absolute path to your credentials file - If
CREDENTIALS_FILE_PATHis not specified, it defaults to~/.getoutpost_credentials.json
Step 3: Enable MCP Server
Restart Claude Desktop and enable getoutpost-mcp in your connectors section.
Token Management
The MCP server automatically manages token refresh. When your access token expires:
- The server detects the 401 authentication error
- It uses the refresh token from your credentials file to get new tokens
- The new tokens are automatically saved back to your credentials file
- Your credentials file is always kept up-to-date with the latest tokens
Recommended Approach to Usage (Claude)
- Create a project called
Options Insights. - Give it's description as
Access real-time options market data and volatility analytics through GetOutpost's financial APIs. Analyze implied volatility, realized volatility, volatility risk premium, and skew across multiple instruments to generate data-driven trading insights. - Click "+" (next to instructions) to add system prompt. Paste the content of the file
system_prompt.md. Click Save. - Please use model
Claude Sonnet 4.5. - Avoid long conversations in a single chat because you run the risk of reaching the context length and might cause the LLM to give faulty answers.
- Use new chats (in project
Options Trading) when you want to start a conversation about a new symbol or a an entirely different topic. - You are good to go, just type out your prompts.
Packaging and Publishing
This section is for developers who want to package and publish the MCP server to npm.
Building the Package
- Make sure all changes are committed to git
- Update the version in
package.jsonif needed - Build the TypeScript code:
npm run build
Testing the Package Locally
Before publishing, test what will be included in the package:
npm pack --dry-runThis shows all files that will be included in the npm package.
Publishing to npm
Ensure you're logged in to npm:
npm whoami
Publish the package:
npm publishThis will automatically:
- Run
npm run build(via theprepublishOnlyscript) - Package all files specified in the
filesfield ofpackage.json - Upload to the npm registry
- Run
Verify the publication:
npm view getoutpost-mcp-server
Package Configuration
The package includes both HTTP and stdio server binaries:
getoutpost-mcp-http: Starts the HTTP servergetoutpost-mcp-stdio: Starts the stdio server
Files included in the package are controlled by:
filesfield inpackage.json(specifies what to include).npmignorefile (specifies what to exclude)