The Service Nervous System MCP Server is a TypeScript-based implementation of the Model Context Protocol (MCP) designed to interact with decentralized autonomous organizations (DAOs) on the Internet Computer. This server provides tools and features to manage and interact with Service Nervous System (SNS) DAOs, enabling users to list proposals, vote on them, and manage their DAO participation effectively.
list_proposals
: Lists all proposals for a specific DAO.Returns a list of proposals from the specified DAO.
list_votable_neurons
: Lists all votable neurons for a user in a DAO.
Returns neurons that can vote on proposals.
get_system_parameters
: Lists all configuration parameters for a DAO.
Returns system parameters for the specified DAO.
wallet
: Retrieves the user's wallet information.
Returns the principal ID of the current wallet.
vote_proposal
: Allows voting on a proposal.
To set up the server, follow these steps:
.env.example
file to .env
:shell
cp .env.example .env
.env
file.Install the necessary dependencies:
npm install
Build the server using the following command:
npm run build
For development with auto-rebuild, use:
npm run watch
To use the server with Claude Desktop, add the server configuration:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%/Claude/claude_desktop_config.json
Add the following JSON configuration:
{
"mcpServers": {
"mcp-sns-server": {
"command": "/path/to/mcp-sns-server/build/index.js"
}
}
}
Debugging MCP servers can be challenging due to stdio communication. Use the MCP Inspector for debugging:
npm run inspector
The Inspector provides a URL to access debugging tools in your browser.