solana-docs-mcp-server
The solana-docs-mcp-server provides tools for interacting with Solana documentation and managing a notes system.
Solana Documentation:
Get latest documentation sections (e.g., "developing", "running-validator", "economics")
Search through documentation using text queries
Access SDK API reference details for specific items (e.g., "transaction", "pubkey")
Notes Management:
Create and store text notes with titles and content
List and access notes using
note://URIsGenerate summaries of all stored notes
Provides Solana documentation context through a notes system, allowing access to Solana docs via a structured resource interface.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@solana-docs-mcp-servercreate a note about Solana transaction fees"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
solana-docs-server MCP Server
solana docs context
This is a TypeScript-based MCP server that implements a simple notes system. It demonstrates core MCP concepts by providing:
Resources representing text notes with URIs and metadata
Tools for creating new notes
Prompts for generating summaries of notes
Features
Resources
List and access notes via
note://URIsEach note has a title, content and metadata
Plain text mime type for simple content access
Tools
create_note- Create new text notesTakes title and content as required parameters
Stores note in server state
Prompts
summarize_notes- Generate a summary of all stored notesIncludes all note contents as embedded resources
Returns structured prompt for LLM summarization
Related MCP server: MPC Docs Server
Development
Install dependencies:
npm installBuild the server:
npm run buildFor development with auto-rebuild:
npm run watchInstallation
Installing via Smithery
To install solana-docs-server MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @aldrin-labs/solana-docs-mcp-server --client claudeTo use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"solana-docs-server": {
"command": "/path/to/solana-docs-server/build/index.js"
}
}
}Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspectorThe Inspector will provide a URL to access debugging tools in your browser.
Available Tools
3 toolsget_api_referenceC
Get Solana SDK API reference details
| Name | Required | Description | Default |
|---|---|---|---|
| item | Yes | API item to look up (e.g., "transaction", "pubkey", "system_instruction") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'gets' details, implying a read-only operation, but doesn't cover aspects like rate limits, authentication needs, error handling, or what format the details are returned in. This leaves significant gaps for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste—it directly states the tool's function without unnecessary words. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool that fetches API details. It doesn't explain what 'details' include (e.g., methods, properties, examples), how results are structured, or any behavioral traits like caching or errors. This leaves the agent under-informed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'item' well-documented in the schema as 'API item to look up' with examples. The description adds no additional meaning beyond this, such as clarifying the scope of 'API reference details' or how items are categorized. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('Solana SDK API reference details'), making the purpose understandable. However, it doesn't differentiate this tool from its siblings (get_latest_docs, search_docs), which appear related to documentation but have different functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings (get_latest_docs, search_docs). It implies usage for looking up API details but offers no context on alternatives or exclusions, leaving the agent to guess based on tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_latest_docsC
Get latest Solana documentation sections
| Name | Required | Description | Default |
|---|---|---|---|
| section | Yes | Documentation section to fetch (e.g., "developing", "running-validator", "economics") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool fetches documentation but doesn't mention whether it's read-only, if it requires authentication, rate limits, or what the output format looks like. This leaves significant gaps for a tool that presumably interacts with external resources.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'latest' means (e.g., timestamp-based, version-specific), how results are returned, or error handling. For a tool with external dependencies, more context is needed to ensure reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'section' clearly documented in the input schema. The description adds no additional parameter semantics beyond what the schema provides, so it meets the baseline for adequate but not enhanced coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('latest Solana documentation sections'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_api_reference' or 'search_docs', which would be needed for a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_api_reference' or 'search_docs'. It lacks context about use cases, prerequisites, or exclusions, leaving the agent with minimal direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_docsC
Search through Solana documentation
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It doesn't disclose whether this is a read-only operation, how results are returned (e.g., pagination, sorting), performance characteristics, or any limitations (e.g., rate limits, authentication needs). The description only states what it does at a high level without operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's appropriately sized for a simple tool, though it could be more front-loaded with key details. The brevity is good, but it borders on under-specification given the lack of additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., list of documents, snippets, links), how results are structured, or any error conditions. The agent is left without enough information to understand the full behavior and output of the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'query' documented as 'Search query'. The description adds no additional meaning beyond this, such as query syntax examples, supported operators, or character limits. Given high schema coverage, the baseline score of 3 is appropriate as the schema handles the parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Search through Solana documentation' states a clear action (search) and resource (Solana documentation), but it's vague about scope and doesn't differentiate from sibling tools like 'get_api_reference' or 'get_latest_docs'. It doesn't specify what kind of search this is (full-text, keyword, etc.) or what content it searches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the sibling tools 'get_api_reference' or 'get_latest_docs'. The description doesn't indicate whether this is for general documentation search versus more specific reference or latest updates, leaving the agent to guess about appropriate contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v1.0.0- First observed
get_api_reference - First observed
get_latest_docs - First observed
search_docs
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: get_api_reference retrieves SDK API details, get_latest_docs fetches documentation sections, and search_docs performs searches across documentation. There is no overlap in functionality, making tool selection straightforward for an agent.
All tool names follow a consistent verb_noun pattern with snake_case (get_api_reference, get_latest_docs, search_docs). The verbs 'get' and 'search' are appropriately used, and there are no deviations in naming conventions.
With only 3 tools, the server feels thin for a documentation domain that might benefit from more granular operations (e.g., filtering, version-specific docs, or content updates). While the tools cover basic needs, the count is borderline minimal for comprehensive documentation access.
The tools provide core documentation access: retrieving API references, latest docs, and searching. However, there are minor gaps such as no update or management tools for documentation content, and no filtering or categorization options, which agents might need for advanced workflows.
Maintenance
Related MCP Connectors
Intelligent context infrastructure for AI teams: knowledge graph, sessions, tasks, documents.
- OneLoreOAuthai.onelore
Shared project context for AI agents and teams: docs, tasks, and messages that stay current.
Solana onchain intelligence for AI agents: wallet risk, due-diligence, perps funding, smart money.
Docs Q&A: search 169 data and AI guides, fetch any page as markdown. Read-only, keyless.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides curated documentation access via the Gemini API, enabling users to query and interact with technical docs effectively by overcoming context and search limitations.14-
- FlicenseNot gradedqualityDmaintenanceA simple Model Context Protocol server that enables searching and retrieving relevant documentation snippets from Langchain, Llama Index, and OpenAI official documentation.-
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server for ingesting, chunking and semantically searching documentation files, with support for markdown, Python, OpenAPI, HTML files and URLs.-
- AlicenseNot gradedqualityCmaintenanceA unified context layer that connects your local data — repositories, documents, remote machines, and notes — to LLM interfaces through the Model Context Protocol (MCP).3MIT